summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdhar, Mahesh Kumar <c_medhar@qti.qualcomm.com>2013-10-09 19:14:57 +0530
committerMadan Mohan Koyyalamudi <mkoyyala@qca.qualcomm.com>2013-10-23 20:03:49 -0700
commit8eec1246f404f53c47fbb1dfd508c16fc619111d (patch)
treed1bd1a1d61c375e1c92ea0339a2e4d7701336530
parenta3a65b7a65c88a0733aeb123d00cd4d7b707375e (diff)
CLD:Fix the wrong updation of buffer pointer in limStartBssReqSerDes
currently we are copying extended rates and updating the buffer pointers only if the network type is G/N. In the case where network type is other than G/N this is resulting in wrong updation of remaining fields in the buffer. Therefore made changes to update the buffer pointers irrespective our interest in extended rates. Change-Id: I997cd80e1c6e2ecbdfb3952760a44cea94422f92 CRs-Fixed: 554953,554965
-rw-r--r--CORE/MAC/src/pe/lim/limSerDesUtils.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/CORE/MAC/src/pe/lim/limSerDesUtils.c b/CORE/MAC/src/pe/lim/limSerDesUtils.c
index 083ca5239dd0..512b38baf6a9 100644
--- a/CORE/MAC/src/pe/lim/limSerDesUtils.c
+++ b/CORE/MAC/src/pe/lim/limSerDesUtils.c
@@ -713,16 +713,22 @@ limStartBssReqSerDes(tpAniSirGlobal pMac, tpSirSmeStartBssReq pStartBssReq, tANI
len -= pStartBssReq->operationalRateSet.numRates;
// Extract extendedRateSet
+ pStartBssReq->extendedRateSet.numRates = *pBuf++;
+ len--;
if ((pStartBssReq->nwType == eSIR_11G_NW_TYPE) ||
(pStartBssReq->nwType == eSIR_11N_NW_TYPE ))
{
- pStartBssReq->extendedRateSet.numRates = *pBuf++;
- len--;
palCopyMemory( pMac->hHdd, pStartBssReq->extendedRateSet.rate,
pBuf, pStartBssReq->extendedRateSet.numRates);
pBuf += pStartBssReq->extendedRateSet.numRates;
len -= pStartBssReq->extendedRateSet.numRates;
}
+ else
+ {
+ pBuf += pStartBssReq->extendedRateSet.numRates;
+ len -= pStartBssReq->extendedRateSet.numRates;
+ pStartBssReq->extendedRateSet.numRates = 0;
+ }
palCopyMemory(pMac->hHdd, &(pStartBssReq->htConfig), pBuf,
sizeof(tSirHTConfig));