mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 00:24:41 -04:00
qcacld-3.0: Validate session-id before processing cfg operation
While processing cfg operation, there is possibly of sending invalid session-id to firmware, which may lead to device crash. So, validate session-id before processing cfg operation. Change-Id: I06014598e56f31b66d645f0380f5188dbe956f4f CRs-Fixed: 1080697
This commit is contained in:
parent
1c7c51da83
commit
d9491f4936
9 changed files with 197 additions and 4 deletions
|
|
@ -1962,4 +1962,12 @@ hdd_wlan_nla_put_u64(struct sk_buff *skb, int attrtype, u64 value)
|
|||
}
|
||||
#endif
|
||||
|
||||
static inline int wlan_hdd_validate_session_id(u8 session_id)
|
||||
{
|
||||
if (session_id != HDD_SESSION_ID_INVALID)
|
||||
return 0;
|
||||
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
#endif /* end #if !defined(WLAN_HDD_MAIN_H) */
|
||||
|
|
|
|||
|
|
@ -4978,6 +4978,11 @@ __wlan_hdd_cfg80211_monitor_rssi(struct wiphy *wiphy,
|
|||
|
||||
ENTER_DEV(dev);
|
||||
|
||||
if (wlan_hdd_validate_session_id(adapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", adapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
ret = wlan_hdd_validate_context(hdd_ctx);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
@ -9299,6 +9304,11 @@ static int __wlan_hdd_cfg80211_change_bss(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_CHANGE_BSS,
|
||||
pAdapter->sessionId, params->ap_isolate));
|
||||
|
|
@ -9706,6 +9716,11 @@ static int __wlan_hdd_change_station(struct wiphy *wiphy,
|
|||
TRACE_CODE_HDD_CHANGE_STATION,
|
||||
pAdapter->sessionId, params->listen_interval));
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
|
||||
ret = wlan_hdd_validate_context(pHddCtx);
|
||||
if (0 != ret)
|
||||
|
|
@ -9974,6 +9989,11 @@ static int __wlan_hdd_cfg80211_add_key(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_ADD_KEY,
|
||||
pAdapter->sessionId, params->key_len));
|
||||
|
|
@ -10430,6 +10450,11 @@ static int __wlan_hdd_cfg80211_set_default_key(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_SET_DEFAULT_KEY,
|
||||
pAdapter->sessionId, key_index));
|
||||
|
|
@ -10834,6 +10859,11 @@ int wlan_hdd_cfg80211_update_bss(struct wiphy *wiphy,
|
|||
|
||||
ENTER();
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_UPDATE_BSS,
|
||||
NO_SESSION, pAdapter->sessionId));
|
||||
|
|
@ -12417,6 +12447,11 @@ static int __wlan_hdd_cfg80211_connect(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_CONNECT,
|
||||
pAdapter->sessionId, pAdapter->device_mode));
|
||||
|
|
@ -12679,6 +12714,11 @@ static int __wlan_hdd_cfg80211_disconnect(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_DISCONNECT,
|
||||
pAdapter->sessionId, reason));
|
||||
|
|
@ -12909,6 +12949,11 @@ static int __wlan_hdd_cfg80211_join_ibss(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_JOIN_IBSS,
|
||||
pAdapter->sessionId, pAdapter->device_mode));
|
||||
|
|
@ -13111,6 +13156,11 @@ static int __wlan_hdd_cfg80211_leave_ibss(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_LEAVE_IBSS,
|
||||
pAdapter->sessionId,
|
||||
|
|
@ -13429,6 +13479,11 @@ int __wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_DEL_STA,
|
||||
pAdapter->sessionId, pAdapter->device_mode));
|
||||
|
|
@ -13667,6 +13722,11 @@ static int __wlan_hdd_cfg80211_add_station(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_ADD_STA,
|
||||
pAdapter->sessionId, params->listen_interval));
|
||||
|
|
@ -13746,6 +13806,11 @@ static int __wlan_hdd_cfg80211_set_pmksa(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!pmksa) {
|
||||
hdd_err("pmksa is NULL");
|
||||
return -EINVAL;
|
||||
|
|
@ -13827,6 +13892,11 @@ static int __wlan_hdd_cfg80211_del_pmksa(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!pmksa) {
|
||||
hdd_err("pmksa is NULL");
|
||||
return -EINVAL;
|
||||
|
|
@ -13907,6 +13977,11 @@ static int __wlan_hdd_cfg80211_flush_pmksa(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
hdd_warn("Flushing PMKSA");
|
||||
|
||||
pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
|
||||
|
|
@ -13978,6 +14053,11 @@ __wlan_hdd_cfg80211_update_ft_ies(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_UPDATE_FT_IES,
|
||||
pAdapter->sessionId, pHddStaCtx->conn_info.connState));
|
||||
|
|
@ -14109,6 +14189,11 @@ int __wlan_hdd_cfg80211_set_rekey_data(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_SET_REKEY_DATA,
|
||||
pAdapter->sessionId, pAdapter->device_mode));
|
||||
|
|
@ -14600,6 +14685,11 @@ __wlan_hdd_cfg80211_set_ap_channel_width(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
|
||||
status = wlan_hdd_validate_context(pHddCtx);
|
||||
if (status)
|
||||
|
|
@ -14707,6 +14797,11 @@ static int __wlan_hdd_cfg80211_channel_switch(struct wiphy *wiphy,
|
|||
hdd_notice("Set Freq %d",
|
||||
csa_params->chandef.chan->center_freq);
|
||||
|
||||
if (wlan_hdd_validate_session_id(adapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", adapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||
ret = wlan_hdd_validate_context(hdd_ctx);
|
||||
|
||||
|
|
|
|||
|
|
@ -7610,6 +7610,11 @@ static int __wlan_hdd_cfg80211_stop_ap(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_STOP_AP,
|
||||
pAdapter->sessionId, pAdapter->device_mode));
|
||||
|
|
@ -7835,6 +7840,11 @@ static int __wlan_hdd_cfg80211_start_ap(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_START_AP, pAdapter->sessionId,
|
||||
params->beacon_interval));
|
||||
|
|
@ -8054,6 +8064,11 @@ static int __wlan_hdd_cfg80211_change_beacon(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_CHANGE_BEACON,
|
||||
pAdapter->sessionId, pAdapter->device_mode));
|
||||
|
|
|
|||
|
|
@ -77,8 +77,10 @@ static int wlan_hdd_gen_wlan_status_pack(struct wlan_status_data *data,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (adapter->sessionId == HDD_SESSION_ID_INVALID)
|
||||
if (wlan_hdd_validate_session_id(adapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", adapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||
if (hdd_ctx->lpss_support && hdd_ctx->config->enable_lpass_support)
|
||||
|
|
|
|||
|
|
@ -947,6 +947,11 @@ static int __wlan_hdd_cfg80211_remain_on_channel(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_REMAIN_ON_CHANNEL,
|
||||
pAdapter->sessionId, REMAIN_ON_CHANNEL_REQUEST));
|
||||
|
|
@ -1091,6 +1096,11 @@ __wlan_hdd_cfg80211_cancel_remain_on_channel(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
status = wlan_hdd_validate_context(pHddCtx);
|
||||
|
||||
if (0 != status)
|
||||
|
|
@ -1245,6 +1255,11 @@ static int __wlan_hdd_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_ACTION, pAdapter->sessionId,
|
||||
pAdapter->device_mode));
|
||||
|
|
@ -2038,7 +2053,8 @@ struct wireless_dev *__wlan_hdd_add_virtual_intf(struct wiphy *wiphy,
|
|||
wlan_hdd_tdls_disable_offchan_and_teardown_links(pHddCtx);
|
||||
|
||||
pAdapter = hdd_get_adapter(pHddCtx, QDF_STA_MODE);
|
||||
if (pAdapter != NULL) {
|
||||
if ((pAdapter != NULL) &&
|
||||
!(wlan_hdd_validate_session_id(pAdapter->sessionId))) {
|
||||
scan_info = &pAdapter->scan_info;
|
||||
if (scan_info->mScanPending) {
|
||||
hdd_abort_mac_scan(pHddCtx, pAdapter->sessionId,
|
||||
|
|
@ -2176,6 +2192,11 @@ int __wlan_hdd_del_virtual_intf(struct wiphy *wiphy, struct wireless_dev *wdev)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pVirtAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pVirtAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_DEL_VIRTUAL_INTF,
|
||||
pVirtAdapter->sessionId, pVirtAdapter->device_mode));
|
||||
|
|
|
|||
|
|
@ -1902,6 +1902,12 @@ static int __wlan_hdd_cfg80211_suspend_wlan(struct wiphy *wiphy,
|
|||
status = hdd_get_front_adapter(pHddCtx, &pAdapterNode);
|
||||
while (NULL != pAdapterNode && QDF_STATUS_SUCCESS == status) {
|
||||
pAdapter = pAdapterNode->pAdapter;
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
goto next_adapter;
|
||||
}
|
||||
|
||||
if (QDF_SAP_MODE == pAdapter->device_mode) {
|
||||
if (BSS_START ==
|
||||
WLAN_HDD_GET_HOSTAP_STATE_PTR(pAdapter)->bssState &&
|
||||
|
|
@ -1930,6 +1936,7 @@ static int __wlan_hdd_cfg80211_suspend_wlan(struct wiphy *wiphy,
|
|||
}
|
||||
if (pAdapter->is_roc_inprogress)
|
||||
wlan_hdd_cleanup_remain_on_channel_ctx(pAdapter);
|
||||
next_adapter:
|
||||
status = hdd_get_next_adapter(pHddCtx, pAdapterNode, &pNext);
|
||||
pAdapterNode = pNext;
|
||||
}
|
||||
|
|
@ -2147,6 +2154,11 @@ static int __wlan_hdd_cfg80211_set_power_mgmt(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_SET_POWER_MGMT,
|
||||
pAdapter->sessionId, timeout));
|
||||
|
|
@ -2332,6 +2344,11 @@ static int __wlan_hdd_cfg80211_get_txpower(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(adapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", adapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
status = wlan_hdd_validate_context(pHddCtx);
|
||||
if (0 != status) {
|
||||
*dbm = 0;
|
||||
|
|
@ -2344,8 +2361,8 @@ static int __wlan_hdd_cfg80211_get_txpower(struct wiphy *wiphy,
|
|||
}
|
||||
|
||||
/* Validate adapter sessionId */
|
||||
if (adapter->sessionId == HDD_SESSION_ID_INVALID) {
|
||||
hdd_err("Adapter Session Invalid!");
|
||||
if (wlan_hdd_validate_session_id(adapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", adapter->sessionId);
|
||||
return -ENOTSUPP;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1436,6 +1436,11 @@ static int __wlan_hdd_cfg80211_scan(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
status = wlan_hdd_validate_context(pHddCtx);
|
||||
|
||||
if (0 != status)
|
||||
|
|
@ -2244,6 +2249,11 @@ static int __wlan_hdd_cfg80211_sched_scan_start(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
|
||||
ret = wlan_hdd_validate_context(pHddCtx);
|
||||
|
||||
|
|
@ -2526,6 +2536,11 @@ static int __wlan_hdd_cfg80211_sched_scan_stop(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
|
||||
|
||||
if (NULL == pHddCtx) {
|
||||
|
|
@ -2634,6 +2649,11 @@ static void __wlan_hdd_cfg80211_abort_scan(struct wiphy *wiphy,
|
|||
return;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(adapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", adapter->sessionId);
|
||||
return;
|
||||
}
|
||||
|
||||
ret = wlan_hdd_validate_context(hdd_ctx);
|
||||
if (!ret)
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -1659,6 +1659,11 @@ static int __wlan_hdd_cfg80211_get_station(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if ((eConnectionState_Associated != pHddStaCtx->conn_info.connState) ||
|
||||
(0 == ssidlen)) {
|
||||
hdd_notice("Not associated or Invalid ssidlen, %d",
|
||||
|
|
|
|||
|
|
@ -3932,6 +3932,11 @@ static int __wlan_hdd_cfg80211_tdls_mgmt(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_TDLS_MGMT,
|
||||
pAdapter->sessionId, action_code));
|
||||
|
|
@ -4438,6 +4443,11 @@ static int __wlan_hdd_cfg80211_tdls_oper(struct wiphy *wiphy,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (wlan_hdd_validate_session_id(pAdapter->sessionId)) {
|
||||
hdd_err("invalid session id: %d", pAdapter->sessionId);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
MTRACE(qdf_trace(QDF_MODULE_ID_HDD,
|
||||
TRACE_CODE_HDD_CFG80211_TDLS_OPER,
|
||||
pAdapter->sessionId, oper));
|
||||
|
|
|
|||
Loading…
Reference in a new issue