Home | History | Annotate | Download | only in Connection_Managment

Lines Matching refs:pAdmCtrl

398 TI_STATUS admCtrlWpa2_parseIe(admCtrl_t *pAdmCtrl, TI_UINT8 *pWpa2Ie, wpa2IeData_t *pWpa2Data);
399 TI_UINT16 admCtrlWpa2_buildCapabilities(admCtrl_t *pAdmCtrl);
400 TI_UINT32 admCtrlWpa2_parseSuiteVal(admCtrl_t *pAdmCtrl, TI_UINT8* suiteVal, TI_UINT32 maxVal, TI_UINT32 unknownVal);
402 TI_STATUS admCtrlWpa2_getCipherSuiteMetric (admCtrl_t *pAdmCtrl, wpa2IeData_t *pWpa2Data, TI_UINT32 *metric,
404 TI_STATUS admCtrlWpa2_DynamicConfig(admCtrl_t *pAdmCtrl, TRsnPaeConfig *pPaeConfig);
406 TI_STATUS admCtrlWpa2_resetPMKIDCache(admCtrl_t *pAdmCtrl);
407 /*TI_STATUS admCtrlWpa2_sendPMKIDCandListAfterDelay(admCtrl_t * pAdmCtrl, TI_UINT32 delay);*/
408 TI_STATUS admCtrlWpa2_getPMKIDList(admCtrl_t * pAdmCtrl,OS_802_11_PMKID *pmkidList);
409 TI_STATUS admCtrlWpa2_setPMKIDList(admCtrl_t * pAdmCtrl, OS_802_11_PMKID *pmkidList);
411 TI_STATUS admCtrlWpa2_addPMKID(admCtrl_t * pAdmCtrl, TMacAddr * pBSSID, pmkidValue_t pmkID);
412 TI_STATUS admCtrlWpa2_findPMKID(admCtrl_t * pAdmCtrl, TMacAddr *pBSSID,
415 static TI_BOOL admCtrlWpa2_getPreAuthStatus(admCtrl_t *pAdmCtrl, TMacAddr *givenAP, TI_UINT8 *cacheIndex);
417 static TI_STATUS admCtrlWpa2_startPreAuth(admCtrl_t *pAdmCtrl, TBssidList4PreAuth *pBssidList);
421 static TI_STATUS admCtrlWpa2_get802_1x_AkmExists (admCtrl_t *pAdmCtrl, TI_BOOL *wpa_802_1x_AkmExists);
433 * I - pAdmCtrl - context \n
441 TI_STATUS admCtrlWpa2_config(admCtrl_t *pAdmCtrl)
447 pAdmCtrl->authSuite = RSN_AUTH_OPEN;
448 if (pAdmCtrl->unicastSuite == TWD_CIPHER_NONE)
450 pAdmCtrl->unicastSuite = TWD_CIPHER_AES_CCMP;
452 if (pAdmCtrl->broadcastSuite == TWD_CIPHER_NONE)
454 pAdmCtrl->broadcastSuite = TWD_CIPHER_AES_CCMP;
458 pAdmCtrl->getInfoElement = admCtrlWpa2_getInfoElement;
459 pAdmCtrl->setSite = admCtrlWpa2_setSite;
460 pAdmCtrl->evalSite = admCtrlWpa2_evalSite;
462 pAdmCtrl->getPmkidList = admCtrlWpa2_getPMKIDList;
463 pAdmCtrl->setPmkidList = admCtrlWpa2_setPMKIDList;
464 pAdmCtrl->resetPmkidList = admCtrlWpa2_resetPMKIDCache;
465 pAdmCtrl->getPreAuthStatus = admCtrlWpa2_getPreAuthStatus;
466 pAdmCtrl->startPreAuth = admCtrlWpa2_startPreAuth;
467 pAdmCtrl->get802_1x_AkmExists = admCtrlWpa2_get802_1x_AkmExists;
470 switch (pAdmCtrl->externalAuthMode)
474 pAdmCtrl->keyMngSuite = RSN_KEY_MNG_802_1X;
477 pAdmCtrl->keyMngSuite = RSN_KEY_MNG_NONE;
484 paeConfig.authProtocol = pAdmCtrl->externalAuthMode;
485 paeConfig.unicastSuite = pAdmCtrl->unicastSuite;
486 paeConfig.broadcastSuite = pAdmCtrl->broadcastSuite;
487 paeConfig.keyExchangeProtocol = pAdmCtrl->keyMngSuite;
489 status = pAdmCtrl->pRsn->setPaeConfig(pAdmCtrl->pRsn, &paeConfig);
505 * I - pAdmCtrl - context \n
516 TI_STATUS admCtrlWpa2_getInfoElement(admCtrl_t *pAdmCtrl, TI_UINT8 *pIe, TI_UINT32 *pLength)
533 if (!broadcastCipherSuiteValidity[pAdmCtrl->networkMode][pAdmCtrl->broadcastSuite])
541 os_memoryZero(pAdmCtrl->hOs, pWpa2IePacket, sizeof(wpa2IePacket_t));
547 os_memoryCopy(pAdmCtrl->hOs, (void *)pWpa2IePacket->groupSuite, wpa2IeOuiIe, 3);
548 pWpa2IePacket->groupSuite[3] = (TI_UINT8)pAdmCtrl->pRsn->paeConfig.broadcastSuite;
553 os_memoryCopy(pAdmCtrl->hOs, (void *)pWpa2IePacket->pairwiseSuite, wpa2IeOuiIe, 3);
554 pWpa2IePacket->pairwiseSuite[3] = (TI_UINT8)pAdmCtrl->pRsn->paeConfig.unicastSuite;
559 os_memoryCopy(pAdmCtrl->hOs, (void *)pWpa2IePacket->authKeyMngSuite, wpa2IeOuiIe, 3);
560 switch (pAdmCtrl->externalAuthMode)
573 if (admCtrlXCC_getCckmAkm(pAdmCtrl, akmSuite))
575 os_memoryCopy(pAdmCtrl->hOs, (void*)pWpa2IePacket->authKeyMngSuite, akmSuite, DOT11_OUI_LEN);
594 SET_WLAN_WORD(&pWpa2IePacket->capabilities,ENDIAN_HANDLE_WORD(admCtrlWpa2_buildCapabilities(pAdmCtrl)));
598 if(pAdmCtrl->preAuthSupport &&
599 (pAdmCtrl->pRsn->paeConfig.authProtocol == RSN_EXT_AUTH_MODE_WPA2))
604 status = ctrlData_getParamBssid(pAdmCtrl->pRsn->hCtrlData, CTRL_DATA_CURRENT_BSSID_PARAM, pBssid);
606 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_getInfoElement - find PMKID \n");
607 status = admCtrlWpa2_findPMKID(pAdmCtrl, &assocBssid, &pmkId, &index);
610 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_getInfoElement - PMKID was found! \n");
612 os_memoryCopy(pAdmCtrl->hOs, (TI_UINT8 *)pWpa2IePacket->pmkId,
619 TRACE_INFO_HEX(pAdmCtrl->hReport, pIe, *pLength);
633 * I - pAdmCtrl - context \n
644 TI_STATUS admCtrlWpa2_setSite(admCtrl_t *pAdmCtrl, TRsnData *pRsnData, TI_UINT8 *pAssocIe, TI_UINT8 *pAssocIeLen)
661 pParam = (paramInfo_t *)os_memoryAlloc(pAdmCtrl->hOs, sizeof(paramInfo_t));
673 status = mlme_setParam(pAdmCtrl->hMlme, pParam);
682 status = TWD_SetParam (pAdmCtrl->pRsn->hTWD, &tTwdParam);
686 status = TWD_SetParam (pAdmCtrl->pRsn->hTWD, &tTwdParam);
689 admCtrlXCC_setExtendedParams(pAdmCtrl, pRsnData);
693 status = admCtrl_parseIe(pAdmCtrl, pRsnData, &pWpa2Ie, RSN_IE_ID);
698 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_setSite: RSN_IE=\n");
699 TRACE_INFO_HEX(pAdmCtrl->hReport, pRsnData->pIe, pRsnData->ieLen);
700 status = admCtrlWpa2_parseIe(pAdmCtrl, pWpa2Ie, &wpa2Data);
707 (pAdmCtrl->unicastSuite>=MAX_WPA2_CIPHER_SUITE))
713 if (!broadcastCipherSuiteValidity[pAdmCtrl->networkMode][wpa2Data.broadcastSuite])
719 status = admCtrlWpa2_getCipherSuiteMetric (pAdmCtrl, &wpa2Data, NULL, &uSuite, &bSuite);
724 pAdmCtrl->replayCnt = wpa2Data.ptkReplayCounters;
729 os_memoryCopy(pAdmCtrl->hOs, pAssocIe, &wpa2Data, sizeof(wpa2IeData_t));
734 paeConfig.authProtocol = pAdmCtrl->externalAuthMode;
736 if(pAdmCtrl->WPAPromoteFlags)
738 if(pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA)
740 if(pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPAPSK)
747 XCCMngr_setParam(pAdmCtrl->hXCCMngr, pParam);
750 paeConfig.keyExchangeProtocol = pAdmCtrl->keyMngSuite;
753 status = admCtrlWpa2_DynamicConfig(pAdmCtrl, &paeConfig);
764 if (pAdmCtrl->networkEapMode!=OS_XCC_NETWORK_EAP_OFF)
773 status = mlme_setParam(pAdmCtrl->hMlme, pParam);
781 status = rxData_setParam(pAdmCtrl->hRx, pParam);
790 status = TWD_SetParam(pAdmCtrl->pRsn->hTWD, &tTwdParam);
792 os_memoryFree(pAdmCtrl->hOs, pParam, sizeof(paramInfo_t));
808 * I - pAdmCtrl - Context \n
818 TI_STATUS admCtrlWpa2_evalSite(admCtrl_t *pAdmCtrl, TRsnData *pRsnData, TRsnSiteParams *pRsnSiteParams, TI_UINT32 *pEvaluation)
844 siteMgr_getParamWSC(pAdmCtrl->pRsn->hSiteMgr, &wscMode); /* SITE_MGR_SIMPLE_CONFIG_MODE */
845 status = admCtrl_parseIe(pAdmCtrl, pRsnData, &pWpa2Ie, RSN_IE_ID);
850 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_evalSite, IE=\n");
852 TRACE_INFO_HEX(pAdmCtrl->hReport, pRsnData->pIe, pRsnData->ieLen);
854 status = admCtrlWpa2_parseIe(pAdmCtrl, pWpa2Ie, &wpa2Data);
869 status = (pAdmCtrl->externalAuthMode <= RSN_EXT_AUTH_MODE_AUTO_SWITCH) ? TI_OK : TI_NOK;
877 if(!pAdmCtrl->WPAPromoteFlags)
878 status = (pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA2) ? TI_OK : TI_NOK;
881 status = ((pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA2) ||
882 (pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA)) ? TI_OK : TI_NOK;
885 if(!pAdmCtrl->WPAPromoteFlags)
886 status = (pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA2PSK) ? TI_OK : TI_NOK;
889 status = ((pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA2PSK) ||
890 (wscMode && (pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA)) ||
891 (pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPAPSK)) ? TI_OK : TI_NOK;
893 if ((status == TI_NOK) && (wpa2Data.KeyMngSuiteCnt > 1) && (wpa2Data.KeyMngSuite[1] == WPA2_IE_KEY_MNG_801_1X) && (pAdmCtrl->externalAuthMode == RSN_EXT_AUTH_MODE_WPA2))
895 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "Overriding AKM suite evaluation for simple-config\n");
900 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_ERROR, "admCtrlWpa2_evalSite, default, wpa2Data.KeyMngSuite[i]=%d \n",wpa2Data.KeyMngSuite[i]);
908 TRACE3(pAdmCtrl->hReport, REPORT_SEVERITY_ERROR, "admCtrlWpa2_evalSite, status=%d, externalAuthMode=%d, WPAPromoteFlags=%d \n", status, pAdmCtrl->externalAuthMode, pAdmCtrl->WPAPromoteFlags);
913 if(admCtrlWpa2_getCipherSuiteMetric(pAdmCtrl, &wpa2Data, pEvaluation, &uSuite, &bSuite) != TI_OK)
917 if (!pAdmCtrl->mixedMode)
923 TRACE2(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_evalSite, mixedMode is TI_FALSE, privacy=%d, uSuite=%d\n", pRsnData->privacy, uSuite);
945 * I - pAdmCtrl - pointer to admCtrl context
956 TI_STATUS admCtrlWpa2_parseIe(admCtrl_t *pAdmCtrl, TI_UINT8 *pWpa2Ie, wpa2IeData_t *pWpa2Data)
963 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "Wpa2_IE: DEBUG: admCtrlWpa2_parseIe\n\n");
977 TRACE3(pAdmCtrl->hReport, REPORT_SEVERITY_ERROR, "Wpa2_ParseIe Error: length=0x%x, elementid=0x%x, version=0x%x\n", wpa2Ie->hdr[1], wpa2Ie->hdr[0], temp2bytes);
984 os_memoryZero(pAdmCtrl->hOs, pWpa2Data, sizeof(wpa2IeData_t));
997 pWpa2Data->broadcastSuite = (ECipherSuite)admCtrlWpa2_parseSuiteVal(pAdmCtrl, (TI_UINT8 *)wpa2Ie->rsnIeData + dataOffset,
1000 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "Wpa2_IE: GroupSuite %x \n", pWpa2Data->broadcastSuite);
1013 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_ERROR, "Wpa2_ParseIe Error: Pairwise cipher suite count is %d \n", pWpa2Data->unicastSuiteCnt);
1020 curCipherSuite = (ECipherSuite)admCtrlWpa2_parseSuiteVal(pAdmCtrl, (TI_UINT8 *)wpa2Ie->rsnIeData + dataOffset,
1028 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "Wpa_IE: unicast suite %x \n", curCipherSuite);
1057 pAdmCtrl->wpaAkmExists = TI_FALSE;
1061 curKeyMngSuite = admCtrlXCC_parseCckmSuiteVal4Wpa2(pAdmCtrl, (TI_UINT8 *)(wpa2Ie->rsnIeData + dataOffset));
1069 curKeyMngSuite = admCtrlWpa2_parseSuiteVal(pAdmCtrl, (TI_UINT8 *)wpa2Ie->rsnIeData + dataOffset,
1074 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "Wpa2_IE: authKeyMng %x \n", curKeyMngSuite);
1084 pAdmCtrl->wpaAkmExists = TI_TRUE;
1136 TRACE5(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "Wpa2_IE: capabilities %x, preAuthentication = %x, bcastForUnicatst %x, ptk = %x, gtk = %x\n", capabilities, pWpa2Data->preAuthentication, pWpa2Data->bcastForUnicatst, pWpa2Data->ptkReplayCounters, pWpa2Data->gtkReplayCounters);
1143 TI_UINT16 admCtrlWpa2_buildCapabilities(admCtrl_t *pAdmCtrl)
1155 switch (pAdmCtrl->replayCnt)
1177 TI_UINT32 admCtrlWpa2_parseSuiteVal(admCtrl_t *pAdmCtrl, TI_UINT8* suiteVal, TI_UINT32 maxVal, TI_UINT32 unknownVal)
1181 if ((pAdmCtrl==NULL) || (suiteVal==NULL))
1185 if (!os_memoryCompare(pAdmCtrl->hOs, suiteVal, wpa2IeOuiIe, 3))
1213 TI_STATUS admCtrlWpa2_getCipherSuiteMetric (admCtrl_t *pAdmCtrl, wpa2IeData_t *pWpa2Data, TI_UINT32 *metric,
1227 pAdmCtrl->getCipherSuite(pAdmCtrl, &encryption);
1228 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "admCtrlWpa2_getCipherSuiteMetric, encryption=%d\n", encryption);
1238 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "admCtrlWpa2_getCipherSuiteMetric, break: validity.evaluation=%d\n", admCtrlWpa2_validity.evaluation);
1245 TRACE2(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "admCtrlWpa2_getCipherSuiteMetric, validity.evaluation=%d, maxMetric=%d\n", admCtrlWpa2_validity.evaluation, maxMetric);
1253 if((pAdmCtrl->WPAPromoteFlags & ADMCTRL_WPA_OPTION_ENABLE_PROMOTE_CIPHER) &&
1292 * I - pAdmCtrl - pointer to admCtrl context
1302 TI_STATUS admCtrlWpa2_DynamicConfig(admCtrl_t *pAdmCtrl, TRsnPaeConfig *pPaeConfig)
1307 pAdmCtrl->getInfoElement = admCtrlWpa2_getInfoElement;
1309 pAdmCtrl->getPmkidList = admCtrlWpa2_getPMKIDList;
1310 pAdmCtrl->setPmkidList = admCtrlWpa2_setPMKIDList;
1311 pAdmCtrl->resetPmkidList = admCtrlWpa2_resetPMKIDCache;
1312 pAdmCtrl->getPreAuthStatus = admCtrlWpa2_getPreAuthStatus;
1313 pAdmCtrl->startPreAuth = admCtrlWpa2_startPreAuth;
1316 switch (pAdmCtrl->externalAuthMode)
1320 pAdmCtrl->keyMngSuite = RSN_KEY_MNG_802_1X;
1324 pAdmCtrl->keyMngSuite = RSN_KEY_MNG_802_1X;
1327 pAdmCtrl->keyMngSuite = RSN_KEY_MNG_NONE;
1335 status = pAdmCtrl->pRsn->setPaeConfig(pAdmCtrl->pRsn, pPaeConfig);
1353 * I - pAdmCtrl - pointer to admCtrl context
1366 TI_STATUS admCtrlWpa2_findPMKID (admCtrl_t * pAdmCtrl, TMacAddr *pBSSID,
1376 (i <= pAdmCtrl->pmkid_cache.entriesNumber))
1378 MAC_COPY (entryMac, pAdmCtrl->pmkid_cache.pmkidTbl[i].bssId);
1385 os_memoryCopy(pAdmCtrl->hOs, (void*)pPMKID,
1386 pAdmCtrl->pmkid_cache.pmkidTbl[i].pmkId,
1411 * I - pAdmCtrl - pointer to admCtrl context
1421 TI_STATUS admCtrlWpa2_getPMKIDList (admCtrl_t * pAdmCtrl,OS_802_11_PMKID *pmkidList)
1425 TI_UINT8 NumOfEntries = pAdmCtrl->pmkid_cache.entriesNumber;
1428 if(!pAdmCtrl->preAuthSupport)
1448 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: Get PMKID cache. Number of entries = %d \n", NumOfEntries);
1452 bssid = (TI_UINT8 *) pAdmCtrl->pmkid_cache.pmkidTbl[i].bssId;
1453 pmkid = (TI_UINT8 *)pAdmCtrl->pmkid_cache.pmkidTbl[i].pmkId;
1457 os_memoryCopy(pAdmCtrl->hOs,
1462 TRACE22(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: BSSID: %.2X-%.2X-%.2X-%.2X-%.2X-%.2X PMKID: %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X \n", bssid[0], bssid[1], bssid[2], bssid[3], bssid[4], bssid[5], pmkid[0], pmkid[1], pmkid[2], pmkid[3], pmkid[4], pmkid[5], pmkid[6], pmkid[7], pmkid[8], pmkid[9], pmkid[10],pmkid[11], pmkid[12],pmkid[13],pmkid[14],pmkid[15]);
1479 * I - pAdmCtrl - pointer to admCtrl context
1489 TI_STATUS admCtrlWpa2_addPMKID (admCtrl_t * pAdmCtrl, TMacAddr *pBSSID, pmkidValue_t pmkID)
1495 status = admCtrlWpa2_findPMKID (pAdmCtrl, pBSSID, NULL, &cacheIndex);
1500 os_memoryCopy(pAdmCtrl->hOs,
1501 (void*)&pAdmCtrl->pmkid_cache.pmkidTbl[cacheIndex].pmkId,
1503 /*pAdmCtrl->pmkid_cache.pmkidTbl[cacheIndex].generationTs = os_timeStampMs(pAdmCtrl->hOs); */
1509 cacheIndex = pAdmCtrl->pmkid_cache.nextFreeEntry;
1510 MAC_COPY (pAdmCtrl->pmkid_cache.pmkidTbl[cacheIndex].bssId, *pBSSID);
1511 os_memoryCopy(pAdmCtrl->hOs,
1512 (void*)&pAdmCtrl->pmkid_cache.pmkidTbl[cacheIndex].pmkId,
1519 pAdmCtrl->pmkid_cache.nextFreeEntry = (cacheIndex + 1) % ADMCTRL_PMKID_CACHE_SIZE;
1521 if(pAdmCtrl->pmkid_cache.entriesNumber < ADMCTRL_PMKID_CACHE_SIZE)
1522 pAdmCtrl->pmkid_cache.entriesNumber ++;
1525 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN Add PMKID Entry index is %d \n", cacheIndex);
1526 TRACE22(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: BSSID: %.2X-%.2X-%.2X-%.2X-%.2X-%.2X PMKID: %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X %.2X \n", (*pBSSID)[0], (*pBSSID)[1], (*pBSSID)[2], (*pBSSID)[3], (*pBSSID)[4], (*pBSSID)[5], pmkID[0], pmkID[1], pmkID[2], pmkID[3], pmkID[4], pmkID[5], pmkID[6], pmkID[7], pmkID[8], pmkID[9], pmkID[10],pmkID[11], pmkID[12],pmkID[13],pmkID[14],pmkID[15]);
1543 * I - pAdmCtrl - pointer to admCtrl context
1552 TI_STATUS admCtrlWpa2_setPMKIDList (admCtrl_t * pAdmCtrl, OS_802_11_PMKID *pmkidList)
1561 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: Set PMKID list - Buffer size < min length (8 bytes). Supplied length is %d .\n", pmkidList->Length);
1569 admCtrlWpa2_resetPMKIDCache(pAdmCtrl);
1580 TRACE3(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: Set PMKID list - no enough room for %d entries Needed length is %d. Supplied length is %d .\n", NumOfEntries, neededLength,pmkidList->Length);
1590 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "admCtrlWpa2_setPMKIDList: Received new pre-auth AP\n");
1591 if (pAdmCtrl->numberOfPreAuthCandidates)
1593 pAdmCtrl->numberOfPreAuthCandidates--;
1594 if (pAdmCtrl->numberOfPreAuthCandidates == 0)
1596 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "Stopping the Pre-Auth timer since Pre-auth is finished\n");
1597 tmr_StopTimer (pAdmCtrl->hPreAuthTimerWpa2);
1599 admCtrl_notifyPreAuthStatus (pAdmCtrl, RSN_PRE_AUTH_END);
1602 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "admCtrlWpa2_setPMKIDList: %d APs left in candidate list\n",pAdmCtrl->numberOfPreAuthCandidates);
1607 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_WARNING , "admCtrlWpa2_setPMKIDList: number of candidates was already zero...\n");
1609 admCtrlWpa2_addPMKID(pAdmCtrl,&macAddr, (TI_UINT8 *)pmkidList->osBSSIDInfo[i].PMKID);
1626 * I - pAdmCtrl - pointer to admCtrl context
1634 TI_STATUS admCtrlWpa2_resetPMKIDCache (admCtrl_t *pAdmCtrl)
1637 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: Reset PMKID cache. %d entries are deleted. \n", pAdmCtrl->pmkid_cache.entriesNumber);
1639 os_memoryZero(pAdmCtrl->hOs, (void*)&pAdmCtrl->pmkid_cache, sizeof(pmkid_cache_t));
1656 * I - pAdmCtrl - pointer to admCtrl context
1668 admCtrl_t *pAdmCtrl = (admCtrl_t *)hHandle;
1677 pParam = (paramInfo_t *)os_memoryAlloc(pAdmCtrl->hOs, sizeof(paramInfo_t));
1685 status = sme_GetParam (pAdmCtrl->pRsn->hSmeSm, pParam);
1687 os_memoryFree(pAdmCtrl->hOs, pParam, sizeof(paramInfo_t));
1694 if ((pAdmCtrl->pmkid_cache.ssid.len != pParam->content.smeDesiredSSID.len) ||
1695 (os_memoryCompare(pAdmCtrl->hOs, (TI_UINT8 *)pAdmCtrl->pmkid_cache.ssid.str,
1697 pAdmCtrl->pmkid_cache.ssid.len) != 0))
1699 admCtrlWpa2_resetPMKIDCache(pAdmCtrl);
1701 os_memoryCopy(pAdmCtrl->hOs, (void *)pAdmCtrl->pmkid_cache.ssid.str,
1704 pAdmCtrl->pmkid_cache.ssid.len = pParam->content.smeDesiredSSID.len;
1708 /*os_memoryZero(pAdmCtrl->hOs, (void*)&apList, sizeof(bssidListBySsid_t));
1709 status = siteMgr_GetApListBySsid (pAdmCtrl->pRsn->hSiteMgr,
1713 os_memoryFree(pAdmCtrl->hOs, pParam, sizeof(paramInfo_t));
1717 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_buildAndSendPMKIDCandList - Entry \n");
1722 for (apIndex=0; apIndex<pAdmCtrl->pmkid_cache.entriesNumber; apIndex++)
1724 pAdmCtrl->pmkid_cache.pmkidTbl[apIndex].preAuthenticate = TI_FALSE;
1751 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_buildAndSendPMKIDCandList - rsnIE-hdr.eleId = %x \n", rsnIE->hdr[0]);
1755 status = admCtrlWpa2_parseIe(pAdmCtrl, (TI_UINT8 *)rsnIE, &wpa2Data);
1757 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_buildAndSendPMKIDCandList - parseIe status = %d \n", status);
1763 preAuthStatus = admCtrlWpa2_getPreAuthStatus(pAdmCtrl, &apList->bssidList[apIndex].bssId, &cacheIndex);
1765 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "admCtrlWpa2_buildAndSendPMKIDCandList, preAuthStatus=%d \n", preAuthStatus);
1769 pAdmCtrl->pmkid_cache.pmkidTbl[cacheIndex].preAuthenticate = TI_TRUE;
1775 if(pAdmCtrl->preAuthSupport && (wpa2Data.preAuthentication))
1786 TRACE8(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: Candidate [%d] is %.2X-%.2X-%.2X-%.2X-%.2X-%.2X , Flags=0x%x\n", candIndex, bssidMac[0], bssidMac[1], bssidMac[2], bssidMac[3], bssidMac[4], bssidMac[5], pCandList->CandidateList[candIndex].Flags);
1793 for (apIndex=0; apIndex<pAdmCtrl->pmkid_cache.entriesNumber; apIndex++)
1795 if (!pAdmCtrl->pmkid_cache.pmkidTbl[apIndex].preAuthenticate)
1798 pAdmCtrl->pmkid_cache.pmkidTbl[apIndex].bssId);
1819 pAdmCtrl->numberOfPreAuthCandidates = candIndex;
1822 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION , "Starting PREAUTH timer (%d mSec)\n",pAdmCtrl->preAuthTimeout*candIndex);
1823 tmr_StartTimer (pAdmCtrl->hPreAuthTimerWpa2,
1825 (TI_HANDLE)pAdmCtrl,
1826 pAdmCtrl->preAuthTimeout * candIndex,
1829 EvHandlerSendEvent(pAdmCtrl->hEvHandler, IPC_EVENT_MEDIA_SPECIFIC,
1833 admCtrl_notifyPreAuthStatus (pAdmCtrl, RSN_PRE_AUTH_START);
1834 TRACE1(pAdmCtrl->hReport, REPORT_SEVERITY_INFORMATION, "RSN: PMKID Candidate List with %d entries has been built and sent for ssid \n", candIndex);
1853 * I - pAdmCtrl - pointer to admCtrl context
1862 static TI_BOOL admCtrlWpa2_getPreAuthStatus(admCtrl_t *pAdmCtrl, TMacAddr *givenAP, TI_UINT8 *cacheIndex)
1866 if (admCtrlWpa2_findPMKID (pAdmCtrl, givenAP,
1875 static TI_STATUS admCtrlWpa2_startPreAuth(admCtrl_t *pAdmCtrl, TBssidList4PreAuth *pBssidList)
1878 admCtrlWpa2_buildAndSendPMKIDCandList (pAdmCtrl, pBssidList);
1882 static TI_STATUS admCtrlWpa2_get802_1x_AkmExists (admCtrl_t *pAdmCtrl, TI_BOOL *wpa_802_1x_AkmExists)
1884 *wpa_802_1x_AkmExists = pAdmCtrl->wpaAkmExists;
1898 admCtrl_t *pAdmCtrl = (admCtrl_t *)hAdmCtrl;
1899 TRACE0(pAdmCtrl->hReport, REPORT_SEVERITY_WARNING , "admCtrlWpa2_preAuthTimerExpire: PREAUTH EXPIRED !!!!!!!!");
1901 admCtrl_notifyPreAuthStatus (pAdmCtrl, RSN_PRE_AUTH_END);
1902 pAdmCtrl->numberOfPreAuthCandidates = 0;