diff options
| author | Rakesh Sunki <rsunki@qca.qualcomm.com> | 2014-07-29 20:42:48 -0700 |
|---|---|---|
| committer | Akash Patel <c_akashp@qca.qualcomm.com> | 2014-08-04 19:31:46 -0700 |
| commit | 39aa725417c2d3cf9ae30d19a237343109a149ec (patch) | |
| tree | 59659e36cf0e25b5bd090870d933badbc843ee99 | |
| parent | ef23bc9b184cd983c5c8d3633d62cb9cfabb45b3 (diff) | |
qcacld: DFS, fix issues found by static analysis tool.
Add check to make sure that dfs channel list index
does not exceed the dfs allocated list of bonded
channels
Change-Id: I0b62a4c4912a2baca70c3385144510b02599873b
CRs-Fixed: 701081
| -rw-r--r-- | CORE/SAP/src/sapFsm.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/CORE/SAP/src/sapFsm.c b/CORE/SAP/src/sapFsm.c index c3ee0bd8ebd4..eec80fa78487 100644 --- a/CORE/SAP/src/sapFsm.c +++ b/CORE/SAP/src/sapFsm.c @@ -1230,6 +1230,11 @@ sapDfsIsChannelInNolList(ptSapContext sapContext, v_U8_t channelNumber, if (j < numChannels && i < pMac->sap.SapDfsInfo.numCurrentRegDomainDfsChannels) { + if (numChannels > MAX_BONDED_CHANNELS) { + VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_WARN, + FL( "numChannels > MAX_BONDED_CHANNELS so resetting")); + numChannels = MAX_BONDED_CHANNELS; + } sapMarkDfsChannels(sapContext, channels, numChannels, @@ -3579,6 +3584,12 @@ v_U8_t sapIndicateRadar(ptSapContext sapContext, tSirSmeDfsEventInd *dfs_event) sapGet5GHzChannelList(sapContext); + if (dfs_event->chan_list.nchannels > SIR_DFS_MAX_20M_SUB_CH) { + VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_WARN, + FL("nchannels >SIR_DFS_MAX_20M_SUB_CH so resetting")); + dfs_event->chan_list.nchannels = SIR_DFS_MAX_20M_SUB_CH; + } + sapMarkDfsChannels(sapContext, dfs_event->chan_list.channels, dfs_event->chan_list.nchannels, vos_get_monotonic_boottime()); |
