Lines Matching refs:recv_msg

264 	struct ipmi_recv_msg *recv_msg;
715 && (intf->seq_table[i].recv_msg))
716 ipmi_free_recv_msg(intf->seq_table[i].recv_msg);
1007 struct ipmi_recv_msg *recv_msg,
1029 intf->seq_table[i].recv_msg = recv_msg;
1066 struct ipmi_recv_msg **recv_msg)
1076 struct ipmi_recv_msg *msg = intf->seq_table[seq].recv_msg;
1081 *recv_msg = msg;
1146 msg = ent->recv_msg;
1319 && (intf->seq_table[i].recv_msg->user == user)) {
1322 ipmi_free_recv_msg(intf->seq_table[i].recv_msg);
1867 struct ipmi_recv_msg *recv_msg,
1883 memcpy(&recv_msg->addr, smi_addr, sizeof(*smi_addr));
1920 smi_msg->user_data = recv_msg;
1934 struct ipmi_recv_msg *recv_msg,
1985 memcpy(&recv_msg->addr, ipmb_addr, sizeof(*ipmb_addr));
1987 if (recv_msg->msg.netfn & 0x1) {
2001 smi_msg->user_data = recv_msg;
2021 recv_msg,
2050 memcpy(recv_msg->msg_data, smi_msg->data,
2052 recv_msg->msg.data = recv_msg->msg_data;
2053 recv_msg->msg.data_len = smi_msg->data_size;
2058 * recv_msg before we release the lock.
2075 struct ipmi_recv_msg *recv_msg,
2113 memcpy(&recv_msg->addr, lan_addr, sizeof(*lan_addr));
2115 if (recv_msg->msg.netfn & 0x1) {
2128 smi_msg->user_data = recv_msg;
2140 recv_msg,
2168 memcpy(recv_msg->msg_data, smi_msg->data,
2170 recv_msg->msg.data = recv_msg->msg_data;
2171 recv_msg->msg.data_len = smi_msg->data_size;
2176 * recv_msg before we release the lock.
2209 struct ipmi_recv_msg *recv_msg;
2213 recv_msg = supplied_recv;
2215 recv_msg = ipmi_alloc_recv_msg();
2216 if (recv_msg == NULL) {
2221 recv_msg->user_msg_data = user_msg_data;
2229 ipmi_free_recv_msg(recv_msg);
2241 recv_msg->user = user;
2245 recv_msg->msgid = msgid;
2250 recv_msg->msg = *msg;
2254 recv_msg, retries, retry_time_ms);
2256 rv = i_ipmi_req_ipmb(intf, addr, msgid, msg, smi_msg, recv_msg,
2260 rv = i_ipmi_req_lan(intf, addr, msgid, msg, smi_msg, recv_msg,
2271 ipmi_free_recv_msg(recv_msg);
3594 deliver_err_response(intf, ent->recv_msg, IPMI_ERR_UNSPECIFIED);
3647 struct ipmi_recv_msg *recv_msg;
3679 &recv_msg)) {
3688 memcpy(recv_msg->msg_data, &msg->rsp[9], msg->rsp_size - 9);
3694 recv_msg->msg.netfn = msg->rsp[4] >> 2;
3695 recv_msg->msg.data = recv_msg->msg_data;
3696 recv_msg->msg.data_len = msg->rsp_size - 10;
3697 recv_msg->recv_type = IPMI_RESPONSE_RECV_TYPE;
3698 if (deliver_response(intf, recv_msg))
3716 struct ipmi_recv_msg *recv_msg;
3774 recv_msg = ipmi_alloc_recv_msg();
3775 if (!recv_msg) {
3785 ipmb_addr = (struct ipmi_ipmb_addr *) &recv_msg->addr;
3795 recv_msg->user = user;
3796 recv_msg->recv_type = IPMI_CMD_RECV_TYPE;
3797 recv_msg->msgid = msg->rsp[7] >> 2;
3798 recv_msg->msg.netfn = msg->rsp[4] >> 2;
3799 recv_msg->msg.cmd = msg->rsp[8];
3800 recv_msg->msg.data = recv_msg->msg_data;
3806 recv_msg->msg.data_len = msg->rsp_size - 10;
3807 memcpy(recv_msg->msg_data, &msg->rsp[9],
3809 if (deliver_response(intf, recv_msg))
3823 struct ipmi_recv_msg *recv_msg;
3859 &recv_msg)) {
3868 memcpy(recv_msg->msg_data, &msg->rsp[11], msg->rsp_size - 11);
3874 recv_msg->msg.netfn = msg->rsp[6] >> 2;
3875 recv_msg->msg.data = recv_msg->msg_data;
3876 recv_msg->msg.data_len = msg->rsp_size - 12;
3877 recv_msg->recv_type = IPMI_RESPONSE_RECV_TYPE;
3878 if (deliver_response(intf, recv_msg))
3896 struct ipmi_recv_msg *recv_msg;
3932 recv_msg = ipmi_alloc_recv_msg();
3933 if (!recv_msg) {
3942 lan_addr = (struct ipmi_lan_addr *) &recv_msg->addr;
3955 recv_msg->user = user;
3956 recv_msg->recv_type = IPMI_CMD_RECV_TYPE;
3957 recv_msg->msgid = msg->rsp[9] >> 2;
3958 recv_msg->msg.netfn = msg->rsp[6] >> 2;
3959 recv_msg->msg.cmd = msg->rsp[10];
3960 recv_msg->msg.data = recv_msg->msg_data;
3966 recv_msg->msg.data_len = msg->rsp_size - 12;
3967 memcpy(recv_msg->msg_data, &msg->rsp[11],
3969 if (deliver_response(intf, recv_msg))
3995 struct ipmi_recv_msg *recv_msg;
4040 recv_msg = ipmi_alloc_recv_msg();
4041 if (!recv_msg) {
4057 &recv_msg->addr);
4062 recv_msg->user = user;
4063 recv_msg->user_msg_data = NULL;
4064 recv_msg->recv_type = IPMI_OEM_RECV_TYPE;
4065 recv_msg->msg.netfn = msg->rsp[0] >> 2;
4066 recv_msg->msg.cmd = msg->rsp[1];
4067 recv_msg->msg.data = recv_msg->msg_data;
4073 recv_msg->msg.data_len = msg->rsp_size - 4;
4074 memcpy(recv_msg->msg_data, &msg->rsp[4],
4076 if (deliver_response(intf, recv_msg))
4086 static void copy_event_into_recv_msg(struct ipmi_recv_msg *recv_msg,
4091 recv_msg->msgid = 0;
4092 smi_addr = (struct ipmi_system_interface_addr *) &recv_msg->addr;
4096 recv_msg->recv_type = IPMI_ASYNC_EVENT_RECV_TYPE;
4097 recv_msg->msg.netfn = msg->rsp[0] >> 2;
4098 recv_msg->msg.cmd = msg->rsp[1];
4099 memcpy(recv_msg->msg_data, &msg->rsp[3], msg->rsp_size - 3);
4100 recv_msg->msg.data = recv_msg->msg_data;
4101 recv_msg->msg.data_len = msg->rsp_size - 3;
4107 struct ipmi_recv_msg *recv_msg, *recv_msg2;
4139 recv_msg = ipmi_alloc_recv_msg();
4140 if (!recv_msg) {
4142 list_for_each_entry_safe(recv_msg, recv_msg2, &msgs,
4144 list_del(&recv_msg->link);
4145 ipmi_free_recv_msg(recv_msg);
4158 copy_event_into_recv_msg(recv_msg, msg);
4159 recv_msg->user = user;
4161 list_add_tail(&recv_msg->link, &msgs);
4167 list_for_each_entry_safe(recv_msg, recv_msg2, &msgs, link) {
4168 list_del(&recv_msg->link);
4169 deliver_local_response(intf, recv_msg);
4176 recv_msg = ipmi_alloc_recv_msg();
4177 if (!recv_msg) {
4187 copy_event_into_recv_msg(recv_msg, msg);
4188 list_add_tail(&recv_msg->link, &intf->waiting_events);
4209 struct ipmi_recv_msg *recv_msg;
4212 recv_msg = (struct ipmi_recv_msg *) msg->user_data;
4213 if (recv_msg == NULL) {
4219 recv_msg->recv_type = IPMI_RESPONSE_RECV_TYPE;
4220 recv_msg->msgid = msg->msgid;
4222 &recv_msg->addr);
4226 recv_msg->msg.netfn = msg->rsp[0] >> 2;
4227 recv_msg->msg.cmd = msg->rsp[1];
4228 memcpy(recv_msg->msg_data, &msg->rsp[2], msg->rsp_size - 2);
4229 recv_msg->msg.data = recv_msg->msg_data;
4230 recv_msg->msg.data_len = msg->rsp_size - 2;
4231 deliver_local_response(intf, recv_msg);
4330 struct ipmi_recv_msg *recv_msg = msg->user_data;
4342 if (!recv_msg)
4345 recv_msg->recv_type = IPMI_RESPONSE_RESPONSE_TYPE;
4346 recv_msg->msg.data = recv_msg->msg_data;
4347 recv_msg->msg.data_len = 1;
4348 recv_msg->msg_data[0] = msg->rsp[2];
4349 deliver_local_response(intf, recv_msg);
4591 smi_from_recv_msg(struct ipmi_smi *intf, struct ipmi_recv_msg *recv_msg,
4602 memcpy(smi_msg->data, recv_msg->msg.data, recv_msg->msg.data_len);
4603 smi_msg->data_size = recv_msg->msg.data_len;
4635 msg = ent->recv_msg;
4639 else if (is_lan_addr(&ent->recv_msg->addr))
4655 smi_msg = smi_from_recv_msg(intf, ent->recv_msg, slot,
4658 if (is_lan_addr(&ent->recv_msg->addr))
4677 if (is_lan_addr(&ent->recv_msg->addr))
4881 struct ipmi_recv_msg recv_msg;
4885 recv_msg.done = dummy_recv_done_handler;
4894 &recv_msg,