|
@@ -82,8 +82,6 @@ static void __lim_process_sme_deauth_req(struct mac_context *, uint32_t *);
|
|
|
static void __lim_process_sme_set_context_req(struct mac_context *, uint32_t *);
|
|
|
static bool __lim_process_sme_stop_bss_req(struct mac_context *,
|
|
|
struct scheduler_msg *pMsg);
|
|
|
-static void __lim_process_send_disassoc_frame(struct mac_context *mac_ctx,
|
|
|
- uint32_t *msg_buf);
|
|
|
static void lim_process_sme_channel_change_request(struct mac_context *mac,
|
|
|
uint32_t *pMsg);
|
|
|
static void lim_process_sme_start_beacon_req(struct mac_context *mac, uint32_t *pMsg);
|
|
@@ -4282,63 +4280,46 @@ static void lim_register_mgmt_frame_ind_cb(struct mac_context *mac_ctx,
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- *__lim_process_send_disassoc_frame: function processes disassoc frame
|
|
|
+ *__lim_process_send_disassoc_frame() - processes send disassoc frame request
|
|
|
* @mac_ctx: pointer to mac context
|
|
|
- * @msg_buf: message buffer
|
|
|
+ * @msg_buf: request message buffer
|
|
|
*
|
|
|
- * function processes disassoc request received from SME
|
|
|
+ * Process a request from SME to send a disassoc frame
|
|
|
*
|
|
|
- * return: none
|
|
|
+ * Return: none
|
|
|
*/
|
|
|
static void __lim_process_send_disassoc_frame(struct mac_context *mac_ctx,
|
|
|
- uint32_t *msg_buf)
|
|
|
+ void *msg_buf)
|
|
|
{
|
|
|
- struct sme_send_disassoc_frm_req sme_send_disassoc_frame_req;
|
|
|
- QDF_STATUS status;
|
|
|
- struct pe_session *session_entry = NULL;
|
|
|
- uint8_t sme_session_id;
|
|
|
- uint16_t sme_trans_id;
|
|
|
+ struct sme_send_disassoc_frm_req *req = msg_buf;
|
|
|
+ struct pe_session *session_entry;
|
|
|
|
|
|
- if (msg_buf == NULL) {
|
|
|
- pe_err("Buffer is Pointing to NULL");
|
|
|
+ if (!req) {
|
|
|
+ pe_err("NULL req");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- lim_get_session_info(mac_ctx, (uint8_t *)msg_buf, &sme_session_id,
|
|
|
- &sme_trans_id);
|
|
|
-
|
|
|
- status = lim_send_disassoc_frm_req_ser_des(mac_ctx,
|
|
|
- &sme_send_disassoc_frame_req,
|
|
|
- (uint8_t *)msg_buf);
|
|
|
-
|
|
|
- if ((QDF_STATUS_E_FAILURE == status) ||
|
|
|
- (lim_is_group_addr(sme_send_disassoc_frame_req.peer_mac) &&
|
|
|
- !lim_is_addr_bc(sme_send_disassoc_frame_req.peer_mac))) {
|
|
|
+ if ((lim_is_group_addr(req->peer_mac) &&
|
|
|
+ !lim_is_addr_bc(req->peer_mac))) {
|
|
|
pe_err("received invalid SME_DISASSOC_REQ message");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- session_entry = pe_find_session_by_sme_session_id(
|
|
|
- mac_ctx, sme_session_id);
|
|
|
- if (session_entry == NULL) {
|
|
|
- pe_err("session does not exist for given bssId "MAC_ADDRESS_STR,
|
|
|
- MAC_ADDR_ARRAY(sme_send_disassoc_frame_req.peer_mac));
|
|
|
+ session_entry = pe_find_session_by_sme_session_id(mac_ctx,
|
|
|
+ req->session_id);
|
|
|
+ if (!session_entry) {
|
|
|
+ pe_err("session does not exist for given bssId "
|
|
|
+ MAC_ADDRESS_STR, MAC_ADDR_ARRAY(req->peer_mac));
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- pe_debug("msg_type->%d len->%d sess_id->%d trans_id->%d mac->"MAC_ADDRESS_STR" reason->%d wait_for_ack->%d",
|
|
|
- sme_send_disassoc_frame_req.msg_type,
|
|
|
- sme_send_disassoc_frame_req.length,
|
|
|
- sme_send_disassoc_frame_req.session_id,
|
|
|
- sme_send_disassoc_frame_req.trans_id,
|
|
|
- MAC_ADDR_ARRAY(sme_send_disassoc_frame_req.peer_mac),
|
|
|
- sme_send_disassoc_frame_req.reason,
|
|
|
- sme_send_disassoc_frame_req.wait_for_ack);
|
|
|
+ pe_debug("msg_type->%d len->%d sess_id->%d mac->"
|
|
|
+ MAC_ADDRESS_STR " reason->%d wait_for_ack->%d",
|
|
|
+ req->msg_type, req->length, req->session_id,
|
|
|
+ MAC_ADDR_ARRAY(req->peer_mac), req->reason, req->wait_for_ack);
|
|
|
|
|
|
- lim_send_disassoc_mgmt_frame(mac_ctx,
|
|
|
- sme_send_disassoc_frame_req.reason,
|
|
|
- sme_send_disassoc_frame_req.peer_mac,
|
|
|
- session_entry, sme_send_disassoc_frame_req.wait_for_ack);
|
|
|
+ lim_send_disassoc_mgmt_frame(mac_ctx, req->reason, req->peer_mac,
|
|
|
+ session_entry, req->wait_for_ack);
|
|
|
}
|
|
|
|
|
|
/**
|