diff options
Diffstat (limited to 'wl1271/stad/src/Connection_Managment/admCtrlWep.c')
-rw-r--r-- | wl1271/stad/src/Connection_Managment/admCtrlWep.c | 350 |
1 files changed, 0 insertions, 350 deletions
diff --git a/wl1271/stad/src/Connection_Managment/admCtrlWep.c b/wl1271/stad/src/Connection_Managment/admCtrlWep.c deleted file mode 100644 index 36732c0..0000000 --- a/wl1271/stad/src/Connection_Managment/admCtrlWep.c +++ /dev/null @@ -1,350 +0,0 @@ -/* - * admCtrlWep.c - * - * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * * Neither the name Texas Instruments nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** \file admCtrlWep.c - * \brief Admission control API implimentation - * - * \see admCtrl.h - */ - -/**************************************************************************** - * * - * MODULE: Admission Control * - * PURPOSE: Admission Control Module API * - * * - ****************************************************************************/ - -#define __FILE_ID__ FILE_ID_18 -#include "osApi.h" -#include "paramOut.h" -#include "fsm.h" -#include "report.h" -#include "mlmeApi.h" -#include "DataCtrl_Api.h" -#include "rsnApi.h" -#include "admCtrl.h" -#include "rsn.h" -#include "admCtrl.h" -#ifdef XCC_MODULE_INCLUDED -#include "admCtrlWpa.h" -#include "admCtrlXCC.h" -#endif -#include "TWDriver.h" - - -/* Constants */ - -/* Enumerations */ - -/* Typedefs */ - -/* Structures */ - -/* External data definitions */ - -/* Local functions definitions */ - -/* Global variables */ - -/* Function prototypes */ -TI_STATUS admCtrlWep_getInfoElement(admCtrl_t *pAdmCtrl, TI_UINT8 *pIe, TI_UINT32 *pLength); - -TI_STATUS admCtrlWep_setSite(admCtrl_t *pAdmCtrl, TRsnData *pRsnData, TI_UINT8 *pAssocIe, TI_UINT8 *pAssocIeLen); - -TI_STATUS admCtrlWep_evalSite(admCtrl_t *pAdmCtrl, TRsnData *pRsnData, TRsnSiteParams *pRsnSiteParams, TI_UINT32 *pEvaluation); - - -/** -* -* admCtrlWep_config - Configure XCC admission control. -* -* \b Description: -* -* Configure XCC admission control. -* -* \b ARGS: -* -* I - pAdmCtrl - context \n -* -* \b RETURNS: -* -* TI_OK on success, TI_NOK on failure. -* -* \sa -*/ -TI_STATUS admCtrlWep_config(admCtrl_t *pAdmCtrl) -{ - TI_STATUS status; - TRsnPaeConfig paeConfig; - - - /* set admission control parameters */ - pAdmCtrl->externalAuthMode = (EExternalAuthMode)pAdmCtrl->authSuite; - if ((pAdmCtrl->unicastSuite != TWD_CIPHER_WEP) && - (pAdmCtrl->unicastSuite != TWD_CIPHER_CKIP)) - { - pAdmCtrl->unicastSuite = TWD_CIPHER_WEP; - } - - if ((pAdmCtrl->broadcastSuite != TWD_CIPHER_WEP) && - (pAdmCtrl->broadcastSuite != TWD_CIPHER_CKIP)) - { - pAdmCtrl->broadcastSuite = TWD_CIPHER_WEP; - } - - /* set callback functions (API) */ - pAdmCtrl->getInfoElement = admCtrlWep_getInfoElement; - pAdmCtrl->setSite = admCtrlWep_setSite; - pAdmCtrl->evalSite = admCtrlWep_evalSite; - pAdmCtrl->getPreAuthStatus = admCtrl_nullGetPreAuthStatus; - pAdmCtrl->startPreAuth = admCtrl_nullStartPreAuth; - pAdmCtrl->get802_1x_AkmExists = admCtrl_nullGet802_1x_AkmExists; - - - - pAdmCtrl->keyMngSuite = RSN_KEY_MNG_802_1X; - - /* set PAE parametrs */ - paeConfig.authProtocol = pAdmCtrl->externalAuthMode; - paeConfig.unicastSuite = pAdmCtrl->unicastSuite; - paeConfig.broadcastSuite = pAdmCtrl->broadcastSuite; - paeConfig.keyExchangeProtocol = pAdmCtrl->keyMngSuite; - /* set default PAE configuration */ - status = pAdmCtrl->pRsn->setPaeConfig(pAdmCtrl->pRsn, &paeConfig); - - return status; -} - - -/** -* -* admCtrlWep_getInfoElement - Build the current information element. -* -* \b Description: -* -* Build the current information element. -* -* \b ARGS: -* -* I - pAdmCtrl - context \n -* I - pIe - IE buffer \n -* I - pLength - length of IE \n -* -* \b RETURNS: -* -* TI_OK on success, TI_NOK on failure. -* -* \sa -*/ -TI_STATUS admCtrlWep_getInfoElement(admCtrl_t *pAdmCtrl, TI_UINT8 *pIe, TI_UINT32 *pLength) -{ - - if ((pAdmCtrl==NULL) || (pLength==NULL)) - { - return TI_NOK; - } - *pLength = 0; - return TI_OK; - -} -/** -* -* admCtrlWep_setSite - Set current primary site parameters for registration. -* -* \b Description: -* -* Set current primary site parameters for registration. -* -* \b ARGS: -* -* I - pAdmCtrl - context \n -* I - pRsnData - site's RSN data \n -* O - pAssocIe - result IE of evaluation \n -* O - pAssocIeLen - length of result IE of evaluation \n -* -* \b RETURNS: -* -* TI_OK on site is aproved, TI_NOK on site is rejected. -* -* \sa -*/ -TI_STATUS admCtrlWep_setSite(admCtrl_t *pAdmCtrl, TRsnData *pRsnData, TI_UINT8 *pAssocIe, TI_UINT8 *pAssocIeLen) -{ - TI_STATUS status; - paramInfo_t param; - TTwdParamInfo tTwdParam; - EAuthSuite authSuite; - -#ifdef XCC_MODULE_INCLUDED - if (mlmeParser_ParseIeBuffer (pAdmCtrl->hMlme, pRsnData->pIe, pRsnData->ieLen, XCC_EXT_1_IE_ID, NULL, NULL, 0)) - { - pAdmCtrl->XCCSupport = TI_TRUE; - return (admCtrlXCC_setSite(pAdmCtrl, pRsnData, pAssocIe, pAssocIeLen)); - } -#endif - - - pAdmCtrl->XCCSupport = TI_FALSE; - pAdmCtrl->unicastSuite = TWD_CIPHER_WEP; - pAdmCtrl->broadcastSuite = TWD_CIPHER_WEP; - - admCtrlWep_config(pAdmCtrl); - - authSuite = pAdmCtrl->authSuite; - - /* Config the default keys */ - if ((authSuite == RSN_AUTH_SHARED_KEY) || (authSuite == RSN_AUTH_AUTO_SWITCH)) - { /* Configure Security status in HAL */ - tTwdParam.paramType = TWD_RSN_SECURITY_MODE_PARAM_ID; - tTwdParam.content.rsnEncryptionStatus = (ECipherSuite)TWD_CIPHER_WEP; - status = TWD_SetParam(pAdmCtrl->pRsn->hTWD, &tTwdParam); - /* Configure the keys in HAL */ - rsn_setDefaultKeys(pAdmCtrl->pRsn); - } - - - /* Now we configure the MLME module with the 802.11 legacy authentication suite, - THe MLME will configure later the authentication module */ - param.paramType = MLME_LEGACY_TYPE_PARAM; -#ifdef XCC_MODULE_INCLUDED - if (pAdmCtrl->networkEapMode!=OS_XCC_NETWORK_EAP_OFF) - { - param.content.mlmeLegacyAuthType = AUTH_LEGACY_RESERVED1; - } - else -#endif - { - switch (authSuite) - { - case RSN_AUTH_OPEN: - param.content.mlmeLegacyAuthType = AUTH_LEGACY_OPEN_SYSTEM; - break; - - case RSN_AUTH_SHARED_KEY: - param.content.mlmeLegacyAuthType = AUTH_LEGACY_SHARED_KEY; - break; - - case RSN_AUTH_AUTO_SWITCH: - param.content.mlmeLegacyAuthType = AUTH_LEGACY_AUTO_SWITCH; - TRACE0(pAdmCtrl->hReport , REPORT_SEVERITY_INFORMATION, "WEP admCtrl mlme_setParam, RSN_AUTH_AUTO_SWITCH\n"); - break; - - default: - return TI_NOK; - } - } - - status = mlme_setParam(pAdmCtrl->hMlme, ¶m); - if (status != TI_OK) - { - return status; - } - - param.paramType = RX_DATA_EAPOL_DESTINATION_PARAM; - param.content.rxDataEapolDestination = OS_ABS_LAYER; - status = rxData_setParam(pAdmCtrl->hRx, ¶m); - if (status != TI_OK) - { - return status; - } - - /* Configure Security status in HAL */ - tTwdParam.paramType = TWD_RSN_SECURITY_MODE_PARAM_ID; - tTwdParam.content.rsnEncryptionStatus = (ECipherSuite)TWD_CIPHER_WEP; - status = TWD_SetParam(pAdmCtrl->pRsn->hTWD, &tTwdParam); - - return status; - -} - -/** -* -* admCtrlWep_evalSite - Evaluate site for registration. -* -* \b Description: -* -* evaluate site RSN capabilities against the station's cap. -* If the BSS type is infrastructure, the station matches the site only if it's WEP status is same as the site -* In IBSS, it does not matter -* -* \b ARGS: -* -* I - pAdmCtrl - Context \n -* I - pRsnData - site's RSN data \n -* O - pEvaluation - Result of evaluation \n -* -* \b RETURNS: -* -* TI_OK -* -* \sa -*/ -TI_STATUS admCtrlWep_evalSite(admCtrl_t *pAdmCtrl, TRsnData *pRsnData, TRsnSiteParams *pRsnSiteParams, TI_UINT32 *pEvaluation) -{ - *pEvaluation = 0; - - if (pRsnData==NULL) - { - return TI_NOK; - } - pAdmCtrl->setSiteFirst = TI_FALSE; - -#ifdef XCC_MODULE_INCLUDED - if (admCtrlXCC_evalSite(pAdmCtrl, pRsnData, pRsnSiteParams, pEvaluation, &pAdmCtrl->XCCSupport) != TI_OK) - { - return TI_NOK; - } -#else - pAdmCtrl->XCCSupport = TI_FALSE; -#endif /*XCC_MODULE_INCLUDED*/ - if (!pAdmCtrl->XCCSupport) - { /* WEP only */ - *pEvaluation = 1; - } - - /* Check privacy bit if not in mixed mode */ - if (!pAdmCtrl->mixedMode) - { /* There's no mixed mode, so make sure that the privacy Bit matches the privacy mode*/ - if (!pRsnData->privacy) - { - *pEvaluation = 0; - return TI_NOK; - } - } - - return TI_OK; -} - - - - |