diff options
| author | zding <zding@codeaurora.org> | 2016-10-12 14:59:02 +0800 |
|---|---|---|
| committer | qcabuildsw <qcabuildsw@localhost> | 2016-11-03 19:33:04 -0700 |
| commit | 440d8cb4bb37c20663f028e48e4470253fc1c2bb (patch) | |
| tree | c8492f893a61967c7b8d3b0f6e5b10dd1c0fc238 | |
| parent | 32e367fdd5be9fffb5c9a7ee218694d762254fca (diff) | |
qcacld-3.0: Add presence check for structure tDot11fQosMapConfigure
qcacld-2.0 to qcacld-3.0 propagation
Current logic use the "not present" structure tDot11fQosMapConfigure
to calculate the array index which lead to the array overflow and
crash of VosMCThread. Add check code to avoid this problem.
Change-Id: Ifa08b24a06e409fed1bd445574127fef02f21d19
CRs-Fixed: 978582
| -rw-r--r-- | core/mac/src/sys/legacy/src/utils/src/parser_api.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/core/mac/src/sys/legacy/src/utils/src/parser_api.c b/core/mac/src/sys/legacy/src/utils/src/parser_api.c index bcd2a32c7310..4ecc5eb2cdb7 100644 --- a/core/mac/src/sys/legacy/src/utils/src/parser_api.c +++ b/core/mac/src/sys/legacy/src/utils/src/parser_api.c @@ -4636,7 +4636,7 @@ sir_convert_qos_map_configure_frame2_struct(tpAniSirGlobal pMac, uint32_t status; status = dot11f_unpack_qos_map_configure(pMac, pFrame, nFrame, &mapConfigure); - if (DOT11F_FAILED(status)) { + if (DOT11F_FAILED(status) || !mapConfigure.QosMapSet.present) { dot11f_log(pMac, LOGE, FL("Failed to parse Qos Map Configure frame (0x%08x, %d bytes):"), status, nFrame); |
