diff --git a/umac/scan/dispatcher/src/wlan_scan_utils_api.c b/umac/scan/dispatcher/src/wlan_scan_utils_api.c index eac7c1fa09..2efaecb48c 100644 --- a/umac/scan/dispatcher/src/wlan_scan_utils_api.c +++ b/umac/scan/dispatcher/src/wlan_scan_utils_api.c @@ -524,8 +524,15 @@ util_scan_populate_bcn_ie_list(struct scan_cache_entry *scan_params) break; case WLAN_ELEMID_QBSS_LOAD: if (ie->ie_len != sizeof(struct qbss_load_ie) - - sizeof(struct ie_header)) - return QDF_STATUS_E_INVAL; + sizeof(struct ie_header)) { + /* + * Expected QBSS IE length is 5Bytes; For some + * old cisco AP, QBSS IE length is 4Bytes, which + * doesn't match with latest spec, So ignore + * QBSS IE in such case. + */ + break; + } scan_params->ie_list.qbssload = (uint8_t *)ie; break; case WLAN_ELEMID_CHANSWITCHANN: