brintos

brintos / linux-shallow public Read only

0
0
Text · 1.8 KiB · d9b6737 Raw
50 lines · c
1/* SPDX-License-Identifier: GPL-2.0-or-later */2/*3 *   Copyright (C) 2018 Samsung Electronics Co., Ltd.4 */5 6#ifndef __KSMBD_TRANSPORT_IPC_H__7#define __KSMBD_TRANSPORT_IPC_H__8 9#include <linux/wait.h>10 11#define KSMBD_IPC_MAX_PAYLOAD	409612 13struct ksmbd_login_response *14ksmbd_ipc_login_request(const char *account);15struct ksmbd_login_response_ext *16ksmbd_ipc_login_request_ext(const char *account);17 18struct ksmbd_session;19struct ksmbd_share_config;20struct ksmbd_tree_connect;21struct sockaddr;22 23struct ksmbd_tree_connect_response *24ksmbd_ipc_tree_connect_request(struct ksmbd_session *sess,25			       struct ksmbd_share_config *share,26			       struct ksmbd_tree_connect *tree_conn,27			       struct sockaddr *peer_addr);28int ksmbd_ipc_tree_disconnect_request(unsigned long long session_id,29				      unsigned long long connect_id);30int ksmbd_ipc_logout_request(const char *account, int flags);31struct ksmbd_share_config_response *32ksmbd_ipc_share_config_request(const char *name);33struct ksmbd_spnego_authen_response *34ksmbd_ipc_spnego_authen_request(const char *spnego_blob, int blob_len);35int ksmbd_ipc_id_alloc(void);36void ksmbd_rpc_id_free(int handle);37struct ksmbd_rpc_command *ksmbd_rpc_open(struct ksmbd_session *sess, int handle);38struct ksmbd_rpc_command *ksmbd_rpc_close(struct ksmbd_session *sess, int handle);39struct ksmbd_rpc_command *ksmbd_rpc_write(struct ksmbd_session *sess, int handle,40					  void *payload, size_t payload_sz);41struct ksmbd_rpc_command *ksmbd_rpc_read(struct ksmbd_session *sess, int handle);42struct ksmbd_rpc_command *ksmbd_rpc_ioctl(struct ksmbd_session *sess, int handle,43					  void *payload, size_t payload_sz);44struct ksmbd_rpc_command *ksmbd_rpc_rap(struct ksmbd_session *sess, void *payload,45					size_t payload_sz);46void ksmbd_ipc_release(void);47void ksmbd_ipc_soft_reset(void);48int ksmbd_ipc_init(void);49#endif /* __KSMBD_TRANSPORT_IPC_H__ */50