Lines Matching refs:msg
46 struct w1_netlink_msg *msg; /* advances as w1_netlink_msg is appened */ member
61 struct w1_netlink_msg *msg; member
108 block->msg = NULL; in w1_reply_make_space()
132 block->msg = (struct w1_netlink_msg *)(block->cn->data + block->cn->len); in w1_netlink_setup_msg()
144 block->msg = (struct w1_netlink_msg *)block->cn->data; in w1_netlink_setup_msg()
164 memcpy(block->msg, block->cur_msg, sizeof(*block->msg)); in w1_netlink_queue_cmd()
165 block->cn->len += sizeof(*block->msg); in w1_netlink_queue_cmd()
166 block->msg->len = 0; in w1_netlink_queue_cmd()
167 block->cmd = (struct w1_netlink_cmd *)(block->msg->data); in w1_netlink_queue_cmd()
173 block->msg->len += space; in w1_netlink_queue_cmd()
187 memcpy(block->msg, req_msg, sizeof(*req_msg)); in w1_netlink_queue_status()
189 block->msg->len = 0; in w1_netlink_queue_status()
190 block->msg->status = (u8)-error; in w1_netlink_queue_status()
192 struct w1_netlink_cmd *cmd = (struct w1_netlink_cmd *)block->msg->data; in w1_netlink_queue_status()
195 block->msg->len += sizeof(*cmd); in w1_netlink_queue_status()
211 static void w1_netlink_send_error(struct cn_msg *cn, struct w1_netlink_msg *msg, in w1_netlink_send_error() argument
216 struct w1_netlink_msg msg; in w1_netlink_send_error() member
219 memcpy(&packet.msg, msg, sizeof(packet.msg)); in w1_netlink_send_error()
220 packet.cn.len = sizeof(packet.msg); in w1_netlink_send_error()
221 packet.msg.len = 0; in w1_netlink_send_error()
222 packet.msg.status = (u8)-error; in w1_netlink_send_error()
233 void w1_netlink_send(struct w1_master *dev, struct w1_netlink_msg *msg) in w1_netlink_send() argument
237 struct w1_netlink_msg msg; in w1_netlink_send() member
245 packet.cn.len = sizeof(*msg); in w1_netlink_send()
247 memcpy(&packet.msg, msg, sizeof(*msg)); in w1_netlink_send()
248 packet.msg.len = 0; in w1_netlink_send()
271 block->msg->len += sizeof(*data); in w1_send_slave()
420 struct w1_netlink_msg *msg; in w1_process_command_root() local
433 msg = (struct w1_netlink_msg *)cn->data; in w1_process_command_root()
435 msg->type = W1_LIST_MASTERS; in w1_process_command_root()
436 msg->status = 0; in w1_process_command_root()
437 msg->len = 0; in w1_process_command_root()
438 id = (u32 *)msg->data; in w1_process_command_root()
445 msg->len = 0; in w1_process_command_root()
446 id = (u32 *)msg->data; in w1_process_command_root()
450 msg->len += sizeof(*id); in w1_process_command_root()
465 u16 mlen = node->msg->len; in w1_process_cb()
469 struct w1_netlink_cmd *cmd = (struct w1_netlink_cmd *)node->msg->data; in w1_process_cb()
475 node->block->cur_msg = node->msg; in w1_process_cb()
489 w1_netlink_queue_status(node->block, node->msg, cmd, err); in w1_process_cb()
498 w1_netlink_queue_status(node->block, node->msg, cmd, err); in w1_process_cb()
517 static void w1_list_count_cmds(struct w1_netlink_msg *msg, int *cmd_count, in w1_list_count_cmds() argument
520 struct w1_netlink_cmd *cmd = (struct w1_netlink_cmd *)msg->data; in w1_list_count_cmds()
521 u16 mlen = msg->len; in w1_list_count_cmds()
541 struct w1_master *dev = w1_search_master_id(msg->id.mst.id); in w1_list_count_cmds()
556 struct w1_netlink_msg *msg = (struct w1_netlink_msg *)(cn + 1); in w1_cn_callback() local
572 w1_netlink_send_error(cn, msg, nsp->portid, -EINVAL); in w1_cn_callback()
581 if (msg->len + sizeof(struct w1_netlink_msg) > msg_len) { in w1_cn_callback()
589 if (msg->type == W1_MASTER_CMD || msg->type == W1_SLAVE_CMD) { in w1_cn_callback()
591 w1_list_count_cmds(msg, &cmd_count, &slave_len); in w1_cn_callback()
594 msg_len -= sizeof(struct w1_netlink_msg) + msg->len; in w1_cn_callback()
595 msg = (struct w1_netlink_msg *)(((u8 *)msg) + in w1_cn_callback()
596 sizeof(struct w1_netlink_msg) + msg->len); in w1_cn_callback()
598 msg = (struct w1_netlink_msg *)(cn + 1); in w1_cn_callback()
628 w1_netlink_send_error(cn, msg, nsp->portid, -ENOMEM); in w1_cn_callback()
656 if (msg->len + sizeof(struct w1_netlink_msg) > msg_len) { in w1_cn_callback()
662 if (msg->type == W1_LIST_MASTERS) { in w1_cn_callback()
670 if (!msg->len) { in w1_cn_callback()
676 if (msg->type == W1_MASTER_CMD) { in w1_cn_callback()
677 dev = w1_search_master_id(msg->id.mst.id); in w1_cn_callback()
678 } else if (msg->type == W1_SLAVE_CMD) { in w1_cn_callback()
679 sl = w1_search_slave((struct w1_reg_num *)msg->id.id); in w1_cn_callback()
685 msg->type, msg->len); in w1_cn_callback()
700 node->msg = (struct w1_netlink_msg *)((u8 *)&block->request_cn + in w1_cn_callback()
701 (size_t)((u8 *)msg - (u8 *)cn)); in w1_cn_callback()
717 w1_netlink_send_error(cn, msg, nsp->portid, err); in w1_cn_callback()
718 msg_len -= sizeof(struct w1_netlink_msg) + msg->len; in w1_cn_callback()
719 msg = (struct w1_netlink_msg *)(((u8 *)msg) + in w1_cn_callback()
720 sizeof(struct w1_netlink_msg) + msg->len); in w1_cn_callback()