Staging: vt665x: Remove umem.h Part 2
Remove references to umem.h macros and refer directly to memcpy functions. Delete the include file. Signed-off-by: Jim Lieb <lieb@canonical.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
51b6d9c299
commit
3e362598fd
|
@ -33,7 +33,6 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "umem.h"
|
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
#include "80211hdr.h"
|
#include "80211hdr.h"
|
||||||
|
|
||||||
|
@ -278,7 +277,7 @@ int ii,jj,kk;
|
||||||
pbyPayload = pbyIV + 8; //IV-length
|
pbyPayload = pbyIV + 8; //IV-length
|
||||||
|
|
||||||
abyNonce[0] = 0x00; //now is 0, if Qos here will be priority
|
abyNonce[0] = 0x00; //now is 0, if Qos here will be priority
|
||||||
MEMvCopy(&(abyNonce[1]), pMACHeader->abyAddr2, U_ETHER_ADDR_LEN);
|
memcpy(&(abyNonce[1]), pMACHeader->abyAddr2, U_ETHER_ADDR_LEN);
|
||||||
abyNonce[7] = pbyIV[7];
|
abyNonce[7] = pbyIV[7];
|
||||||
abyNonce[8] = pbyIV[6];
|
abyNonce[8] = pbyIV[6];
|
||||||
abyNonce[9] = pbyIV[5];
|
abyNonce[9] = pbyIV[5];
|
||||||
|
@ -288,7 +287,7 @@ int ii,jj,kk;
|
||||||
|
|
||||||
//MIC_IV
|
//MIC_IV
|
||||||
MIC_IV[0] = 0x59;
|
MIC_IV[0] = 0x59;
|
||||||
MEMvCopy(&(MIC_IV[1]), &(abyNonce[0]), 13);
|
memcpy(&(MIC_IV[1]), &(abyNonce[0]), 13);
|
||||||
MIC_IV[14] = (BYTE)(wPayloadSize >> 8);
|
MIC_IV[14] = (BYTE)(wPayloadSize >> 8);
|
||||||
MIC_IV[15] = (BYTE)(wPayloadSize & 0xff);
|
MIC_IV[15] = (BYTE)(wPayloadSize & 0xff);
|
||||||
|
|
||||||
|
@ -300,16 +299,16 @@ int ii,jj,kk;
|
||||||
byTmp = (BYTE)(pMACHeader->wFrameCtl >> 8);
|
byTmp = (BYTE)(pMACHeader->wFrameCtl >> 8);
|
||||||
byTmp &= 0x87;
|
byTmp &= 0x87;
|
||||||
MIC_HDR1[3] = byTmp | 0x40;
|
MIC_HDR1[3] = byTmp | 0x40;
|
||||||
MEMvCopy(&(MIC_HDR1[4]), pMACHeader->abyAddr1, U_ETHER_ADDR_LEN);
|
memcpy(&(MIC_HDR1[4]), pMACHeader->abyAddr1, U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(MIC_HDR1[10]), pMACHeader->abyAddr2, U_ETHER_ADDR_LEN);
|
memcpy(&(MIC_HDR1[10]), pMACHeader->abyAddr2, U_ETHER_ADDR_LEN);
|
||||||
|
|
||||||
//MIC_HDR2
|
//MIC_HDR2
|
||||||
MEMvCopy(&(MIC_HDR2[0]), pMACHeader->abyAddr3, U_ETHER_ADDR_LEN);
|
memcpy(&(MIC_HDR2[0]), pMACHeader->abyAddr3, U_ETHER_ADDR_LEN);
|
||||||
byTmp = (BYTE)(pMACHeader->wSeqCtl & 0xff);
|
byTmp = (BYTE)(pMACHeader->wSeqCtl & 0xff);
|
||||||
MIC_HDR2[6] = byTmp & 0x0f;
|
MIC_HDR2[6] = byTmp & 0x0f;
|
||||||
MIC_HDR2[7] = 0;
|
MIC_HDR2[7] = 0;
|
||||||
if ( bA4 ) {
|
if ( bA4 ) {
|
||||||
MEMvCopy(&(MIC_HDR2[8]), pMACHeader->abyAddr4, U_ETHER_ADDR_LEN);
|
memcpy(&(MIC_HDR2[8]), pMACHeader->abyAddr4, U_ETHER_ADDR_LEN);
|
||||||
} else {
|
} else {
|
||||||
MIC_HDR2[8] = 0x00;
|
MIC_HDR2[8] = 0x00;
|
||||||
MIC_HDR2[9] = 0x00;
|
MIC_HDR2[9] = 0x00;
|
||||||
|
@ -334,7 +333,7 @@ int ii,jj,kk;
|
||||||
|
|
||||||
wCnt = 1;
|
wCnt = 1;
|
||||||
abyCTRPLD[0] = 0x01;
|
abyCTRPLD[0] = 0x01;
|
||||||
MEMvCopy(&(abyCTRPLD[1]), &(abyNonce[0]), 13);
|
memcpy(&(abyCTRPLD[1]), &(abyNonce[0]), 13);
|
||||||
|
|
||||||
for(jj=wPayloadSize; jj>16; jj=jj-16) {
|
for(jj=wPayloadSize; jj>16; jj=jj-16) {
|
||||||
|
|
||||||
|
@ -351,13 +350,13 @@ int ii,jj,kk;
|
||||||
}
|
}
|
||||||
AESv128(pbyRxKey,abyTmp,abyMIC);
|
AESv128(pbyRxKey,abyTmp,abyMIC);
|
||||||
|
|
||||||
MEMvCopy(pbyPayload, abyPlainText, 16);
|
memcpy(pbyPayload, abyPlainText, 16);
|
||||||
wCnt++;
|
wCnt++;
|
||||||
pbyPayload += 16;
|
pbyPayload += 16;
|
||||||
} //for wPayloadSize
|
} //for wPayloadSize
|
||||||
|
|
||||||
//last payload
|
//last payload
|
||||||
MEMvCopy(&(abyLastCipher[0]), pbyPayload, jj);
|
memcpy(&(abyLastCipher[0]), pbyPayload, jj);
|
||||||
for ( ii=jj; ii<16; ii++ ) {
|
for ( ii=jj; ii<16; ii++ ) {
|
||||||
abyLastCipher[ii] = 0x00;
|
abyLastCipher[ii] = 0x00;
|
||||||
}
|
}
|
||||||
|
@ -369,7 +368,7 @@ int ii,jj,kk;
|
||||||
for ( kk=0; kk<16; kk++ ) {
|
for ( kk=0; kk<16; kk++ ) {
|
||||||
abyPlainText[kk] = abyTmp[kk] ^ abyLastCipher[kk];
|
abyPlainText[kk] = abyTmp[kk] ^ abyLastCipher[kk];
|
||||||
}
|
}
|
||||||
MEMvCopy(pbyPayload, abyPlainText, jj);
|
memcpy(pbyPayload, abyPlainText, jj);
|
||||||
pbyPayload += jj;
|
pbyPayload += jj;
|
||||||
|
|
||||||
//for MIC calculation
|
//for MIC calculation
|
||||||
|
@ -394,7 +393,7 @@ int ii,jj,kk;
|
||||||
//=>above is the dec-MIC from packet
|
//=>above is the dec-MIC from packet
|
||||||
//--------------------------------------------
|
//--------------------------------------------
|
||||||
|
|
||||||
if ( MEMEqualMemory(abyMIC,abyTmp,8) ) {
|
if ( !memcmp(abyMIC,abyTmp,8) ) {
|
||||||
return TRUE;
|
return TRUE;
|
||||||
} else {
|
} else {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
|
@ -55,7 +55,6 @@
|
||||||
#include "card.h"
|
#include "card.h"
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "wpa2.h"
|
#include "wpa2.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "tbit.h"
|
#include "tbit.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
|
@ -170,7 +169,7 @@ BSSpSearchBSSList(
|
||||||
if (IS_ETH_ADDRESS_EQUAL(pCurrBSS->abyBSSID, pbyBSSID)) {
|
if (IS_ETH_ADDRESS_EQUAL(pCurrBSS->abyBSSID, pbyBSSID)) {
|
||||||
if (pSSID != NULL) {
|
if (pSSID != NULL) {
|
||||||
// compare ssid
|
// compare ssid
|
||||||
if (MEMEqualMemory(pSSID->abySSID,
|
if ( !memcmp(pSSID->abySSID,
|
||||||
((PWLAN_IE_SSID)pCurrBSS->abySSID)->abySSID,
|
((PWLAN_IE_SSID)pCurrBSS->abySSID)->abySSID,
|
||||||
pSSID->len)) {
|
pSSID->len)) {
|
||||||
if ((pMgmt->eConfigMode == WMAC_CONFIG_AUTO) ||
|
if ((pMgmt->eConfigMode == WMAC_CONFIG_AUTO) ||
|
||||||
|
@ -208,7 +207,7 @@ BSSpSearchBSSList(
|
||||||
|
|
||||||
if (pSSID != NULL) {
|
if (pSSID != NULL) {
|
||||||
// matched SSID
|
// matched SSID
|
||||||
if (!MEMEqualMemory(pSSID->abySSID,
|
if (memcmp(pSSID->abySSID,
|
||||||
((PWLAN_IE_SSID)pCurrBSS->abySSID)->abySSID,
|
((PWLAN_IE_SSID)pCurrBSS->abySSID)->abySSID,
|
||||||
pSSID->len) ||
|
pSSID->len) ||
|
||||||
(pSSID->len != ((PWLAN_IE_SSID)pCurrBSS->abySSID)->len)) {
|
(pSSID->len != ((PWLAN_IE_SSID)pCurrBSS->abySSID)->len)) {
|
||||||
|
@ -275,8 +274,8 @@ pDevice->bSameBSSMaxNum = jj;
|
||||||
pSelect->bSelected = TRUE;
|
pSelect->bSelected = TRUE;
|
||||||
if (pDevice->bRoaming == FALSE) {
|
if (pDevice->bRoaming == FALSE) {
|
||||||
// Einsn Add @20070907
|
// Einsn Add @20070907
|
||||||
ZERO_MEMORY(pbyDesireSSID, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
memset(pbyDesireSSID, 0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
||||||
MEMvCopy(pbyDesireSSID,pCurrBSS->abySSID,WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1) ;
|
memcpy(pbyDesireSSID,pCurrBSS->abySSID,WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
return(pSelect);
|
return(pSelect);
|
||||||
|
@ -518,7 +517,7 @@ BSSbInsertToBSSList (
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((bIs802_1x == TRUE) && (pSSID->len == ((PWLAN_IE_SSID)pMgmt->abyDesireSSID)->len) &&
|
if ((bIs802_1x == TRUE) && (pSSID->len == ((PWLAN_IE_SSID)pMgmt->abyDesireSSID)->len) &&
|
||||||
(MEMEqualMemory(pSSID->abySSID, ((PWLAN_IE_SSID)pMgmt->abyDesireSSID)->abySSID, pSSID->len))) {
|
( !memcmp(pSSID->abySSID, ((PWLAN_IE_SSID)pMgmt->abyDesireSSID)->abySSID, pSSID->len))) {
|
||||||
|
|
||||||
bAdd_PMKID_Candidate((HANDLE)pDevice, pBSSList->abyBSSID, &pBSSList->sRSNCapObj);
|
bAdd_PMKID_Candidate((HANDLE)pDevice, pBSSList->abyBSSID, &pBSSList->sRSNCapObj);
|
||||||
|
|
||||||
|
@ -587,7 +586,7 @@ BSSbInsertToBSSList (
|
||||||
pBSSList->uIELength = uIELength;
|
pBSSList->uIELength = uIELength;
|
||||||
if (pBSSList->uIELength > WLAN_BEACON_FR_MAXLEN)
|
if (pBSSList->uIELength > WLAN_BEACON_FR_MAXLEN)
|
||||||
pBSSList->uIELength = WLAN_BEACON_FR_MAXLEN;
|
pBSSList->uIELength = WLAN_BEACON_FR_MAXLEN;
|
||||||
MEMvCopy(pBSSList->abyIEs, pbyIEs, pBSSList->uIELength);
|
memcpy(pBSSList->abyIEs, pbyIEs, pBSSList->uIELength);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,7 +56,6 @@
|
||||||
#include "key.h"
|
#include "key.h"
|
||||||
#include "rc4.h"
|
#include "rc4.h"
|
||||||
#include "country.h"
|
#include "country.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "datarate.h"
|
#include "datarate.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
|
|
|
@ -37,7 +37,6 @@
|
||||||
#include "country.h"
|
#include "country.h"
|
||||||
#include "channel.h"
|
#include "channel.h"
|
||||||
#include "rf.h"
|
#include "rf.h"
|
||||||
#include "umem.h"
|
|
||||||
|
|
||||||
/*--------------------- Static Definitions -------------------------*/
|
/*--------------------- Static Definitions -------------------------*/
|
||||||
static int msglevel =MSG_LEVEL_INFO;
|
static int msglevel =MSG_LEVEL_INFO;
|
||||||
|
@ -433,7 +432,7 @@ CHvChannelGetList (
|
||||||
if (uCountryCodeIdx >= CCODE_MAX) {
|
if (uCountryCodeIdx >= CCODE_MAX) {
|
||||||
return (FALSE);
|
return (FALSE);
|
||||||
}
|
}
|
||||||
MEMvCopy(pbyChannelTable, ChannelRuleTab[uCountryCodeIdx].bChannelIdxList, CB_MAX_CHANNEL);
|
memcpy(pbyChannelTable, ChannelRuleTab[uCountryCodeIdx].bChannelIdxList, CB_MAX_CHANNEL);
|
||||||
return (TRUE);
|
return (TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -39,7 +39,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
|
|
||||||
/*--------------------- Static Definitions -------------------------*/
|
/*--------------------- Static Definitions -------------------------*/
|
||||||
|
|
|
@ -45,7 +45,6 @@
|
||||||
#include "bssdb.h"
|
#include "bssdb.h"
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "baseband.h"
|
#include "baseband.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "michael.h"
|
#include "michael.h"
|
||||||
#include "tkip.h"
|
#include "tkip.h"
|
||||||
#include "tcrc.h"
|
#include "tcrc.h"
|
||||||
|
@ -941,7 +940,7 @@ RXbBulkInProcessData (
|
||||||
RSC = dwRxTSC47_16;
|
RSC = dwRxTSC47_16;
|
||||||
RSC <<= 16;
|
RSC <<= 16;
|
||||||
RSC += wRxTSC15_0;
|
RSC += wRxTSC15_0;
|
||||||
MEMvCopy(&(pKey->KeyRSC), &RSC, sizeof(QWORD));
|
memcpy(&(pKey->KeyRSC), &RSC, sizeof(QWORD));
|
||||||
|
|
||||||
if ( (pDevice->sMgmtObj.eCurrMode == WMAC_MODE_ESS_STA) &&
|
if ( (pDevice->sMgmtObj.eCurrMode == WMAC_MODE_ESS_STA) &&
|
||||||
(pDevice->sMgmtObj.eCurrState == WMAC_STATE_ASSOC)) {
|
(pDevice->sMgmtObj.eCurrState == WMAC_STATE_ASSOC)) {
|
||||||
|
@ -1239,8 +1238,8 @@ static BOOL s_bHandleRxEncryption (
|
||||||
// 2. WEP 256
|
// 2. WEP 256
|
||||||
|
|
||||||
PayloadLen -= (WLAN_HDR_ADDR3_LEN + 4 + 4); // 24 is 802.11 header,4 is IV, 4 is crc
|
PayloadLen -= (WLAN_HDR_ADDR3_LEN + 4 + 4); // 24 is 802.11 header,4 is IV, 4 is crc
|
||||||
MEMvCopy(pDevice->abyPRNG, pbyIV, 3);
|
memcpy(pDevice->abyPRNG, pbyIV, 3);
|
||||||
MEMvCopy(pDevice->abyPRNG + 3, pKey->abyKey, pKey->uKeyLength);
|
memcpy(pDevice->abyPRNG + 3, pKey->abyKey, pKey->uKeyLength);
|
||||||
rc4_init(&pDevice->SBox, pDevice->abyPRNG, pKey->uKeyLength + 3);
|
rc4_init(&pDevice->SBox, pDevice->abyPRNG, pKey->uKeyLength + 3);
|
||||||
rc4_encrypt(&pDevice->SBox, pbyIV+4, pbyIV+4, PayloadLen);
|
rc4_encrypt(&pDevice->SBox, pbyIV+4, pbyIV+4, PayloadLen);
|
||||||
|
|
||||||
|
@ -1350,8 +1349,8 @@ static BOOL s_bHostWepRxEncryption (
|
||||||
// 3. NotOnFly
|
// 3. NotOnFly
|
||||||
|
|
||||||
PayloadLen -= (WLAN_HDR_ADDR3_LEN + 4 + 4); // 24 is 802.11 header,4 is IV, 4 is crc
|
PayloadLen -= (WLAN_HDR_ADDR3_LEN + 4 + 4); // 24 is 802.11 header,4 is IV, 4 is crc
|
||||||
MEMvCopy(pDevice->abyPRNG, pbyIV, 3);
|
memcpy(pDevice->abyPRNG, pbyIV, 3);
|
||||||
MEMvCopy(pDevice->abyPRNG + 3, pKey->abyKey, pKey->uKeyLength);
|
memcpy(pDevice->abyPRNG + 3, pKey->abyKey, pKey->uKeyLength);
|
||||||
rc4_init(&pDevice->SBox, pDevice->abyPRNG, pKey->uKeyLength + 3);
|
rc4_init(&pDevice->SBox, pDevice->abyPRNG, pKey->uKeyLength + 3);
|
||||||
rc4_encrypt(&pDevice->SBox, pbyIV+4, pbyIV+4, PayloadLen);
|
rc4_encrypt(&pDevice->SBox, pbyIV+4, pbyIV+4, PayloadLen);
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,6 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "umem.h"
|
|
||||||
#include "firmware.h"
|
#include "firmware.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
|
|
|
@ -39,7 +39,6 @@
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "power.h"
|
#include "power.h"
|
||||||
#include "bssdb.h"
|
#include "bssdb.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "usbpipe.h"
|
#include "usbpipe.h"
|
||||||
|
|
||||||
/*--------------------- Static Definitions -------------------------*/
|
/*--------------------- Static Definitions -------------------------*/
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "card.h"
|
#include "card.h"
|
||||||
#include "hostap.h"
|
#include "hostap.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "wpactl.h"
|
#include "wpactl.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
|
|
|
@ -36,7 +36,6 @@
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "card.h"
|
#include "card.h"
|
||||||
#include "hostap.h"
|
#include "hostap.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "power.h"
|
#include "power.h"
|
||||||
#include "rf.h"
|
#include "rf.h"
|
||||||
|
|
||||||
|
|
|
@ -39,7 +39,6 @@
|
||||||
#include "tmacro.h"
|
#include "tmacro.h"
|
||||||
#include "tbit.h"
|
#include "tbit.h"
|
||||||
#include "key.h"
|
#include "key.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
|
@ -278,7 +277,7 @@ BOOL KeybSetKey (
|
||||||
pKey->uKeyLength = uKeyLength;
|
pKey->uKeyLength = uKeyLength;
|
||||||
pKey->dwKeyIndex = dwKeyIndex;
|
pKey->dwKeyIndex = dwKeyIndex;
|
||||||
pKey->byCipherSuite = byKeyDecMode;
|
pKey->byCipherSuite = byKeyDecMode;
|
||||||
MEMvCopy(pKey->abyKey, pbyKey, uKeyLength);
|
memcpy(pKey->abyKey, pbyKey, uKeyLength);
|
||||||
if (byKeyDecMode == KEY_CTL_WEP) {
|
if (byKeyDecMode == KEY_CTL_WEP) {
|
||||||
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
||||||
pKey->abyKey[15] &= 0x7F;
|
pKey->abyKey[15] &= 0x7F;
|
||||||
|
@ -289,10 +288,10 @@ BOOL KeybSetKey (
|
||||||
|
|
||||||
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
||||||
// RSC set by NIC
|
// RSC set by NIC
|
||||||
ZERO_MEMORY(&(pKey->KeyRSC), sizeof(QWORD));
|
memset(&(pKey->KeyRSC), 0, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
memcpy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
pKey->dwTSC47_16 = 0;
|
pKey->dwTSC47_16 = 0;
|
||||||
pKey->wTSC15_0 = 0;
|
pKey->wTSC15_0 = 0;
|
||||||
|
@ -314,7 +313,7 @@ BOOL KeybSetKey (
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (j < (MAX_KEY_TABLE-1)) {
|
if (j < (MAX_KEY_TABLE-1)) {
|
||||||
MEMvCopy(pTable->KeyTable[j].abyBSSID,pbyBSSID,U_ETHER_ADDR_LEN);
|
memcpy(pTable->KeyTable[j].abyBSSID,pbyBSSID,U_ETHER_ADDR_LEN);
|
||||||
pTable->KeyTable[j].bInUse = TRUE;
|
pTable->KeyTable[j].bInUse = TRUE;
|
||||||
if ((dwKeyIndex & PAIRWISE_KEY) != 0) {
|
if ((dwKeyIndex & PAIRWISE_KEY) != 0) {
|
||||||
// Pairwise key
|
// Pairwise key
|
||||||
|
@ -343,7 +342,7 @@ BOOL KeybSetKey (
|
||||||
pKey->uKeyLength = uKeyLength;
|
pKey->uKeyLength = uKeyLength;
|
||||||
pKey->dwKeyIndex = dwKeyIndex;
|
pKey->dwKeyIndex = dwKeyIndex;
|
||||||
pKey->byCipherSuite = byKeyDecMode;
|
pKey->byCipherSuite = byKeyDecMode;
|
||||||
MEMvCopy(pKey->abyKey, pbyKey, uKeyLength);
|
memcpy(pKey->abyKey, pbyKey, uKeyLength);
|
||||||
if (byKeyDecMode == KEY_CTL_WEP) {
|
if (byKeyDecMode == KEY_CTL_WEP) {
|
||||||
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
||||||
pKey->abyKey[15] &= 0x7F;
|
pKey->abyKey[15] &= 0x7F;
|
||||||
|
@ -354,10 +353,10 @@ BOOL KeybSetKey (
|
||||||
|
|
||||||
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
||||||
// RSC set by NIC
|
// RSC set by NIC
|
||||||
ZERO_MEMORY(&(pKey->KeyRSC), sizeof(QWORD));
|
memset(&(pKey->KeyRSC), 0, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
memcpy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
pKey->dwTSC47_16 = 0;
|
pKey->dwTSC47_16 = 0;
|
||||||
pKey->wTSC15_0 = 0;
|
pKey->wTSC15_0 = 0;
|
||||||
|
@ -732,7 +731,7 @@ BOOL KeybSetDefaultKey (
|
||||||
pKey->uKeyLength = uKeyLength;
|
pKey->uKeyLength = uKeyLength;
|
||||||
pKey->dwKeyIndex = dwKeyIndex;
|
pKey->dwKeyIndex = dwKeyIndex;
|
||||||
pKey->byCipherSuite = byKeyDecMode;
|
pKey->byCipherSuite = byKeyDecMode;
|
||||||
MEMvCopy(pKey->abyKey, pbyKey, uKeyLength);
|
memcpy(pKey->abyKey, pbyKey, uKeyLength);
|
||||||
if (byKeyDecMode == KEY_CTL_WEP) {
|
if (byKeyDecMode == KEY_CTL_WEP) {
|
||||||
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
||||||
pKey->abyKey[15] &= 0x7F;
|
pKey->abyKey[15] &= 0x7F;
|
||||||
|
@ -744,9 +743,9 @@ BOOL KeybSetDefaultKey (
|
||||||
|
|
||||||
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
||||||
// RSC set by NIC
|
// RSC set by NIC
|
||||||
ZERO_MEMORY(&(pKey->KeyRSC), sizeof(QWORD));
|
memset(&(pKey->KeyRSC), 0, sizeof(QWORD));
|
||||||
} else {
|
} else {
|
||||||
MEMvCopy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
memcpy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
pKey->dwTSC47_16 = 0;
|
pKey->dwTSC47_16 = 0;
|
||||||
pKey->wTSC15_0 = 0;
|
pKey->wTSC15_0 = 0;
|
||||||
|
@ -832,7 +831,7 @@ BOOL KeybSetAllGroupKey (
|
||||||
pKey->uKeyLength = uKeyLength;
|
pKey->uKeyLength = uKeyLength;
|
||||||
pKey->dwKeyIndex = dwKeyIndex;
|
pKey->dwKeyIndex = dwKeyIndex;
|
||||||
pKey->byCipherSuite = byKeyDecMode;
|
pKey->byCipherSuite = byKeyDecMode;
|
||||||
MEMvCopy(pKey->abyKey, pbyKey, uKeyLength);
|
memcpy(pKey->abyKey, pbyKey, uKeyLength);
|
||||||
if (byKeyDecMode == KEY_CTL_WEP) {
|
if (byKeyDecMode == KEY_CTL_WEP) {
|
||||||
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
if (uKeyLength == WLAN_WEP40_KEYLEN)
|
||||||
pKey->abyKey[15] &= 0x7F;
|
pKey->abyKey[15] &= 0x7F;
|
||||||
|
@ -844,10 +843,10 @@ BOOL KeybSetAllGroupKey (
|
||||||
|
|
||||||
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
if ((dwKeyIndex & USE_KEYRSC) == 0) {
|
||||||
// RSC set by NIC
|
// RSC set by NIC
|
||||||
ZERO_MEMORY(&(pKey->KeyRSC), sizeof(QWORD));
|
memset(&(pKey->KeyRSC), 0, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
memcpy(&(pKey->KeyRSC), pKeyRSC, sizeof(QWORD));
|
||||||
}
|
}
|
||||||
pKey->dwTSC47_16 = 0;
|
pKey->dwTSC47_16 = 0;
|
||||||
pKey->wTSC15_0 = 0;
|
pKey->wTSC15_0 = 0;
|
||||||
|
|
|
@ -37,7 +37,6 @@
|
||||||
#include "ttype.h"
|
#include "ttype.h"
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
#include "tmacro.h"
|
#include "tmacro.h"
|
||||||
#include "umem.h"
|
|
||||||
|
|
||||||
/*--------------------- Export Definitions -------------------------*/
|
/*--------------------- Export Definitions -------------------------*/
|
||||||
|
|
||||||
|
|
|
@ -607,8 +607,8 @@ static BOOL device_init_registers(PSDevice pDevice, DEVICE_INIT_TYPE InitType)
|
||||||
CARDbSetMediaChannel(pDevice, pMgmt->uCurrChannel);
|
CARDbSetMediaChannel(pDevice, pMgmt->uCurrChannel);
|
||||||
|
|
||||||
// get Permanent network address
|
// get Permanent network address
|
||||||
MEMvCopy(pDevice->abyPermanentNetAddr,&(sInitRsp.byNetAddr[0]),6)
|
memcpy(pDevice->abyPermanentNetAddr,&(sInitRsp.byNetAddr[0]),6);
|
||||||
MEMvCopy(pDevice->abyCurrentNetAddr, pDevice->abyPermanentNetAddr, U_ETHER_ADDR_LEN);
|
memcpy(pDevice->abyCurrentNetAddr, pDevice->abyPermanentNetAddr, U_ETHER_ADDR_LEN);
|
||||||
|
|
||||||
// if exist SW network address, use SW network address.
|
// if exist SW network address, use SW network address.
|
||||||
|
|
||||||
|
|
|
@ -43,7 +43,6 @@
|
||||||
#include "tether.h"
|
#include "tether.h"
|
||||||
#include "mib.h"
|
#include "mib.h"
|
||||||
#include "wctl.h"
|
#include "wctl.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "baseband.h"
|
#include "baseband.h"
|
||||||
|
|
||||||
/*--------------------- Static Definitions -------------------------*/
|
/*--------------------- Static Definitions -------------------------*/
|
||||||
|
@ -75,7 +74,7 @@ static int msglevel =MSG_LEVEL_INFO;
|
||||||
void STAvClearAllCounter (PSStatCounter pStatistic)
|
void STAvClearAllCounter (PSStatCounter pStatistic)
|
||||||
{
|
{
|
||||||
// set memory to zero
|
// set memory to zero
|
||||||
ZERO_MEMORY(pStatistic, sizeof(SStatCounter));
|
memset(pStatistic, 0, sizeof(SStatCounter));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -388,7 +387,7 @@ STAvUpdateRDStatCounterEx (
|
||||||
// rx length
|
// rx length
|
||||||
pStatistic->dwCntRxFrmLength = cbFrameLength;
|
pStatistic->dwCntRxFrmLength = cbFrameLength;
|
||||||
// rx pattern, we just see 10 bytes for sample
|
// rx pattern, we just see 10 bytes for sample
|
||||||
MEMvCopy(pStatistic->abyCntRxPattern, (PBYTE)pbyBuffer, 10);
|
memcpy(pStatistic->abyCntRxPattern, (PBYTE)pbyBuffer, 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -543,7 +542,7 @@ void
|
||||||
STAvClear802_11Counter(PSDot11Counters p802_11Counter)
|
STAvClear802_11Counter(PSDot11Counters p802_11Counter)
|
||||||
{
|
{
|
||||||
// set memory to zero
|
// set memory to zero
|
||||||
ZERO_MEMORY(p802_11Counter, sizeof(SDot11Counters));
|
memset(p802_11Counter, 0, sizeof(SDot11Counters));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -31,8 +31,6 @@
|
||||||
#ifndef __MICHAEL_H__
|
#ifndef __MICHAEL_H__
|
||||||
#define __MICHAEL_H__
|
#define __MICHAEL_H__
|
||||||
|
|
||||||
#include "umem.h"
|
|
||||||
|
|
||||||
/*--------------------- Export Definitions -------------------------*/
|
/*--------------------- Export Definitions -------------------------*/
|
||||||
|
|
||||||
/*--------------------- Export Types ------------------------------*/
|
/*--------------------- Export Types ------------------------------*/
|
||||||
|
|
|
@ -45,7 +45,6 @@
|
||||||
#include "power.h"
|
#include "power.h"
|
||||||
#include "wcmd.h"
|
#include "wcmd.h"
|
||||||
#include "tbit.h"
|
#include "tbit.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "rxtx.h"
|
#include "rxtx.h"
|
||||||
#include "card.h"
|
#include "card.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
|
|
|
@ -53,7 +53,6 @@
|
||||||
#include "bssdb.h"
|
#include "bssdb.h"
|
||||||
#include "mac.h"
|
#include "mac.h"
|
||||||
#include "baseband.h"
|
#include "baseband.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "michael.h"
|
#include "michael.h"
|
||||||
#include "tkip.h"
|
#include "tkip.h"
|
||||||
#include "tcrc.h"
|
#include "tcrc.h"
|
||||||
|
@ -324,7 +323,7 @@ s_vSaveTxPktInfo(PSDevice pDevice, BYTE byPktNum, PBYTE pbyDestAddr, WORD wPktLe
|
||||||
|
|
||||||
pStatistic->abyTxPktInfo[byPktNum].wLength = wPktLength;
|
pStatistic->abyTxPktInfo[byPktNum].wLength = wPktLength;
|
||||||
pStatistic->abyTxPktInfo[byPktNum].wFIFOCtl = wFIFOCtl;
|
pStatistic->abyTxPktInfo[byPktNum].wFIFOCtl = wFIFOCtl;
|
||||||
MEMvCopy(pStatistic->abyTxPktInfo[byPktNum].abyDestAddr, pbyDestAddr, U_ETHER_ADDR_LEN);
|
memcpy(pStatistic->abyTxPktInfo[byPktNum].abyDestAddr, pbyDestAddr, U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -360,16 +359,16 @@ s_vFillTxKey (
|
||||||
|
|
||||||
if (pTransmitKey->byCipherSuite == KEY_CTL_WEP) {
|
if (pTransmitKey->byCipherSuite == KEY_CTL_WEP) {
|
||||||
if (pTransmitKey->uKeyLength == WLAN_WEP232_KEYLEN ){
|
if (pTransmitKey->uKeyLength == WLAN_WEP232_KEYLEN ){
|
||||||
MEMvCopy(pDevice->abyPRNG, (PBYTE)&(dwRevIVCounter), 3);
|
memcpy(pDevice->abyPRNG, (PBYTE)&(dwRevIVCounter), 3);
|
||||||
MEMvCopy(pDevice->abyPRNG+3, pTransmitKey->abyKey, pTransmitKey->uKeyLength);
|
memcpy(pDevice->abyPRNG+3, pTransmitKey->abyKey, pTransmitKey->uKeyLength);
|
||||||
} else {
|
} else {
|
||||||
MEMvCopy(pbyBuf, (PBYTE)&(dwRevIVCounter), 3);
|
memcpy(pbyBuf, (PBYTE)&(dwRevIVCounter), 3);
|
||||||
MEMvCopy(pbyBuf+3, pTransmitKey->abyKey, pTransmitKey->uKeyLength);
|
memcpy(pbyBuf+3, pTransmitKey->abyKey, pTransmitKey->uKeyLength);
|
||||||
if(pTransmitKey->uKeyLength == WLAN_WEP40_KEYLEN) {
|
if(pTransmitKey->uKeyLength == WLAN_WEP40_KEYLEN) {
|
||||||
MEMvCopy(pbyBuf+8, (PBYTE)&(dwRevIVCounter), 3);
|
memcpy(pbyBuf+8, (PBYTE)&(dwRevIVCounter), 3);
|
||||||
MEMvCopy(pbyBuf+11, pTransmitKey->abyKey, pTransmitKey->uKeyLength);
|
memcpy(pbyBuf+11, pTransmitKey->abyKey, pTransmitKey->uKeyLength);
|
||||||
}
|
}
|
||||||
MEMvCopy(pDevice->abyPRNG, pbyBuf, 16);
|
memcpy(pDevice->abyPRNG, pbyBuf, 16);
|
||||||
}
|
}
|
||||||
// Append IV after Mac Header
|
// Append IV after Mac Header
|
||||||
*pdwIV &= WEP_IV_MASK;//00000000 11111111 11111111 11111111
|
*pdwIV &= WEP_IV_MASK;//00000000 11111111 11111111 11111111
|
||||||
|
@ -386,9 +385,9 @@ s_vFillTxKey (
|
||||||
}
|
}
|
||||||
TKIPvMixKey(pTransmitKey->abyKey, pDevice->abyCurrentNetAddr,
|
TKIPvMixKey(pTransmitKey->abyKey, pDevice->abyCurrentNetAddr,
|
||||||
pTransmitKey->wTSC15_0, pTransmitKey->dwTSC47_16, pDevice->abyPRNG);
|
pTransmitKey->wTSC15_0, pTransmitKey->dwTSC47_16, pDevice->abyPRNG);
|
||||||
MEMvCopy(pbyBuf, pDevice->abyPRNG, 16);
|
memcpy(pbyBuf, pDevice->abyPRNG, 16);
|
||||||
// Make IV
|
// Make IV
|
||||||
MEMvCopy(pdwIV, pDevice->abyPRNG, 3);
|
memcpy(pdwIV, pDevice->abyPRNG, 3);
|
||||||
|
|
||||||
*(pbyIVHead+3) = (BYTE)(((pDevice->byKeyIndex << 6) & 0xc0) | 0x20); // 0x20 is ExtIV
|
*(pbyIVHead+3) = (BYTE)(((pDevice->byKeyIndex << 6) & 0xc0) | 0x20); // 0x20 is ExtIV
|
||||||
// Append IV&ExtIV after Mac Header
|
// Append IV&ExtIV after Mac Header
|
||||||
|
@ -400,7 +399,7 @@ s_vFillTxKey (
|
||||||
if (pTransmitKey->wTSC15_0 == 0) {
|
if (pTransmitKey->wTSC15_0 == 0) {
|
||||||
pTransmitKey->dwTSC47_16++;
|
pTransmitKey->dwTSC47_16++;
|
||||||
}
|
}
|
||||||
MEMvCopy(pbyBuf, pTransmitKey->abyKey, 16);
|
memcpy(pbyBuf, pTransmitKey->abyKey, 16);
|
||||||
|
|
||||||
// Make IV
|
// Make IV
|
||||||
*pdwIV = 0;
|
*pdwIV = 0;
|
||||||
|
@ -412,7 +411,7 @@ s_vFillTxKey (
|
||||||
//Fill MICHDR0
|
//Fill MICHDR0
|
||||||
*pMICHDR = 0x59;
|
*pMICHDR = 0x59;
|
||||||
*((PBYTE)(pMICHDR+1)) = 0; // TxPriority
|
*((PBYTE)(pMICHDR+1)) = 0; // TxPriority
|
||||||
MEMvCopy(pMICHDR+2, &(pMACHeader->abyAddr2[0]), 6);
|
memcpy(pMICHDR+2, &(pMACHeader->abyAddr2[0]), 6);
|
||||||
*((PBYTE)(pMICHDR+8)) = HIBYTE(HIWORD(pTransmitKey->dwTSC47_16));
|
*((PBYTE)(pMICHDR+8)) = HIBYTE(HIWORD(pTransmitKey->dwTSC47_16));
|
||||||
*((PBYTE)(pMICHDR+9)) = LOBYTE(HIWORD(pTransmitKey->dwTSC47_16));
|
*((PBYTE)(pMICHDR+9)) = LOBYTE(HIWORD(pTransmitKey->dwTSC47_16));
|
||||||
*((PBYTE)(pMICHDR+10)) = HIBYTE(LOWORD(pTransmitKey->dwTSC47_16));
|
*((PBYTE)(pMICHDR+10)) = HIBYTE(LOWORD(pTransmitKey->dwTSC47_16));
|
||||||
|
@ -430,18 +429,18 @@ s_vFillTxKey (
|
||||||
*((PBYTE)(pMICHDR+17)) = 22; // HLEN[7:0]
|
*((PBYTE)(pMICHDR+17)) = 22; // HLEN[7:0]
|
||||||
}
|
}
|
||||||
wValue = cpu_to_le16(pMACHeader->wFrameCtl & 0xC78F);
|
wValue = cpu_to_le16(pMACHeader->wFrameCtl & 0xC78F);
|
||||||
MEMvCopy(pMICHDR+18, (PBYTE)&wValue, 2); // MSKFRACTL
|
memcpy(pMICHDR+18, (PBYTE)&wValue, 2); // MSKFRACTL
|
||||||
MEMvCopy(pMICHDR+20, &(pMACHeader->abyAddr1[0]), 6);
|
memcpy(pMICHDR+20, &(pMACHeader->abyAddr1[0]), 6);
|
||||||
MEMvCopy(pMICHDR+26, &(pMACHeader->abyAddr2[0]), 6);
|
memcpy(pMICHDR+26, &(pMACHeader->abyAddr2[0]), 6);
|
||||||
|
|
||||||
//Fill MICHDR2
|
//Fill MICHDR2
|
||||||
MEMvCopy(pMICHDR+32, &(pMACHeader->abyAddr3[0]), 6);
|
memcpy(pMICHDR+32, &(pMACHeader->abyAddr3[0]), 6);
|
||||||
wValue = pMACHeader->wSeqCtl;
|
wValue = pMACHeader->wSeqCtl;
|
||||||
wValue &= 0x000F;
|
wValue &= 0x000F;
|
||||||
wValue = cpu_to_le16(wValue);
|
wValue = cpu_to_le16(wValue);
|
||||||
MEMvCopy(pMICHDR+38, (PBYTE)&wValue, 2); // MSKSEQCTL
|
memcpy(pMICHDR+38, (PBYTE)&wValue, 2); // MSKSEQCTL
|
||||||
if (pDevice->bLongHeader) {
|
if (pDevice->bLongHeader) {
|
||||||
MEMvCopy(pMICHDR+40, &(pMACHeader->abyAddr4[0]), 6);
|
memcpy(pMICHDR+40, &(pMACHeader->abyAddr4[0]), 6);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1030,16 +1029,16 @@ s_vFillRTSHead (
|
||||||
pBuf->Data.wFrameControl = TYPE_CTL_RTS;//0x00B4
|
pBuf->Data.wFrameControl = TYPE_CTL_RTS;//0x00B4
|
||||||
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
||||||
(pDevice->eOPMode == OP_MODE_AP)) {
|
(pDevice->eOPMode == OP_MODE_AP)) {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
if (pDevice->eOPMode == OP_MODE_AP) {
|
if (pDevice->eOPMode == OP_MODE_AP) {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -1067,17 +1066,17 @@ s_vFillRTSHead (
|
||||||
|
|
||||||
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
||||||
(pDevice->eOPMode == OP_MODE_AP)) {
|
(pDevice->eOPMode == OP_MODE_AP)) {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pDevice->eOPMode == OP_MODE_AP) {
|
if (pDevice->eOPMode == OP_MODE_AP) {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
} // if (byFBOption == AUTO_FB_NONE)
|
} // if (byFBOption == AUTO_FB_NONE)
|
||||||
|
@ -1098,17 +1097,17 @@ s_vFillRTSHead (
|
||||||
|
|
||||||
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
||||||
(pDevice->eOPMode == OP_MODE_AP)) {
|
(pDevice->eOPMode == OP_MODE_AP)) {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pDevice->eOPMode == OP_MODE_AP) {
|
if (pDevice->eOPMode == OP_MODE_AP) {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1129,16 +1128,16 @@ s_vFillRTSHead (
|
||||||
|
|
||||||
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
||||||
(pDevice->eOPMode == OP_MODE_AP)) {
|
(pDevice->eOPMode == OP_MODE_AP)) {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
if (pDevice->eOPMode == OP_MODE_AP) {
|
if (pDevice->eOPMode == OP_MODE_AP) {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1158,17 +1157,17 @@ s_vFillRTSHead (
|
||||||
|
|
||||||
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
if ((pDevice->eOPMode == OP_MODE_ADHOC) ||
|
||||||
(pDevice->eOPMode == OP_MODE_AP)) {
|
(pDevice->eOPMode == OP_MODE_AP)) {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pDevice->eOPMode == OP_MODE_AP) {
|
if (pDevice->eOPMode == OP_MODE_AP) {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyTA[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1224,7 +1223,7 @@ s_vFillCTSHead (
|
||||||
pBuf->Data.wDurationID = pBuf->wDuration_ba;
|
pBuf->Data.wDurationID = pBuf->wDuration_ba;
|
||||||
pBuf->Data.wFrameControl = TYPE_CTL_CTS;//0x00C4
|
pBuf->Data.wFrameControl = TYPE_CTL_CTS;//0x00C4
|
||||||
pBuf->Data.wReserved = 0x0000;
|
pBuf->Data.wReserved = 0x0000;
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyCurrentNetAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyCurrentNetAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
} else { //if (byFBOption != AUTO_FB_NONE && uDMAIdx != TYPE_ATIMDMA && uDMAIdx != TYPE_BEACONDMA)
|
} else { //if (byFBOption != AUTO_FB_NONE && uDMAIdx != TYPE_ATIMDMA && uDMAIdx != TYPE_BEACONDMA)
|
||||||
PSCTS pBuf = (PSCTS)pvCTS;
|
PSCTS pBuf = (PSCTS)pvCTS;
|
||||||
//Get SignalField,ServiceField,Length
|
//Get SignalField,ServiceField,Length
|
||||||
|
@ -1241,7 +1240,7 @@ s_vFillCTSHead (
|
||||||
pBuf->Data.wDurationID = pBuf->wDuration_ba;
|
pBuf->Data.wDurationID = pBuf->wDuration_ba;
|
||||||
pBuf->Data.wFrameControl = TYPE_CTL_CTS;//0x00C4
|
pBuf->Data.wFrameControl = TYPE_CTL_CTS;//0x00C4
|
||||||
pBuf->Data.wReserved = 0x0000;
|
pBuf->Data.wReserved = 0x0000;
|
||||||
MEMvCopy(&(pBuf->Data.abyRA[0]), &(pDevice->abyCurrentNetAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pBuf->Data.abyRA[0]), &(pDevice->abyCurrentNetAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1444,7 +1443,7 @@ s_bPacketToWirelessUsb(
|
||||||
}
|
}
|
||||||
|
|
||||||
pTxBufHead = (PTX_BUFFER) usbPacketBuf;
|
pTxBufHead = (PTX_BUFFER) usbPacketBuf;
|
||||||
ZERO_MEMORY(pTxBufHead, sizeof(TX_BUFFER));
|
memset(pTxBufHead, 0, sizeof(TX_BUFFER));
|
||||||
|
|
||||||
// Get pkt type
|
// Get pkt type
|
||||||
if (ntohs(psEthHeader->wType) > MAX_DATA_LEN) {
|
if (ntohs(psEthHeader->wType) > MAX_DATA_LEN) {
|
||||||
|
@ -1685,14 +1684,14 @@ s_bPacketToWirelessUsb(
|
||||||
if (pDevice->dwDiagRefCount == 0) {
|
if (pDevice->dwDiagRefCount == 0) {
|
||||||
if ( (psEthHeader->wType == TYPE_PKT_IPX) ||
|
if ( (psEthHeader->wType == TYPE_PKT_IPX) ||
|
||||||
(psEthHeader->wType == cpu_to_le16(0xF380))) {
|
(psEthHeader->wType == cpu_to_le16(0xF380))) {
|
||||||
MEMvCopy((PBYTE) (pbyPayloadHead), &abySNAP_Bridgetunnel[0], 6);
|
memcpy((PBYTE) (pbyPayloadHead), &abySNAP_Bridgetunnel[0], 6);
|
||||||
} else {
|
} else {
|
||||||
MEMvCopy((PBYTE) (pbyPayloadHead), &abySNAP_RFC1042[0], 6);
|
memcpy((PBYTE) (pbyPayloadHead), &abySNAP_RFC1042[0], 6);
|
||||||
}
|
}
|
||||||
pbyType = (PBYTE) (pbyPayloadHead + 6);
|
pbyType = (PBYTE) (pbyPayloadHead + 6);
|
||||||
MEMvCopy(pbyType, &(psEthHeader->wType), sizeof(WORD));
|
memcpy(pbyType, &(psEthHeader->wType), sizeof(WORD));
|
||||||
} else {
|
} else {
|
||||||
MEMvCopy((PBYTE) (pbyPayloadHead), &(psEthHeader->wType), sizeof(WORD));
|
memcpy((PBYTE) (pbyPayloadHead), &(psEthHeader->wType), sizeof(WORD));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1701,14 +1700,14 @@ s_bPacketToWirelessUsb(
|
||||||
|
|
||||||
if (pPacket != NULL) {
|
if (pPacket != NULL) {
|
||||||
// Copy the Packet into a tx Buffer
|
// Copy the Packet into a tx Buffer
|
||||||
MEMvCopy((pbyPayloadHead + cb802_1_H_len),
|
memcpy((pbyPayloadHead + cb802_1_H_len),
|
||||||
(pPacket + U_HEADER_LEN),
|
(pPacket + U_HEADER_LEN),
|
||||||
uSkbPacketLen - U_HEADER_LEN
|
uSkbPacketLen - U_HEADER_LEN
|
||||||
);
|
);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// while bRelayPacketSend psEthHeader is point to header+payload
|
// while bRelayPacketSend psEthHeader is point to header+payload
|
||||||
MEMvCopy((pbyPayloadHead + cb802_1_H_len), ((PBYTE)psEthHeader)+U_HEADER_LEN, uSkbPacketLen - U_HEADER_LEN);
|
memcpy((pbyPayloadHead + cb802_1_H_len), ((PBYTE)psEthHeader)+U_HEADER_LEN, uSkbPacketLen - U_HEADER_LEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
ASSERT(uLength == cbNdisBodySize);
|
ASSERT(uLength == cbNdisBodySize);
|
||||||
|
@ -1836,7 +1835,7 @@ s_vGenerateMACHeader (
|
||||||
{
|
{
|
||||||
PS802_11Header pMACHeader = (PS802_11Header)pbyBufferAddr;
|
PS802_11Header pMACHeader = (PS802_11Header)pbyBufferAddr;
|
||||||
|
|
||||||
ZERO_MEMORY(pMACHeader, (sizeof(S802_11Header))); //- sizeof(pMACHeader->dwIV)));
|
memset(pMACHeader, 0, (sizeof(S802_11Header))); //- sizeof(pMACHeader->dwIV)));
|
||||||
|
|
||||||
if (uDMAIdx == TYPE_ATIMDMA) {
|
if (uDMAIdx == TYPE_ATIMDMA) {
|
||||||
pMACHeader->wFrameCtl = TYPE_802_11_ATIM;
|
pMACHeader->wFrameCtl = TYPE_802_11_ATIM;
|
||||||
|
@ -1845,21 +1844,21 @@ s_vGenerateMACHeader (
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pDevice->eOPMode == OP_MODE_AP) {
|
if (pDevice->eOPMode == OP_MODE_AP) {
|
||||||
MEMvCopy(&(pMACHeader->abyAddr1[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr1[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(pMACHeader->abyAddr2[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr2[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(pMACHeader->abyAddr3[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr3[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
pMACHeader->wFrameCtl |= FC_FROMDS;
|
pMACHeader->wFrameCtl |= FC_FROMDS;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (pDevice->eOPMode == OP_MODE_ADHOC) {
|
if (pDevice->eOPMode == OP_MODE_ADHOC) {
|
||||||
MEMvCopy(&(pMACHeader->abyAddr1[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr1[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(pMACHeader->abyAddr2[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr2[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(pMACHeader->abyAddr3[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr3[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
MEMvCopy(&(pMACHeader->abyAddr3[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr3[0]), &(psEthHeader->abyDstAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(pMACHeader->abyAddr2[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr2[0]), &(psEthHeader->abySrcAddr[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(pMACHeader->abyAddr1[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(pMACHeader->abyAddr1[0]), &(pDevice->abyBSSID[0]), U_ETHER_ADDR_LEN);
|
||||||
pMACHeader->wFrameCtl |= FC_TODS;
|
pMACHeader->wFrameCtl |= FC_TODS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1872,7 +1871,7 @@ s_vGenerateMACHeader (
|
||||||
if (pDevice->bLongHeader) {
|
if (pDevice->bLongHeader) {
|
||||||
PWLAN_80211HDR_A4 pMACA4Header = (PWLAN_80211HDR_A4) pbyBufferAddr;
|
PWLAN_80211HDR_A4 pMACA4Header = (PWLAN_80211HDR_A4) pbyBufferAddr;
|
||||||
pMACHeader->wFrameCtl |= (FC_TODS | FC_FROMDS);
|
pMACHeader->wFrameCtl |= (FC_TODS | FC_FROMDS);
|
||||||
MEMvCopy(pMACA4Header->abyAddr4, pDevice->abyBSSID, WLAN_ADDR_LEN);
|
memcpy(pMACA4Header->abyAddr4, pDevice->abyBSSID, WLAN_ADDR_LEN);
|
||||||
}
|
}
|
||||||
pMACHeader->wSeqCtl = cpu_to_le16(pDevice->wSeqCounter << 4);
|
pMACHeader->wSeqCtl = cpu_to_le16(pDevice->wSeqCounter << 4);
|
||||||
|
|
||||||
|
@ -2089,10 +2088,10 @@ CMD_STATUS csMgmt_xmit(
|
||||||
cbHeaderSize = wTxBufSize + sizeof(SRrvTime_ab) + sizeof(STxDataHead_ab);
|
cbHeaderSize = wTxBufSize + sizeof(SRrvTime_ab) + sizeof(STxDataHead_ab);
|
||||||
}
|
}
|
||||||
|
|
||||||
ZERO_MEMORY((PVOID)(pbyTxBufferAddr + wTxBufSize), (cbHeaderSize - wTxBufSize));
|
memset((PVOID)(pbyTxBufferAddr + wTxBufSize), 0, (cbHeaderSize - wTxBufSize));
|
||||||
|
|
||||||
MEMvCopy(&(sEthHeader.abyDstAddr[0]), &(pPacket->p80211Header->sA3.abyAddr1[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(sEthHeader.abyDstAddr[0]), &(pPacket->p80211Header->sA3.abyAddr1[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(sEthHeader.abySrcAddr[0]), &(pPacket->p80211Header->sA3.abyAddr2[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(sEthHeader.abySrcAddr[0]), &(pPacket->p80211Header->sA3.abyAddr2[0]), U_ETHER_ADDR_LEN);
|
||||||
//=========================
|
//=========================
|
||||||
// No Fragmentation
|
// No Fragmentation
|
||||||
//=========================
|
//=========================
|
||||||
|
@ -2148,13 +2147,13 @@ CMD_STATUS csMgmt_xmit(
|
||||||
s_vFillTxKey(pDevice, (PBYTE)(pTxBufHead->adwTxKey), pbyIVHead, pTransmitKey,
|
s_vFillTxKey(pDevice, (PBYTE)(pTxBufHead->adwTxKey), pbyIVHead, pTransmitKey,
|
||||||
(PBYTE)pMACHeader, (WORD)cbFrameBodySize, NULL);
|
(PBYTE)pMACHeader, (WORD)cbFrameBodySize, NULL);
|
||||||
|
|
||||||
MEMvCopy(pMACHeader, pPacket->p80211Header, cbMacHdLen);
|
memcpy(pMACHeader, pPacket->p80211Header, cbMacHdLen);
|
||||||
MEMvCopy(pbyPayloadHead, ((PBYTE)(pPacket->p80211Header) + cbMacHdLen),
|
memcpy(pbyPayloadHead, ((PBYTE)(pPacket->p80211Header) + cbMacHdLen),
|
||||||
cbFrameBodySize);
|
cbFrameBodySize);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// Copy the Packet into a tx Buffer
|
// Copy the Packet into a tx Buffer
|
||||||
MEMvCopy(pMACHeader, pPacket->p80211Header, pPacket->cbMPDULen);
|
memcpy(pMACHeader, pPacket->p80211Header, pPacket->cbMPDULen);
|
||||||
}
|
}
|
||||||
|
|
||||||
pMACHeader->wSeqCtl = cpu_to_le16(pDevice->wSeqCounter << 4);
|
pMACHeader->wSeqCtl = cpu_to_le16(pDevice->wSeqCounter << 4);
|
||||||
|
@ -2263,7 +2262,7 @@ csBeacon_xmit(
|
||||||
|
|
||||||
//Generate Beacon Header
|
//Generate Beacon Header
|
||||||
pMACHeader = (PS802_11Header)(pbyTxBufferAddr + cbHeaderSize);
|
pMACHeader = (PS802_11Header)(pbyTxBufferAddr + cbHeaderSize);
|
||||||
MEMvCopy(pMACHeader, pPacket->p80211Header, pPacket->cbMPDULen);
|
memcpy(pMACHeader, pPacket->p80211Header, pPacket->cbMPDULen);
|
||||||
|
|
||||||
pMACHeader->wDurationID = 0;
|
pMACHeader->wDurationID = 0;
|
||||||
pMACHeader->wSeqCtl = cpu_to_le16(pDevice->wSeqCounter << 4);
|
pMACHeader->wSeqCtl = cpu_to_le16(pDevice->wSeqCounter << 4);
|
||||||
|
@ -2522,9 +2521,9 @@ vDMA0_tx_80211(PSDevice pDevice, struct sk_buff *skb) {
|
||||||
pvTxDataHd = (PSTxDataHead_ab) (pbyTxBufferAddr + wTxBufSize + sizeof(SRrvTime_ab) + cbMICHDR);
|
pvTxDataHd = (PSTxDataHead_ab) (pbyTxBufferAddr + wTxBufSize + sizeof(SRrvTime_ab) + cbMICHDR);
|
||||||
cbHeaderSize = wTxBufSize + sizeof(SRrvTime_ab) + cbMICHDR + sizeof(STxDataHead_ab);
|
cbHeaderSize = wTxBufSize + sizeof(SRrvTime_ab) + cbMICHDR + sizeof(STxDataHead_ab);
|
||||||
}
|
}
|
||||||
ZERO_MEMORY((PVOID)(pbyTxBufferAddr + wTxBufSize), (cbHeaderSize - wTxBufSize));
|
memset((PVOID)(pbyTxBufferAddr + wTxBufSize), 0, (cbHeaderSize - wTxBufSize));
|
||||||
MEMvCopy(&(sEthHeader.abyDstAddr[0]), &(p80211Header->sA3.abyAddr1[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(sEthHeader.abyDstAddr[0]), &(p80211Header->sA3.abyAddr1[0]), U_ETHER_ADDR_LEN);
|
||||||
MEMvCopy(&(sEthHeader.abySrcAddr[0]), &(p80211Header->sA3.abyAddr2[0]), U_ETHER_ADDR_LEN);
|
memcpy(&(sEthHeader.abySrcAddr[0]), &(p80211Header->sA3.abyAddr2[0]), U_ETHER_ADDR_LEN);
|
||||||
//=========================
|
//=========================
|
||||||
// No Fragmentation
|
// No Fragmentation
|
||||||
//=========================
|
//=========================
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
#include "tmacro.h"
|
#include "tmacro.h"
|
||||||
#include "tbit.h"
|
#include "tbit.h"
|
||||||
#include "tkip.h"
|
#include "tkip.h"
|
||||||
#include "umem.h"
|
|
||||||
|
|
||||||
/*--------------------- Static Definitions -------------------------*/
|
/*--------------------- Static Definitions -------------------------*/
|
||||||
|
|
||||||
|
|
|
@ -1,71 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* This program is free software; you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License along
|
|
||||||
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* File: umem.h
|
|
||||||
*
|
|
||||||
* Purpose: Define Memory macros
|
|
||||||
*
|
|
||||||
* Author: Tevin Chen
|
|
||||||
*
|
|
||||||
* Date: Mar 17, 1997
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef __UMEM_H__
|
|
||||||
#define __UMEM_H__
|
|
||||||
|
|
||||||
#include "ttype.h"
|
|
||||||
|
|
||||||
/*--------------------- Export Definitions -------------------------*/
|
|
||||||
// 4-byte memory tag
|
|
||||||
#define MEM_TAG 'mTEW'
|
|
||||||
|
|
||||||
// Macros used for memory allocation and deallocation.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define ZERO_MEMORY(Destination,Length) { \
|
|
||||||
memset((PVOID)(Destination), \
|
|
||||||
0, \
|
|
||||||
(ULONG)(Length) \
|
|
||||||
); \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define MEMvCopy(pvDest, pvSource, uCount) { \
|
|
||||||
memcpy((PVOID)(pvDest), \
|
|
||||||
(PVOID)(pvSource), \
|
|
||||||
(ULONG)(uCount) \
|
|
||||||
); \
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#define MEMEqualMemory(Destination,Source,Length) (!memcmp((Destination),(Source),(Length)))
|
|
||||||
/*--------------------- Export Classes ----------------------------*/
|
|
||||||
|
|
||||||
/*--------------------- Export Variables --------------------------*/
|
|
||||||
|
|
||||||
/*--------------------- Export Functions --------------------------*/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif // __UMEM_H__
|
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "umem.h"
|
|
||||||
#include "int.h"
|
#include "int.h"
|
||||||
#include "rxtx.h"
|
#include "rxtx.h"
|
||||||
#include "dpc.h"
|
#include "dpc.h"
|
||||||
|
|
|
@ -51,7 +51,6 @@
|
||||||
#include "card.h"
|
#include "card.h"
|
||||||
#include "baseband.h"
|
#include "baseband.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "rxtx.h"
|
#include "rxtx.h"
|
||||||
#include "rf.h"
|
#include "rf.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
|
@ -1117,14 +1116,14 @@ s_bCommandComplete (
|
||||||
pDevice->eCommandState = WLAN_CMD_SCAN_START;
|
pDevice->eCommandState = WLAN_CMD_SCAN_START;
|
||||||
pMgmt->uScanChannel = 0;
|
pMgmt->uScanChannel = 0;
|
||||||
if (pSSID->len != 0) {
|
if (pSSID->len != 0) {
|
||||||
MEMvCopy(pMgmt->abyScanSSID, pSSID, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
memcpy(pMgmt->abyScanSSID, pSSID, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
||||||
} else {
|
} else {
|
||||||
memset(pMgmt->abyScanSSID, 0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
memset(pMgmt->abyScanSSID, 0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
if ((bForceSCAN == FALSE) && (pDevice->bLinkPass == TRUE)) {
|
if ((bForceSCAN == FALSE) && (pDevice->bLinkPass == TRUE)) {
|
||||||
if ((pSSID->len == ((PWLAN_IE_SSID)pMgmt->abyCurrSSID)->len) &&
|
if ((pSSID->len == ((PWLAN_IE_SSID)pMgmt->abyCurrSSID)->len) &&
|
||||||
(MEMEqualMemory(pSSID->abySSID, ((PWLAN_IE_SSID)pMgmt->abyCurrSSID)->abySSID, pSSID->len))) {
|
( !memcmp(pSSID->abySSID, ((PWLAN_IE_SSID)pMgmt->abyCurrSSID)->abySSID, pSSID->len))) {
|
||||||
pDevice->eCommandState = WLAN_CMD_IDLE;
|
pDevice->eCommandState = WLAN_CMD_IDLE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1135,7 +1134,7 @@ s_bCommandComplete (
|
||||||
if (pSSID->len > WLAN_SSID_MAXLEN)
|
if (pSSID->len > WLAN_SSID_MAXLEN)
|
||||||
pSSID->len = WLAN_SSID_MAXLEN;
|
pSSID->len = WLAN_SSID_MAXLEN;
|
||||||
if (pSSID->len != 0)
|
if (pSSID->len != 0)
|
||||||
MEMvCopy(pMgmt->abyDesireSSID, pSSID, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
memcpy(pMgmt->abyDesireSSID, pSSID, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
||||||
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"eCommandState= WLAN_CMD_SSID_START\n");
|
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"eCommandState= WLAN_CMD_SSID_START\n");
|
||||||
break;
|
break;
|
||||||
case WLAN_CMD_DISASSOCIATE:
|
case WLAN_CMD_DISASSOCIATE:
|
||||||
|
@ -1213,12 +1212,12 @@ BOOL bScheduleCommand (
|
||||||
switch (eCommand) {
|
switch (eCommand) {
|
||||||
case WLAN_CMD_BSSID_SCAN:
|
case WLAN_CMD_BSSID_SCAN:
|
||||||
pDevice->eCmdQueue[pDevice->uCmdEnqueueIdx].bForceSCAN = FALSE;
|
pDevice->eCmdQueue[pDevice->uCmdEnqueueIdx].bForceSCAN = FALSE;
|
||||||
MEMvCopy(pDevice->eCmdQueue[pDevice->uCmdEnqueueIdx].abyCmdDesireSSID,
|
memcpy(pDevice->eCmdQueue[pDevice->uCmdEnqueueIdx].abyCmdDesireSSID,
|
||||||
pbyItem0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
pbyItem0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WLAN_CMD_SSID:
|
case WLAN_CMD_SSID:
|
||||||
MEMvCopy(pDevice->eCmdQueue[pDevice->uCmdEnqueueIdx].abyCmdDesireSSID,
|
memcpy(pDevice->eCmdQueue[pDevice->uCmdEnqueueIdx].abyCmdDesireSSID,
|
||||||
pbyItem0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
pbyItem0, WLAN_IEHDR_LEN + WLAN_SSID_MAXLEN + 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,6 @@
|
||||||
#include "rxtx.h"
|
#include "rxtx.h"
|
||||||
#include "wpa.h"
|
#include "wpa.h"
|
||||||
#include "rf.h"
|
#include "rf.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "iowpa.h"
|
#include "iowpa.h"
|
||||||
#include "control.h"
|
#include "control.h"
|
||||||
#include "rndis.h"
|
#include "rndis.h"
|
||||||
|
@ -3022,7 +3021,7 @@ s_vMgrSynchBSS (
|
||||||
// set BSSID
|
// set BSSID
|
||||||
MACvWriteBSSIDAddress(pDevice, pCurr->abyBSSID);
|
MACvWriteBSSIDAddress(pDevice, pCurr->abyBSSID);
|
||||||
|
|
||||||
MEMvCopy(pMgmt->abyCurrBSSID, pCurr->abyBSSID, 6);
|
memcpy(pMgmt->abyCurrBSSID, pCurr->abyBSSID, 6);
|
||||||
|
|
||||||
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Sync:set CurrBSSID address = %02x-%02x-%02x=%02x-%02x-%02x\n",
|
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Sync:set CurrBSSID address = %02x-%02x-%02x=%02x-%02x-%02x\n",
|
||||||
pMgmt->abyCurrBSSID[0],
|
pMgmt->abyCurrBSSID[0],
|
||||||
|
@ -3105,14 +3104,14 @@ s_vMgrSynchBSS (
|
||||||
};
|
};
|
||||||
|
|
||||||
if (pDevice->byBBType == BB_TYPE_11A) {
|
if (pDevice->byBBType == BB_TYPE_11A) {
|
||||||
MEMvCopy(pMgmt->abyCurrSuppRates, &abyCurrSuppRatesA[0], sizeof(abyCurrSuppRatesA));
|
memcpy(pMgmt->abyCurrSuppRates, &abyCurrSuppRatesA[0], sizeof(abyCurrSuppRatesA));
|
||||||
pMgmt->abyCurrExtSuppRates[1] = 0;
|
pMgmt->abyCurrExtSuppRates[1] = 0;
|
||||||
} else if (pDevice->byBBType == BB_TYPE_11B) {
|
} else if (pDevice->byBBType == BB_TYPE_11B) {
|
||||||
MEMvCopy(pMgmt->abyCurrSuppRates, &abyCurrSuppRatesB[0], sizeof(abyCurrSuppRatesB));
|
memcpy(pMgmt->abyCurrSuppRates, &abyCurrSuppRatesB[0], sizeof(abyCurrSuppRatesB));
|
||||||
pMgmt->abyCurrExtSuppRates[1] = 0;
|
pMgmt->abyCurrExtSuppRates[1] = 0;
|
||||||
} else {
|
} else {
|
||||||
MEMvCopy(pMgmt->abyCurrSuppRates, &abyCurrSuppRatesG[0], sizeof(abyCurrSuppRatesG));
|
memcpy(pMgmt->abyCurrSuppRates, &abyCurrSuppRatesG[0], sizeof(abyCurrSuppRatesG));
|
||||||
MEMvCopy(pMgmt->abyCurrExtSuppRates, &abyCurrExtSuppRatesG[0], sizeof(abyCurrExtSuppRatesG));
|
memcpy(pMgmt->abyCurrExtSuppRates, &abyCurrExtSuppRatesG[0], sizeof(abyCurrExtSuppRatesG));
|
||||||
}
|
}
|
||||||
pMgmt->byERPContext = pCurr->sERP.byERP;
|
pMgmt->byERPContext = pCurr->sERP.byERP;
|
||||||
|
|
||||||
|
@ -3389,7 +3388,7 @@ s_MgrMakeBeacon(
|
||||||
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
||||||
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
||||||
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(sFrame.pExtSuppRates,
|
memcpy(sFrame.pExtSuppRates,
|
||||||
pCurrExtSuppRates,
|
pCurrExtSuppRates,
|
||||||
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
||||||
);
|
);
|
||||||
|
@ -3524,7 +3523,7 @@ s_MgrMakeProbeResponse(
|
||||||
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
||||||
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
||||||
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(sFrame.pExtSuppRates,
|
memcpy(sFrame.pExtSuppRates,
|
||||||
pCurrExtSuppRates,
|
pCurrExtSuppRates,
|
||||||
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
||||||
);
|
);
|
||||||
|
@ -3610,7 +3609,7 @@ s_MgrMakeAssocRequest(
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength = pCurrSSID->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength = pCurrSSID->len + WLAN_IEHDR_LEN;
|
||||||
pMgmt->sAssocInfo.AssocInfo.OffsetRequestIEs = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION);
|
pMgmt->sAssocInfo.AssocInfo.OffsetRequestIEs = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION);
|
||||||
pbyIEs = pMgmt->sAssocInfo.abyIEs;
|
pbyIEs = pMgmt->sAssocInfo.abyIEs;
|
||||||
MEMvCopy(pbyIEs, pCurrSSID, pCurrSSID->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, pCurrSSID, pCurrSSID->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += pCurrSSID->len + WLAN_IEHDR_LEN;
|
pbyIEs += pCurrSSID->len + WLAN_IEHDR_LEN;
|
||||||
|
|
||||||
// Copy the rate set
|
// Copy the rate set
|
||||||
|
@ -3629,7 +3628,7 @@ s_MgrMakeAssocRequest(
|
||||||
}
|
}
|
||||||
|
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength += pCurrRates->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength += pCurrRates->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(pbyIEs, pCurrRates, pCurrRates->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, pCurrRates, pCurrRates->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += pCurrRates->len + WLAN_IEHDR_LEN;
|
pbyIEs += pCurrRates->len + WLAN_IEHDR_LEN;
|
||||||
|
|
||||||
|
|
||||||
|
@ -3700,7 +3699,7 @@ s_MgrMakeAssocRequest(
|
||||||
sFrame.len += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
sFrame.len += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
||||||
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(pbyIEs, sFrame.pRSNWPA, sFrame.pRSNWPA->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, sFrame.pRSNWPA, sFrame.pRSNWPA->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
pbyIEs += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
||||||
|
|
||||||
} else if (((pMgmt->eAuthenMode == WMAC_AUTH_WPA2) ||
|
} else if (((pMgmt->eAuthenMode == WMAC_AUTH_WPA2) ||
|
||||||
|
@ -3762,7 +3761,7 @@ s_MgrMakeAssocRequest(
|
||||||
|
|
||||||
// RSN Capabilites
|
// RSN Capabilites
|
||||||
if (pMgmt->pCurrBSS->sRSNCapObj.bRSNCapExist == TRUE) {
|
if (pMgmt->pCurrBSS->sRSNCapObj.bRSNCapExist == TRUE) {
|
||||||
MEMvCopy(&sFrame.pRSN->abyRSN[16], &pMgmt->pCurrBSS->sRSNCapObj.wRSNCap, 2);
|
memcpy(&sFrame.pRSN->abyRSN[16], &pMgmt->pCurrBSS->sRSNCapObj.wRSNCap, 2);
|
||||||
} else {
|
} else {
|
||||||
sFrame.pRSN->abyRSN[16] = 0;
|
sFrame.pRSN->abyRSN[16] = 0;
|
||||||
sFrame.pRSN->abyRSN[17] = 0;
|
sFrame.pRSN->abyRSN[17] = 0;
|
||||||
|
@ -3776,9 +3775,9 @@ s_MgrMakeAssocRequest(
|
||||||
*pwPMKID = 0; // Initialize PMKID count
|
*pwPMKID = 0; // Initialize PMKID count
|
||||||
pbyRSN += 2; // Point to PMKID list
|
pbyRSN += 2; // Point to PMKID list
|
||||||
for (ii = 0; ii < pDevice->gsPMKID.BSSIDInfoCount; ii++) {
|
for (ii = 0; ii < pDevice->gsPMKID.BSSIDInfoCount; ii++) {
|
||||||
if (MEMEqualMemory(&pDevice->gsPMKID.BSSIDInfo[ii].BSSID[0], pMgmt->abyCurrBSSID, U_ETHER_ADDR_LEN)) {
|
if ( !memcmp(&pDevice->gsPMKID.BSSIDInfo[ii].BSSID[0], pMgmt->abyCurrBSSID, U_ETHER_ADDR_LEN)) {
|
||||||
(*pwPMKID) ++;
|
(*pwPMKID) ++;
|
||||||
MEMvCopy(pbyRSN, pDevice->gsPMKID.BSSIDInfo[ii].PMKID, 16);
|
memcpy(pbyRSN, pDevice->gsPMKID.BSSIDInfo[ii].PMKID, 16);
|
||||||
pbyRSN += 16;
|
pbyRSN += 16;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3790,7 +3789,7 @@ s_MgrMakeAssocRequest(
|
||||||
sFrame.len += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
sFrame.len += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
||||||
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(pbyIEs, sFrame.pRSN, sFrame.pRSN->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, sFrame.pRSN, sFrame.pRSN->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
pbyIEs += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3872,7 +3871,7 @@ s_MgrMakeReAssocRequest(
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength = pCurrSSID->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength = pCurrSSID->len + WLAN_IEHDR_LEN;
|
||||||
pMgmt->sAssocInfo.AssocInfo.OffsetRequestIEs = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION);
|
pMgmt->sAssocInfo.AssocInfo.OffsetRequestIEs = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION);
|
||||||
pbyIEs = pMgmt->sAssocInfo.abyIEs;
|
pbyIEs = pMgmt->sAssocInfo.abyIEs;
|
||||||
MEMvCopy(pbyIEs, pCurrSSID, pCurrSSID->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, pCurrSSID, pCurrSSID->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += pCurrSSID->len + WLAN_IEHDR_LEN;
|
pbyIEs += pCurrSSID->len + WLAN_IEHDR_LEN;
|
||||||
|
|
||||||
/* Copy the rate set */
|
/* Copy the rate set */
|
||||||
|
@ -3889,7 +3888,7 @@ s_MgrMakeReAssocRequest(
|
||||||
}
|
}
|
||||||
|
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength += pCurrRates->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength += pCurrRates->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(pbyIEs, pCurrRates, pCurrRates->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, pCurrRates, pCurrRates->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += pCurrRates->len + WLAN_IEHDR_LEN;
|
pbyIEs += pCurrRates->len + WLAN_IEHDR_LEN;
|
||||||
|
|
||||||
if (((pMgmt->eAuthenMode == WMAC_AUTH_WPA) ||
|
if (((pMgmt->eAuthenMode == WMAC_AUTH_WPA) ||
|
||||||
|
@ -3956,7 +3955,7 @@ s_MgrMakeReAssocRequest(
|
||||||
sFrame.len += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
sFrame.len += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
||||||
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(pbyIEs, sFrame.pRSNWPA, sFrame.pRSNWPA->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, sFrame.pRSNWPA, sFrame.pRSNWPA->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
pbyIEs += sFrame.pRSNWPA->len + WLAN_IEHDR_LEN;
|
||||||
|
|
||||||
} else if (((pMgmt->eAuthenMode == WMAC_AUTH_WPA2) ||
|
} else if (((pMgmt->eAuthenMode == WMAC_AUTH_WPA2) ||
|
||||||
|
@ -4018,7 +4017,7 @@ s_MgrMakeReAssocRequest(
|
||||||
|
|
||||||
// RSN Capabilites
|
// RSN Capabilites
|
||||||
if (pMgmt->pCurrBSS->sRSNCapObj.bRSNCapExist == TRUE) {
|
if (pMgmt->pCurrBSS->sRSNCapObj.bRSNCapExist == TRUE) {
|
||||||
MEMvCopy(&sFrame.pRSN->abyRSN[16], &pMgmt->pCurrBSS->sRSNCapObj.wRSNCap, 2);
|
memcpy(&sFrame.pRSN->abyRSN[16], &pMgmt->pCurrBSS->sRSNCapObj.wRSNCap, 2);
|
||||||
} else {
|
} else {
|
||||||
sFrame.pRSN->abyRSN[16] = 0;
|
sFrame.pRSN->abyRSN[16] = 0;
|
||||||
sFrame.pRSN->abyRSN[17] = 0;
|
sFrame.pRSN->abyRSN[17] = 0;
|
||||||
|
@ -4032,9 +4031,9 @@ s_MgrMakeReAssocRequest(
|
||||||
*pwPMKID = 0; // Initialize PMKID count
|
*pwPMKID = 0; // Initialize PMKID count
|
||||||
pbyRSN += 2; // Point to PMKID list
|
pbyRSN += 2; // Point to PMKID list
|
||||||
for (ii = 0; ii < pDevice->gsPMKID.BSSIDInfoCount; ii++) {
|
for (ii = 0; ii < pDevice->gsPMKID.BSSIDInfoCount; ii++) {
|
||||||
if (MEMEqualMemory(&pDevice->gsPMKID.BSSIDInfo[ii].BSSID[0], pMgmt->abyCurrBSSID, U_ETHER_ADDR_LEN)) {
|
if ( !memcmp(&pDevice->gsPMKID.BSSIDInfo[ii].BSSID[0], pMgmt->abyCurrBSSID, U_ETHER_ADDR_LEN)) {
|
||||||
(*pwPMKID) ++;
|
(*pwPMKID) ++;
|
||||||
MEMvCopy(pbyRSN, pDevice->gsPMKID.BSSIDInfo[ii].PMKID, 16);
|
memcpy(pbyRSN, pDevice->gsPMKID.BSSIDInfo[ii].PMKID, 16);
|
||||||
pbyRSN += 16;
|
pbyRSN += 16;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4046,7 +4045,7 @@ s_MgrMakeReAssocRequest(
|
||||||
sFrame.len += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
sFrame.len += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
||||||
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
// copy to AssocInfo. for OID_802_11_ASSOCIATION_INFORMATION
|
||||||
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
pMgmt->sAssocInfo.AssocInfo.RequestIELength += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(pbyIEs, sFrame.pRSN, sFrame.pRSN->len + WLAN_IEHDR_LEN);
|
memcpy(pbyIEs, sFrame.pRSN, sFrame.pRSN->len + WLAN_IEHDR_LEN);
|
||||||
pbyIEs += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
pbyIEs += sFrame.pRSN->len + WLAN_IEHDR_LEN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4121,7 +4120,7 @@ s_MgrMakeAssocResponse(
|
||||||
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
||||||
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
||||||
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(sFrame.pExtSuppRates,
|
memcpy(sFrame.pExtSuppRates,
|
||||||
pCurrExtSuppRates,
|
pCurrExtSuppRates,
|
||||||
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
||||||
);
|
);
|
||||||
|
@ -4195,7 +4194,7 @@ s_MgrMakeReAssocResponse(
|
||||||
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
if (((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len != 0) {
|
||||||
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
sFrame.pExtSuppRates = (PWLAN_IE_SUPP_RATES)(sFrame.pBuf + sFrame.len);
|
||||||
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
sFrame.len += ((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN;
|
||||||
MEMvCopy(sFrame.pExtSuppRates,
|
memcpy(sFrame.pExtSuppRates,
|
||||||
pCurrExtSuppRates,
|
pCurrExtSuppRates,
|
||||||
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
((PWLAN_IE_SUPP_RATES)pCurrExtSuppRates)->len + WLAN_IEHDR_LEN
|
||||||
);
|
);
|
||||||
|
@ -4748,7 +4747,7 @@ bAdd_PMKID_Candidate (
|
||||||
// Update Old Candidate
|
// Update Old Candidate
|
||||||
for (ii = 0; ii < pDevice->gsPMKIDCandidate.NumCandidates; ii++) {
|
for (ii = 0; ii < pDevice->gsPMKIDCandidate.NumCandidates; ii++) {
|
||||||
pCandidateList = &pDevice->gsPMKIDCandidate.CandidateList[ii];
|
pCandidateList = &pDevice->gsPMKIDCandidate.CandidateList[ii];
|
||||||
if (MEMEqualMemory(pCandidateList->BSSID, pbyBSSID, U_ETHER_ADDR_LEN)) {
|
if ( !memcmp(pCandidateList->BSSID, pbyBSSID, U_ETHER_ADDR_LEN)) {
|
||||||
if ((psRSNCapObj->bRSNCapExist == TRUE) && (psRSNCapObj->wRSNCap & BIT0)) {
|
if ((psRSNCapObj->bRSNCapExist == TRUE) && (psRSNCapObj->wRSNCap & BIT0)) {
|
||||||
pCandidateList->Flags |= NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED;
|
pCandidateList->Flags |= NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED;
|
||||||
} else {
|
} else {
|
||||||
|
@ -4765,7 +4764,7 @@ bAdd_PMKID_Candidate (
|
||||||
} else {
|
} else {
|
||||||
pCandidateList->Flags &= ~(NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED);
|
pCandidateList->Flags &= ~(NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED);
|
||||||
}
|
}
|
||||||
MEMvCopy(pCandidateList->BSSID, pbyBSSID, U_ETHER_ADDR_LEN);
|
memcpy(pCandidateList->BSSID, pbyBSSID, U_ETHER_ADDR_LEN);
|
||||||
pDevice->gsPMKIDCandidate.NumCandidates++;
|
pDevice->gsPMKIDCandidate.NumCandidates++;
|
||||||
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"NumCandidates:%d\n", (int)pDevice->gsPMKIDCandidate.NumCandidates);
|
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"NumCandidates:%d\n", (int)pDevice->gsPMKIDCandidate.NumCandidates);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
@ -4795,7 +4794,7 @@ vFlush_PMKID_Candidate (
|
||||||
if (pDevice == NULL)
|
if (pDevice == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ZERO_MEMORY(&pDevice->gsPMKIDCandidate, sizeof(SPMKIDCandidateEvent));
|
memset(&pDevice->gsPMKIDCandidate, 0, sizeof(SPMKIDCandidateEvent));
|
||||||
}
|
}
|
||||||
|
|
||||||
static BOOL
|
static BOOL
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "ttype.h"
|
#include "ttype.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "tmacro.h"
|
#include "tmacro.h"
|
||||||
#include "tether.h"
|
#include "tether.h"
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
|
@ -121,22 +120,22 @@ WPA_ParseRSN (
|
||||||
|
|
||||||
// information element header makes sense
|
// information element header makes sense
|
||||||
if ((pRSN->len >= 6) // oui1(4)+ver(2)
|
if ((pRSN->len >= 6) // oui1(4)+ver(2)
|
||||||
&& (pRSN->byElementID == WLAN_EID_RSN_WPA) && MEMEqualMemory(pRSN->abyOUI, abyOUI01, 4)
|
&& (pRSN->byElementID == WLAN_EID_RSN_WPA) && !memcmp(pRSN->abyOUI, abyOUI01, 4)
|
||||||
&& (pRSN->wVersion == 1)) {
|
&& (pRSN->wVersion == 1)) {
|
||||||
|
|
||||||
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"Legal RSN\n");
|
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"Legal RSN\n");
|
||||||
// update each variable if pRSN is long enough to contain the variable
|
// update each variable if pRSN is long enough to contain the variable
|
||||||
if (pRSN->len >= 10) //oui1(4)+ver(2)+GKSuite(4)
|
if (pRSN->len >= 10) //oui1(4)+ver(2)+GKSuite(4)
|
||||||
{
|
{
|
||||||
if (MEMEqualMemory(pRSN->abyMulticast, abyOUI01, 4))
|
if ( !memcmp(pRSN->abyMulticast, abyOUI01, 4))
|
||||||
pBSSList->byGKType = WPA_WEP40;
|
pBSSList->byGKType = WPA_WEP40;
|
||||||
else if (MEMEqualMemory(pRSN->abyMulticast, abyOUI02, 4))
|
else if ( !memcmp(pRSN->abyMulticast, abyOUI02, 4))
|
||||||
pBSSList->byGKType = WPA_TKIP;
|
pBSSList->byGKType = WPA_TKIP;
|
||||||
else if (MEMEqualMemory(pRSN->abyMulticast, abyOUI03, 4))
|
else if ( !memcmp(pRSN->abyMulticast, abyOUI03, 4))
|
||||||
pBSSList->byGKType = WPA_AESWRAP;
|
pBSSList->byGKType = WPA_AESWRAP;
|
||||||
else if (MEMEqualMemory(pRSN->abyMulticast, abyOUI04, 4))
|
else if ( !memcmp(pRSN->abyMulticast, abyOUI04, 4))
|
||||||
pBSSList->byGKType = WPA_AESCCMP;
|
pBSSList->byGKType = WPA_AESCCMP;
|
||||||
else if (MEMEqualMemory(pRSN->abyMulticast, abyOUI05, 4))
|
else if ( !memcmp(pRSN->abyMulticast, abyOUI05, 4))
|
||||||
pBSSList->byGKType = WPA_WEP104;
|
pBSSList->byGKType = WPA_WEP104;
|
||||||
else
|
else
|
||||||
// any vendor checks here
|
// any vendor checks here
|
||||||
|
@ -151,13 +150,13 @@ WPA_ParseRSN (
|
||||||
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"wPKCount: %d, sizeof(pBSSList->abyPKType): %ld\n", pRSN->wPKCount, sizeof(pBSSList->abyPKType));
|
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"wPKCount: %d, sizeof(pBSSList->abyPKType): %ld\n", pRSN->wPKCount, sizeof(pBSSList->abyPKType));
|
||||||
for(i = 0; (i < pRSN->wPKCount) && (j < sizeof(pBSSList->abyPKType)/sizeof(BYTE)); i++) {
|
for(i = 0; (i < pRSN->wPKCount) && (j < sizeof(pBSSList->abyPKType)/sizeof(BYTE)); i++) {
|
||||||
if(pRSN->len >= 12+i*4+4) { //oui1(4)+ver(2)+GKS(4)+PKSCnt(2)+PKS(4*i)
|
if(pRSN->len >= 12+i*4+4) { //oui1(4)+ver(2)+GKS(4)+PKSCnt(2)+PKS(4*i)
|
||||||
if (MEMEqualMemory(pRSN->PKSList[i].abyOUI, abyOUI00, 4))
|
if ( !memcmp(pRSN->PKSList[i].abyOUI, abyOUI00, 4))
|
||||||
pBSSList->abyPKType[j++] = WPA_NONE;
|
pBSSList->abyPKType[j++] = WPA_NONE;
|
||||||
else if (MEMEqualMemory(pRSN->PKSList[i].abyOUI, abyOUI02, 4))
|
else if ( !memcmp(pRSN->PKSList[i].abyOUI, abyOUI02, 4))
|
||||||
pBSSList->abyPKType[j++] = WPA_TKIP;
|
pBSSList->abyPKType[j++] = WPA_TKIP;
|
||||||
else if (MEMEqualMemory(pRSN->PKSList[i].abyOUI, abyOUI03, 4))
|
else if ( !memcmp(pRSN->PKSList[i].abyOUI, abyOUI03, 4))
|
||||||
pBSSList->abyPKType[j++] = WPA_AESWRAP;
|
pBSSList->abyPKType[j++] = WPA_AESWRAP;
|
||||||
else if (MEMEqualMemory(pRSN->PKSList[i].abyOUI, abyOUI04, 4))
|
else if ( !memcmp(pRSN->PKSList[i].abyOUI, abyOUI04, 4))
|
||||||
pBSSList->abyPKType[j++] = WPA_AESCCMP;
|
pBSSList->abyPKType[j++] = WPA_AESCCMP;
|
||||||
else
|
else
|
||||||
// any vendor checks here
|
// any vendor checks here
|
||||||
|
@ -183,9 +182,9 @@ WPA_ParseRSN (
|
||||||
pIE_RSN_Auth->wAuthCount, sizeof(pBSSList->abyAuthType));
|
pIE_RSN_Auth->wAuthCount, sizeof(pBSSList->abyAuthType));
|
||||||
for(i = 0; (i < pIE_RSN_Auth->wAuthCount) && (j < sizeof(pBSSList->abyAuthType)/sizeof(BYTE)); i++) {
|
for(i = 0; (i < pIE_RSN_Auth->wAuthCount) && (j < sizeof(pBSSList->abyAuthType)/sizeof(BYTE)); i++) {
|
||||||
if(pRSN->len >= 14+4+(m+i)*4) { //oui1(4)+ver(2)+GKS(4)+PKSCnt(2)+PKS(4*m)+AKC(2)+AKS(4*i)
|
if(pRSN->len >= 14+4+(m+i)*4) { //oui1(4)+ver(2)+GKS(4)+PKSCnt(2)+PKS(4*m)+AKC(2)+AKS(4*i)
|
||||||
if (MEMEqualMemory(pIE_RSN_Auth->AuthKSList[i].abyOUI, abyOUI01, 4))
|
if ( !memcmp(pIE_RSN_Auth->AuthKSList[i].abyOUI, abyOUI01, 4))
|
||||||
pBSSList->abyAuthType[j++] = WPA_AUTH_IEEE802_1X;
|
pBSSList->abyAuthType[j++] = WPA_AUTH_IEEE802_1X;
|
||||||
else if (MEMEqualMemory(pIE_RSN_Auth->AuthKSList[i].abyOUI, abyOUI02, 4))
|
else if ( !memcmp(pIE_RSN_Auth->AuthKSList[i].abyOUI, abyOUI02, 4))
|
||||||
pBSSList->abyAuthType[j++] = WPA_AUTH_PSK;
|
pBSSList->abyAuthType[j++] = WPA_AUTH_PSK;
|
||||||
else
|
else
|
||||||
// any vendor checks here
|
// any vendor checks here
|
||||||
|
@ -307,7 +306,7 @@ WPAb_Is_RSN (
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if ((pRSN->len >= 6) && // oui1(4)+ver(2)
|
if ((pRSN->len >= 6) && // oui1(4)+ver(2)
|
||||||
(pRSN->byElementID == WLAN_EID_RSN_WPA) && MEMEqualMemory(pRSN->abyOUI, abyOUI01, 4) &&
|
(pRSN->byElementID == WLAN_EID_RSN_WPA) && !memcmp(pRSN->abyOUI, abyOUI01, 4) &&
|
||||||
(pRSN->wVersion == 1)) {
|
(pRSN->wVersion == 1)) {
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,9 +32,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "wpa2.h"
|
#include "wpa2.h"
|
||||||
#include "umem.h"
|
|
||||||
#include "device.h"
|
#include "device.h"
|
||||||
#include "wmgr.h"
|
|
||||||
|
|
||||||
/*--------------------- Static Definitions -------------------------*/
|
/*--------------------- Static Definitions -------------------------*/
|
||||||
static int msglevel =MSG_LEVEL_INFO;
|
static int msglevel =MSG_LEVEL_INFO;
|
||||||
|
@ -142,15 +140,15 @@ WPA2vParseRSN (
|
||||||
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"Legal 802.11i RSN\n");
|
DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO"Legal 802.11i RSN\n");
|
||||||
|
|
||||||
pbyOUI = &(pRSN->abyRSN[0]);
|
pbyOUI = &(pRSN->abyRSN[0]);
|
||||||
if (MEMEqualMemory(pbyOUI, abyOUIWEP40, 4))
|
if ( !memcmp(pbyOUI, abyOUIWEP40, 4))
|
||||||
pBSSNode->byCSSGK = WLAN_11i_CSS_WEP40;
|
pBSSNode->byCSSGK = WLAN_11i_CSS_WEP40;
|
||||||
else if (MEMEqualMemory(pbyOUI, abyOUITKIP, 4))
|
else if ( !memcmp(pbyOUI, abyOUITKIP, 4))
|
||||||
pBSSNode->byCSSGK = WLAN_11i_CSS_TKIP;
|
pBSSNode->byCSSGK = WLAN_11i_CSS_TKIP;
|
||||||
else if (MEMEqualMemory(pbyOUI, abyOUICCMP, 4))
|
else if ( !memcmp(pbyOUI, abyOUICCMP, 4))
|
||||||
pBSSNode->byCSSGK = WLAN_11i_CSS_CCMP;
|
pBSSNode->byCSSGK = WLAN_11i_CSS_CCMP;
|
||||||
else if (MEMEqualMemory(pbyOUI, abyOUIWEP104, 4))
|
else if ( !memcmp(pbyOUI, abyOUIWEP104, 4))
|
||||||
pBSSNode->byCSSGK = WLAN_11i_CSS_WEP104;
|
pBSSNode->byCSSGK = WLAN_11i_CSS_WEP104;
|
||||||
else if (MEMEqualMemory(pbyOUI, abyOUIGK, 4)) {
|
else if ( !memcmp(pbyOUI, abyOUIGK, 4)) {
|
||||||
// invalid CSS, P802.11i/D10.0, p32
|
// invalid CSS, P802.11i/D10.0, p32
|
||||||
return;
|
return;
|
||||||
} else
|
} else
|
||||||
|
@ -172,19 +170,19 @@ WPA2vParseRSN (
|
||||||
for (i = 0; (i < pBSSNode->wCSSPKCount) && (j < sizeof(pBSSNode->abyCSSPK)/sizeof(BYTE)); i++) {
|
for (i = 0; (i < pBSSNode->wCSSPKCount) && (j < sizeof(pBSSNode->abyCSSPK)/sizeof(BYTE)); i++) {
|
||||||
|
|
||||||
if (pRSN->len >= 8+i*4+4) { // ver(2)+GK(4)+PKCnt(2)+PKS(4*i)
|
if (pRSN->len >= 8+i*4+4) { // ver(2)+GK(4)+PKCnt(2)+PKS(4*i)
|
||||||
if (MEMEqualMemory(pbyOUI, abyOUIGK, 4)) {
|
if ( !memcmp(pbyOUI, abyOUIGK, 4)) {
|
||||||
pBSSNode->abyCSSPK[j++] = WLAN_11i_CSS_USE_GROUP;
|
pBSSNode->abyCSSPK[j++] = WLAN_11i_CSS_USE_GROUP;
|
||||||
bUseGK = TRUE;
|
bUseGK = TRUE;
|
||||||
} else if (MEMEqualMemory(pbyOUI, abyOUIWEP40, 4)) {
|
} else if ( !memcmp(pbyOUI, abyOUIWEP40, 4)) {
|
||||||
// Invialid CSS, continue to parsing
|
// Invialid CSS, continue to parsing
|
||||||
} else if (MEMEqualMemory(pbyOUI, abyOUITKIP, 4)) {
|
} else if ( !memcmp(pbyOUI, abyOUITKIP, 4)) {
|
||||||
if (pBSSNode->byCSSGK != WLAN_11i_CSS_CCMP)
|
if (pBSSNode->byCSSGK != WLAN_11i_CSS_CCMP)
|
||||||
pBSSNode->abyCSSPK[j++] = WLAN_11i_CSS_TKIP;
|
pBSSNode->abyCSSPK[j++] = WLAN_11i_CSS_TKIP;
|
||||||
else
|
else
|
||||||
; // Invialid CSS, continue to parsing
|
; // Invialid CSS, continue to parsing
|
||||||
} else if (MEMEqualMemory(pbyOUI, abyOUICCMP, 4)) {
|
} else if ( !memcmp(pbyOUI, abyOUICCMP, 4)) {
|
||||||
pBSSNode->abyCSSPK[j++] = WLAN_11i_CSS_CCMP;
|
pBSSNode->abyCSSPK[j++] = WLAN_11i_CSS_CCMP;
|
||||||
} else if (MEMEqualMemory(pbyOUI, abyOUIWEP104, 4)) {
|
} else if ( !memcmp(pbyOUI, abyOUIWEP104, 4)) {
|
||||||
// Invialid CSS, continue to parsing
|
// Invialid CSS, continue to parsing
|
||||||
} else {
|
} else {
|
||||||
// any vendor checks here
|
// any vendor checks here
|
||||||
|
@ -222,9 +220,9 @@ WPA2vParseRSN (
|
||||||
pbyOUI = &(pRSN->abyRSN[8+4*m]);
|
pbyOUI = &(pRSN->abyRSN[8+4*m]);
|
||||||
for (i = 0; (i < pBSSNode->wAKMSSAuthCount) && (j < sizeof(pBSSNode->abyAKMSSAuthType)/sizeof(BYTE)); i++) {
|
for (i = 0; (i < pBSSNode->wAKMSSAuthCount) && (j < sizeof(pBSSNode->abyAKMSSAuthType)/sizeof(BYTE)); i++) {
|
||||||
if (pRSN->len >= 10+(m+i)*4+4) { // ver(2)+GK(4)+PKCnt(2)+PKS(4*m)+AKMSS(2)+AKS(4*i)
|
if (pRSN->len >= 10+(m+i)*4+4) { // ver(2)+GK(4)+PKCnt(2)+PKS(4*m)+AKMSS(2)+AKS(4*i)
|
||||||
if (MEMEqualMemory(pbyOUI, abyOUI8021X, 4))
|
if ( !memcmp(pbyOUI, abyOUI8021X, 4))
|
||||||
pBSSNode->abyAKMSSAuthType[j++] = WLAN_11i_AKMSS_802_1X;
|
pBSSNode->abyAKMSSAuthType[j++] = WLAN_11i_AKMSS_802_1X;
|
||||||
else if (MEMEqualMemory(pbyOUI, abyOUIPSK, 4))
|
else if ( !memcmp(pbyOUI, abyOUIPSK, 4))
|
||||||
pBSSNode->abyAKMSSAuthType[j++] = WLAN_11i_AKMSS_PSK;
|
pBSSNode->abyAKMSSAuthType[j++] = WLAN_11i_AKMSS_PSK;
|
||||||
else
|
else
|
||||||
// any vendor checks here
|
// any vendor checks here
|
||||||
|
@ -332,7 +330,7 @@ WPA2uSetIEs(
|
||||||
|
|
||||||
// RSN Capabilites
|
// RSN Capabilites
|
||||||
if (pMgmt->pCurrBSS->sRSNCapObj.bRSNCapExist == TRUE) {
|
if (pMgmt->pCurrBSS->sRSNCapObj.bRSNCapExist == TRUE) {
|
||||||
MEMvCopy(&pRSNIEs->abyRSN[16], &pMgmt->pCurrBSS->sRSNCapObj.wRSNCap, 2);
|
memcpy(&pRSNIEs->abyRSN[16], &pMgmt->pCurrBSS->sRSNCapObj.wRSNCap, 2);
|
||||||
} else {
|
} else {
|
||||||
pRSNIEs->abyRSN[16] = 0;
|
pRSNIEs->abyRSN[16] = 0;
|
||||||
pRSNIEs->abyRSN[17] = 0;
|
pRSNIEs->abyRSN[17] = 0;
|
||||||
|
@ -347,9 +345,9 @@ WPA2uSetIEs(
|
||||||
*pwPMKID = 0; // Initialize PMKID count
|
*pwPMKID = 0; // Initialize PMKID count
|
||||||
pbyBuffer = &pRSNIEs->abyRSN[20]; // Point to PMKID list
|
pbyBuffer = &pRSNIEs->abyRSN[20]; // Point to PMKID list
|
||||||
for (ii = 0; ii < pMgmt->gsPMKIDCache.BSSIDInfoCount; ii++) {
|
for (ii = 0; ii < pMgmt->gsPMKIDCache.BSSIDInfoCount; ii++) {
|
||||||
if (MEMEqualMemory(&pMgmt->gsPMKIDCache.BSSIDInfo[ii].abyBSSID[0], pMgmt->abyCurrBSSID, U_ETHER_ADDR_LEN)) {
|
if ( !memcmp(&pMgmt->gsPMKIDCache.BSSIDInfo[ii].abyBSSID[0], pMgmt->abyCurrBSSID, U_ETHER_ADDR_LEN)) {
|
||||||
(*pwPMKID) ++;
|
(*pwPMKID) ++;
|
||||||
MEMvCopy(pbyBuffer, pMgmt->gsPMKIDCache.BSSIDInfo[ii].abyPMKID, 16);
|
memcpy(pbyBuffer, pMgmt->gsPMKIDCache.BSSIDInfo[ii].abyPMKID, 16);
|
||||||
pbyBuffer += 16;
|
pbyBuffer += 16;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue