wlan: Error handling while issuing roam offload scan req
In case if session id does not exist for a given BSSID, Driver
should not issue a roam offload scan request.
Fix is to make sure driver issue roam offload scan request only
if valid session-id exist for a BSSID.
Change-Id: Iab3d01b203ff3d70f45f2e77d69a761f7a956e86
CRs-Fixed: 2728005
diff --git a/CORE/SME/src/rrm/sme_rrm.c b/CORE/SME/src/rrm/sme_rrm.c
index 6b81b0f..a364b90 100644
--- a/CORE/SME/src/rrm/sme_rrm.c
+++ b/CORE/SME/src/rrm/sme_rrm.c
@@ -727,7 +727,7 @@
{
tCsrScanRequest scanRequest;
v_U32_t scanId = 0;
- tANI_U32 sessionId;
+ tANI_U32 sessionId = 0;
#if defined WLAN_VOWIFI_DEBUG
smsLog( pMac, LOGE, "Issue scan request " );
#endif
@@ -790,7 +790,13 @@
/* set requestType to full scan */
scanRequest.requestType = eCSR_SCAN_REQUEST_FULL_SCAN;
- csrRoamGetSessionIdFromBSSID( pMac, (tCsrBssid*)pSmeRrmContext->sessionBssId, &sessionId );
+ status = csrRoamGetSessionIdFromBSSID(pMac,
+ (tCsrBssid*)pSmeRrmContext->sessionBssId, &sessionId );
+ if (!HAL_STATUS_SUCCESS(status)) {
+ smsLog( pMac, LOGE, FL("sessionId not found for Offload scan req"));
+ return status;
+ }
+
status = sme_ScanRequest( pMac, (tANI_U8)sessionId, &scanRequest, &scanId, &sme_RrmScanRequestCallback, NULL );
if ( pSmeRrmContext->ssId.length )