Lines Matching refs:recv_msg
154 struct ipmi_recv_msg *recv_msg; member
547 && (intf->seq_table[i].recv_msg)) in clean_up_interface_data()
548 ipmi_free_recv_msg(intf->seq_table[i].recv_msg); in clean_up_interface_data()
776 struct ipmi_recv_msg *recv_msg, in intf_next_seq() argument
793 intf->seq_table[i].recv_msg = recv_msg; in intf_next_seq()
829 struct ipmi_recv_msg **recv_msg) in intf_find_seq() argument
839 struct ipmi_recv_msg *msg = intf->seq_table[seq].recv_msg; in intf_find_seq()
844 *recv_msg = msg; in intf_find_seq()
907 msg = ent->recv_msg; in intf_err_seq()
1075 && (intf->seq_table[i].recv_msg->user == user)) { in ipmi_destroy_user()
1077 ipmi_free_recv_msg(intf->seq_table[i].recv_msg); in ipmi_destroy_user()
1551 struct ipmi_recv_msg *recv_msg; in i_ipmi_request() local
1556 recv_msg = supplied_recv; in i_ipmi_request()
1558 recv_msg = ipmi_alloc_recv_msg(); in i_ipmi_request()
1559 if (recv_msg == NULL) in i_ipmi_request()
1562 recv_msg->user_msg_data = user_msg_data; in i_ipmi_request()
1569 ipmi_free_recv_msg(recv_msg); in i_ipmi_request()
1580 recv_msg->user = user; in i_ipmi_request()
1583 recv_msg->msgid = msgid; in i_ipmi_request()
1588 recv_msg->msg = *msg; in i_ipmi_request()
1606 memcpy(&recv_msg->addr, smi_addr, sizeof(*smi_addr)); in i_ipmi_request()
1646 smi_msg->user_data = recv_msg; in i_ipmi_request()
1708 memcpy(&recv_msg->addr, ipmb_addr, sizeof(*ipmb_addr)); in i_ipmi_request()
1710 if (recv_msg->msg.netfn & 0x1) { in i_ipmi_request()
1724 smi_msg->user_data = recv_msg; in i_ipmi_request()
1735 recv_msg, in i_ipmi_request()
1767 memcpy(recv_msg->msg_data, smi_msg->data, in i_ipmi_request()
1769 recv_msg->msg.data = recv_msg->msg_data; in i_ipmi_request()
1770 recv_msg->msg.data_len = smi_msg->data_size; in i_ipmi_request()
1822 memcpy(&recv_msg->addr, lan_addr, sizeof(*lan_addr)); in i_ipmi_request()
1824 if (recv_msg->msg.netfn & 0x1) { in i_ipmi_request()
1837 smi_msg->user_data = recv_msg; in i_ipmi_request()
1848 recv_msg, in i_ipmi_request()
1879 memcpy(recv_msg->msg_data, smi_msg->data, in i_ipmi_request()
1881 recv_msg->msg.data = recv_msg->msg_data; in i_ipmi_request()
1882 recv_msg->msg.data_len = smi_msg->data_size; in i_ipmi_request()
1918 ipmi_free_recv_msg(recv_msg); in i_ipmi_request()
2974 deliver_err_response(ent->recv_msg, IPMI_ERR_UNSPECIFIED); in cleanup_smi_msgs()
3027 struct ipmi_recv_msg *recv_msg; in handle_ipmb_get_msg_rsp() local
3059 &recv_msg)) { in handle_ipmb_get_msg_rsp()
3068 memcpy(recv_msg->msg_data, in handle_ipmb_get_msg_rsp()
3076 recv_msg->msg.netfn = msg->rsp[4] >> 2; in handle_ipmb_get_msg_rsp()
3077 recv_msg->msg.data = recv_msg->msg_data; in handle_ipmb_get_msg_rsp()
3078 recv_msg->msg.data_len = msg->rsp_size - 10; in handle_ipmb_get_msg_rsp()
3079 recv_msg->recv_type = IPMI_RESPONSE_RECV_TYPE; in handle_ipmb_get_msg_rsp()
3081 deliver_response(recv_msg); in handle_ipmb_get_msg_rsp()
3096 struct ipmi_recv_msg *recv_msg; in handle_ipmb_get_msg_cmd() local
3164 recv_msg = ipmi_alloc_recv_msg(); in handle_ipmb_get_msg_cmd()
3165 if (!recv_msg) { in handle_ipmb_get_msg_cmd()
3175 ipmb_addr = (struct ipmi_ipmb_addr *) &recv_msg->addr; in handle_ipmb_get_msg_cmd()
3185 recv_msg->user = user; in handle_ipmb_get_msg_cmd()
3186 recv_msg->recv_type = IPMI_CMD_RECV_TYPE; in handle_ipmb_get_msg_cmd()
3187 recv_msg->msgid = msg->rsp[7] >> 2; in handle_ipmb_get_msg_cmd()
3188 recv_msg->msg.netfn = msg->rsp[4] >> 2; in handle_ipmb_get_msg_cmd()
3189 recv_msg->msg.cmd = msg->rsp[8]; in handle_ipmb_get_msg_cmd()
3190 recv_msg->msg.data = recv_msg->msg_data; in handle_ipmb_get_msg_cmd()
3196 recv_msg->msg.data_len = msg->rsp_size - 10; in handle_ipmb_get_msg_cmd()
3197 memcpy(recv_msg->msg_data, in handle_ipmb_get_msg_cmd()
3200 deliver_response(recv_msg); in handle_ipmb_get_msg_cmd()
3211 struct ipmi_recv_msg *recv_msg; in handle_lan_get_msg_rsp() local
3247 &recv_msg)) { in handle_lan_get_msg_rsp()
3256 memcpy(recv_msg->msg_data, in handle_lan_get_msg_rsp()
3264 recv_msg->msg.netfn = msg->rsp[6] >> 2; in handle_lan_get_msg_rsp()
3265 recv_msg->msg.data = recv_msg->msg_data; in handle_lan_get_msg_rsp()
3266 recv_msg->msg.data_len = msg->rsp_size - 12; in handle_lan_get_msg_rsp()
3267 recv_msg->recv_type = IPMI_RESPONSE_RECV_TYPE; in handle_lan_get_msg_rsp()
3269 deliver_response(recv_msg); in handle_lan_get_msg_rsp()
3284 struct ipmi_recv_msg *recv_msg; in handle_lan_get_msg_cmd() local
3323 recv_msg = ipmi_alloc_recv_msg(); in handle_lan_get_msg_cmd()
3324 if (!recv_msg) { in handle_lan_get_msg_cmd()
3333 lan_addr = (struct ipmi_lan_addr *) &recv_msg->addr; in handle_lan_get_msg_cmd()
3346 recv_msg->user = user; in handle_lan_get_msg_cmd()
3347 recv_msg->recv_type = IPMI_CMD_RECV_TYPE; in handle_lan_get_msg_cmd()
3348 recv_msg->msgid = msg->rsp[9] >> 2; in handle_lan_get_msg_cmd()
3349 recv_msg->msg.netfn = msg->rsp[6] >> 2; in handle_lan_get_msg_cmd()
3350 recv_msg->msg.cmd = msg->rsp[10]; in handle_lan_get_msg_cmd()
3351 recv_msg->msg.data = recv_msg->msg_data; in handle_lan_get_msg_cmd()
3357 recv_msg->msg.data_len = msg->rsp_size - 12; in handle_lan_get_msg_cmd()
3358 memcpy(recv_msg->msg_data, in handle_lan_get_msg_cmd()
3361 deliver_response(recv_msg); in handle_lan_get_msg_cmd()
3384 struct ipmi_recv_msg *recv_msg; in handle_oem_get_msg_cmd() local
3432 recv_msg = ipmi_alloc_recv_msg(); in handle_oem_get_msg_cmd()
3433 if (!recv_msg) { in handle_oem_get_msg_cmd()
3449 &(recv_msg->addr)); in handle_oem_get_msg_cmd()
3454 recv_msg->user = user; in handle_oem_get_msg_cmd()
3455 recv_msg->user_msg_data = NULL; in handle_oem_get_msg_cmd()
3456 recv_msg->recv_type = IPMI_OEM_RECV_TYPE; in handle_oem_get_msg_cmd()
3457 recv_msg->msg.netfn = msg->rsp[0] >> 2; in handle_oem_get_msg_cmd()
3458 recv_msg->msg.cmd = msg->rsp[1]; in handle_oem_get_msg_cmd()
3459 recv_msg->msg.data = recv_msg->msg_data; in handle_oem_get_msg_cmd()
3465 recv_msg->msg.data_len = msg->rsp_size - 4; in handle_oem_get_msg_cmd()
3466 memcpy(recv_msg->msg_data, in handle_oem_get_msg_cmd()
3469 deliver_response(recv_msg); in handle_oem_get_msg_cmd()
3476 static void copy_event_into_recv_msg(struct ipmi_recv_msg *recv_msg, in copy_event_into_recv_msg() argument
3481 recv_msg->msgid = 0; in copy_event_into_recv_msg()
3482 smi_addr = (struct ipmi_system_interface_addr *) &(recv_msg->addr); in copy_event_into_recv_msg()
3486 recv_msg->recv_type = IPMI_ASYNC_EVENT_RECV_TYPE; in copy_event_into_recv_msg()
3487 recv_msg->msg.netfn = msg->rsp[0] >> 2; in copy_event_into_recv_msg()
3488 recv_msg->msg.cmd = msg->rsp[1]; in copy_event_into_recv_msg()
3489 memcpy(recv_msg->msg_data, &(msg->rsp[3]), msg->rsp_size - 3); in copy_event_into_recv_msg()
3490 recv_msg->msg.data = recv_msg->msg_data; in copy_event_into_recv_msg()
3491 recv_msg->msg.data_len = msg->rsp_size - 3; in copy_event_into_recv_msg()
3497 struct ipmi_recv_msg *recv_msg, *recv_msg2; in handle_read_event_rsp() local
3530 recv_msg = ipmi_alloc_recv_msg(); in handle_read_event_rsp()
3531 if (!recv_msg) { in handle_read_event_rsp()
3533 list_for_each_entry_safe(recv_msg, recv_msg2, &msgs, in handle_read_event_rsp()
3535 list_del(&recv_msg->link); in handle_read_event_rsp()
3536 ipmi_free_recv_msg(recv_msg); in handle_read_event_rsp()
3549 copy_event_into_recv_msg(recv_msg, msg); in handle_read_event_rsp()
3550 recv_msg->user = user; in handle_read_event_rsp()
3552 list_add_tail(&(recv_msg->link), &msgs); in handle_read_event_rsp()
3558 list_for_each_entry_safe(recv_msg, recv_msg2, &msgs, link) { in handle_read_event_rsp()
3559 list_del(&recv_msg->link); in handle_read_event_rsp()
3560 deliver_response(recv_msg); in handle_read_event_rsp()
3567 recv_msg = ipmi_alloc_recv_msg(); in handle_read_event_rsp()
3568 if (!recv_msg) { in handle_read_event_rsp()
3578 copy_event_into_recv_msg(recv_msg, msg); in handle_read_event_rsp()
3579 list_add_tail(&(recv_msg->link), &(intf->waiting_events)); in handle_read_event_rsp()
3600 struct ipmi_recv_msg *recv_msg; in handle_bmc_rsp() local
3603 recv_msg = (struct ipmi_recv_msg *) msg->user_data; in handle_bmc_rsp()
3604 if (recv_msg == NULL) { in handle_bmc_rsp()
3613 user = recv_msg->user; in handle_bmc_rsp()
3618 ipmi_free_recv_msg(recv_msg); in handle_bmc_rsp()
3623 recv_msg->recv_type = IPMI_RESPONSE_RECV_TYPE; in handle_bmc_rsp()
3624 recv_msg->msgid = msg->msgid; in handle_bmc_rsp()
3626 &(recv_msg->addr)); in handle_bmc_rsp()
3630 recv_msg->msg.netfn = msg->rsp[0] >> 2; in handle_bmc_rsp()
3631 recv_msg->msg.cmd = msg->rsp[1]; in handle_bmc_rsp()
3632 memcpy(recv_msg->msg_data, in handle_bmc_rsp()
3635 recv_msg->msg.data = recv_msg->msg_data; in handle_bmc_rsp()
3636 recv_msg->msg.data_len = msg->rsp_size - 2; in handle_bmc_rsp()
3637 deliver_response(recv_msg); in handle_bmc_rsp()
3697 struct ipmi_recv_msg *recv_msg = msg->user_data; in handle_one_recv_msg() local
3709 if (!recv_msg) in handle_one_recv_msg()
3713 if (!recv_msg->user || !recv_msg->user->valid) in handle_one_recv_msg()
3716 recv_msg->recv_type = IPMI_RESPONSE_RESPONSE_TYPE; in handle_one_recv_msg()
3717 recv_msg->msg.data = recv_msg->msg_data; in handle_one_recv_msg()
3718 recv_msg->msg.data_len = 1; in handle_one_recv_msg()
3719 recv_msg->msg_data[0] = msg->rsp[2]; in handle_one_recv_msg()
3720 deliver_response(recv_msg); in handle_one_recv_msg()
3995 smi_from_recv_msg(ipmi_smi_t intf, struct ipmi_recv_msg *recv_msg, in smi_from_recv_msg() argument
4006 memcpy(smi_msg->data, recv_msg->msg.data, recv_msg->msg.data_len); in smi_from_recv_msg()
4007 smi_msg->data_size = recv_msg->msg.data_len; in smi_from_recv_msg()
4045 msg = ent->recv_msg; in check_msg_timeout()
4049 else if (is_lan_addr(&ent->recv_msg->addr)) in check_msg_timeout()
4065 smi_msg = smi_from_recv_msg(intf, ent->recv_msg, slot, in check_msg_timeout()
4068 if (is_lan_addr(&ent->recv_msg->addr)) in check_msg_timeout()
4088 if (is_lan_addr(&ent->recv_msg->addr)) in check_msg_timeout()
4284 struct ipmi_recv_msg recv_msg; in ipmi_panic_request_and_wait() local
4288 recv_msg.done = dummy_recv_done_handler; in ipmi_panic_request_and_wait()
4297 &recv_msg, in ipmi_panic_request_and_wait()