diff options
| author | Prashanth Bhatta <bhattap@qca.qualcomm.com> | 2014-03-17 13:29:16 -0700 |
|---|---|---|
| committer | Akash Patel <c_akashp@qca.qualcomm.com> | 2014-03-19 13:16:51 -0700 |
| commit | 1d3edffc2cc42d94d185059fb6b277f8a99df770 (patch) | |
| tree | 15e6429341cf24d3de3198d513a8d0a469b9c5d1 | |
| parent | 0fc096f7d1f8cd68a6cd40f8264eac01f693c2be (diff) | |
qcacld: hdd: Update session ID in HDD for SAP mode
Since SAP module opens the SME session ID, session ID in HDD
context may be uninitialized. Most of the IOCTL for SAP mode use
session ID in HDD context. In standalone SAP mode, if ACS is
enabled then SAP module opens a new session. IOCTL in SAP mode
works if ACS is not enabled because of the initialized session ID
in HDD when driver is brought-up. Update the HDD session ID in
SAP mode when START_BSS event is posted from SAP to HDD module.
This way HDD and SAP can be in sync w.r.t session ID.
Change-Id: I5f9d92c85d1e138a7618c042b5453a8d80812d60
CRs-fixed: 629983
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_hostapd.c | 2 | ||||
| -rw-r--r-- | CORE/SAP/inc/sapApi.h | 1 | ||||
| -rw-r--r-- | CORE/SAP/src/sapFsm.c | 2 |
3 files changed, 5 insertions, 0 deletions
diff --git a/CORE/HDD/src/wlan_hdd_hostapd.c b/CORE/HDD/src/wlan_hdd_hostapd.c index a5bddb0fb1c9..6461d8bb2be0 100644 --- a/CORE/HDD/src/wlan_hdd_hostapd.c +++ b/CORE/HDD/src/wlan_hdd_hostapd.c @@ -525,6 +525,8 @@ VOS_STATUS hdd_hostapd_SAPEventCB( tpSap_Event pSapEvent, v_PVOID_t usrDataForCa else { pHddApCtx->uBCStaId = pSapEvent->sapevt.sapStartBssCompleteEvent.staId; + pHostapdAdapter->sessionId = + pSapEvent->sapevt.sapStartBssCompleteEvent.sessionId; //@@@ need wep logic here to set privacy bit hdd_softap_Register_BC_STA(pHostapdAdapter, pHddApCtx->uPrivacy); } diff --git a/CORE/SAP/inc/sapApi.h b/CORE/SAP/inc/sapApi.h index 0f7c398682a7..45795776aa9f 100644 --- a/CORE/SAP/inc/sapApi.h +++ b/CORE/SAP/inc/sapApi.h @@ -248,6 +248,7 @@ typedef struct sap_StartBssCompleteEvent_s { v_U8_t status; v_U8_t operatingChannel; v_U16_t staId; //self StaID + v_U8_t sessionId; /* SoftAP SME session ID */ } tSap_StartBssCompleteEvent; typedef struct sap_StopBssCompleteEvent_s { diff --git a/CORE/SAP/src/sapFsm.c b/CORE/SAP/src/sapFsm.c index 4f5f1c0be286..65340893c84c 100644 --- a/CORE/SAP/src/sapFsm.c +++ b/CORE/SAP/src/sapFsm.c @@ -682,6 +682,8 @@ sapSignalHDDevent else sapApAppEvent.sapevt.sapStartBssCompleteEvent.staId = 0; sapApAppEvent.sapevt.sapStartBssCompleteEvent.operatingChannel = (v_U8_t)sapContext->channel; + sapApAppEvent.sapevt.sapStartBssCompleteEvent.sessionId = + sapContext->sessionId; break; case eSAP_STOP_BSS_EVENT: |
