Lines Matching full:msg
244 struct ksmbd_ipc_msg *msg; in ipc_msg_alloc() local
247 msg = kvzalloc(msg_sz, KSMBD_DEFAULT_GFP); in ipc_msg_alloc()
248 if (msg) in ipc_msg_alloc()
249 msg->sz = sz; in ipc_msg_alloc()
250 return msg; in ipc_msg_alloc()
253 static void ipc_msg_free(struct ksmbd_ipc_msg *msg) in ipc_msg_free() argument
255 kvfree(msg); in ipc_msg_free()
448 static int ipc_msg_send(struct ksmbd_ipc_msg *msg) in ipc_msg_send() argument
457 skb = genlmsg_new(msg->sz, KSMBD_DEFAULT_GFP); in ipc_msg_send()
461 nlh = genlmsg_put(skb, 0, 0, &ksmbd_genl_family, 0, msg->type); in ipc_msg_send()
465 ret = nla_put(skb, msg->type, msg->sz, msg->payload); in ipc_msg_send()
529 static void *ipc_msg_send_request(struct ksmbd_ipc_msg *msg, unsigned int handle) in ipc_msg_send_request() argument
537 entry.type = msg->type; in ipc_msg_send_request()
546 ret = ipc_msg_send(msg); in ipc_msg_send_request()
569 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_heartbeat_request() local
572 msg = ipc_msg_alloc(sizeof(struct ksmbd_heartbeat)); in ksmbd_ipc_heartbeat_request()
573 if (!msg) in ksmbd_ipc_heartbeat_request()
576 msg->type = KSMBD_EVENT_HEARTBEAT_REQUEST; in ksmbd_ipc_heartbeat_request()
577 ret = ipc_msg_send(msg); in ksmbd_ipc_heartbeat_request()
578 ipc_msg_free(msg); in ksmbd_ipc_heartbeat_request()
584 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_login_request() local
591 msg = ipc_msg_alloc(sizeof(struct ksmbd_login_request)); in ksmbd_ipc_login_request()
592 if (!msg) in ksmbd_ipc_login_request()
595 msg->type = KSMBD_EVENT_LOGIN_REQUEST; in ksmbd_ipc_login_request()
596 req = (struct ksmbd_login_request *)msg->payload; in ksmbd_ipc_login_request()
600 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_ipc_login_request()
602 ipc_msg_free(msg); in ksmbd_ipc_login_request()
608 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_login_request_ext() local
615 msg = ipc_msg_alloc(sizeof(struct ksmbd_login_request)); in ksmbd_ipc_login_request_ext()
616 if (!msg) in ksmbd_ipc_login_request_ext()
619 msg->type = KSMBD_EVENT_LOGIN_REQUEST_EXT; in ksmbd_ipc_login_request_ext()
620 req = (struct ksmbd_login_request *)msg->payload; in ksmbd_ipc_login_request_ext()
623 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_ipc_login_request_ext()
625 ipc_msg_free(msg); in ksmbd_ipc_login_request_ext()
632 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_spnego_authen_request() local
639 msg = ipc_msg_alloc(sizeof(struct ksmbd_spnego_authen_request) + in ksmbd_ipc_spnego_authen_request()
641 if (!msg) in ksmbd_ipc_spnego_authen_request()
644 msg->type = KSMBD_EVENT_SPNEGO_AUTHEN_REQUEST; in ksmbd_ipc_spnego_authen_request()
645 req = (struct ksmbd_spnego_authen_request *)msg->payload; in ksmbd_ipc_spnego_authen_request()
650 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_ipc_spnego_authen_request()
652 ipc_msg_free(msg); in ksmbd_ipc_spnego_authen_request()
662 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_tree_connect_request() local
672 msg = ipc_msg_alloc(sizeof(struct ksmbd_tree_connect_request)); in ksmbd_ipc_tree_connect_request()
673 if (!msg) in ksmbd_ipc_tree_connect_request()
676 msg->type = KSMBD_EVENT_TREE_CONNECT_REQUEST; in ksmbd_ipc_tree_connect_request()
677 req = (struct ksmbd_tree_connect_request *)msg->payload; in ksmbd_ipc_tree_connect_request()
692 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_ipc_tree_connect_request()
694 ipc_msg_free(msg); in ksmbd_ipc_tree_connect_request()
701 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_tree_disconnect_request() local
705 msg = ipc_msg_alloc(sizeof(struct ksmbd_tree_disconnect_request)); in ksmbd_ipc_tree_disconnect_request()
706 if (!msg) in ksmbd_ipc_tree_disconnect_request()
709 msg->type = KSMBD_EVENT_TREE_DISCONNECT_REQUEST; in ksmbd_ipc_tree_disconnect_request()
710 req = (struct ksmbd_tree_disconnect_request *)msg->payload; in ksmbd_ipc_tree_disconnect_request()
714 ret = ipc_msg_send(msg); in ksmbd_ipc_tree_disconnect_request()
715 ipc_msg_free(msg); in ksmbd_ipc_tree_disconnect_request()
721 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_logout_request() local
728 msg = ipc_msg_alloc(sizeof(struct ksmbd_logout_request)); in ksmbd_ipc_logout_request()
729 if (!msg) in ksmbd_ipc_logout_request()
732 msg->type = KSMBD_EVENT_LOGOUT_REQUEST; in ksmbd_ipc_logout_request()
733 req = (struct ksmbd_logout_request *)msg->payload; in ksmbd_ipc_logout_request()
737 ret = ipc_msg_send(msg); in ksmbd_ipc_logout_request()
738 ipc_msg_free(msg); in ksmbd_ipc_logout_request()
745 struct ksmbd_ipc_msg *msg; in ksmbd_ipc_share_config_request() local
752 msg = ipc_msg_alloc(sizeof(struct ksmbd_share_config_request)); in ksmbd_ipc_share_config_request()
753 if (!msg) in ksmbd_ipc_share_config_request()
756 msg->type = KSMBD_EVENT_SHARE_CONFIG_REQUEST; in ksmbd_ipc_share_config_request()
757 req = (struct ksmbd_share_config_request *)msg->payload; in ksmbd_ipc_share_config_request()
761 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_ipc_share_config_request()
763 ipc_msg_free(msg); in ksmbd_ipc_share_config_request()
769 struct ksmbd_ipc_msg *msg; in ksmbd_rpc_open() local
773 msg = ipc_msg_alloc(sizeof(struct ksmbd_rpc_command)); in ksmbd_rpc_open()
774 if (!msg) in ksmbd_rpc_open()
777 msg->type = KSMBD_EVENT_RPC_REQUEST; in ksmbd_rpc_open()
778 req = (struct ksmbd_rpc_command *)msg->payload; in ksmbd_rpc_open()
784 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_rpc_open()
785 ipc_msg_free(msg); in ksmbd_rpc_open()
791 struct ksmbd_ipc_msg *msg; in ksmbd_rpc_close() local
795 msg = ipc_msg_alloc(sizeof(struct ksmbd_rpc_command)); in ksmbd_rpc_close()
796 if (!msg) in ksmbd_rpc_close()
799 msg->type = KSMBD_EVENT_RPC_REQUEST; in ksmbd_rpc_close()
800 req = (struct ksmbd_rpc_command *)msg->payload; in ksmbd_rpc_close()
806 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_rpc_close()
807 ipc_msg_free(msg); in ksmbd_rpc_close()
814 struct ksmbd_ipc_msg *msg; in ksmbd_rpc_write() local
821 msg = ipc_msg_alloc(sizeof(struct ksmbd_rpc_command) + payload_sz + 1); in ksmbd_rpc_write()
822 if (!msg) in ksmbd_rpc_write()
825 msg->type = KSMBD_EVENT_RPC_REQUEST; in ksmbd_rpc_write()
826 req = (struct ksmbd_rpc_command *)msg->payload; in ksmbd_rpc_write()
834 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_rpc_write()
835 ipc_msg_free(msg); in ksmbd_rpc_write()
841 struct ksmbd_ipc_msg *msg; in ksmbd_rpc_read() local
845 msg = ipc_msg_alloc(sizeof(struct ksmbd_rpc_command)); in ksmbd_rpc_read()
846 if (!msg) in ksmbd_rpc_read()
849 msg->type = KSMBD_EVENT_RPC_REQUEST; in ksmbd_rpc_read()
850 req = (struct ksmbd_rpc_command *)msg->payload; in ksmbd_rpc_read()
857 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_rpc_read()
858 ipc_msg_free(msg); in ksmbd_rpc_read()
865 struct ksmbd_ipc_msg *msg; in ksmbd_rpc_ioctl() local
872 msg = ipc_msg_alloc(sizeof(struct ksmbd_rpc_command) + payload_sz + 1); in ksmbd_rpc_ioctl()
873 if (!msg) in ksmbd_rpc_ioctl()
876 msg->type = KSMBD_EVENT_RPC_REQUEST; in ksmbd_rpc_ioctl()
877 req = (struct ksmbd_rpc_command *)msg->payload; in ksmbd_rpc_ioctl()
885 resp = ipc_msg_send_request(msg, req->handle); in ksmbd_rpc_ioctl()
886 ipc_msg_free(msg); in ksmbd_rpc_ioctl()