staging: rtl8723bs: Skip unnecessary field checks
authorAymen Qader <qader.aymen@gmail.com>
Thu, 27 Sep 2018 22:28:14 +0000 (23:28 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 28 Sep 2018 12:41:36 +0000 (14:41 +0200)
Skip unnecessary request field checks when the information element
pointer is null.

Signed-off-by: Aymen Qader <qader.aymen@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8723bs/core/rtw_mlme_ext.c

index bf05593..69c7abc 100644 (file)
@@ -1267,13 +1267,12 @@ unsigned int OnAssocReq(struct adapter *padapter, union recv_frame *precv_frame)
        /*  checking SSID */
        p = rtw_get_ie(pframe + WLAN_HDR_A3_LEN + ie_offset, _SSID_IE_, &ie_len,
                pkt_len - WLAN_HDR_A3_LEN - ie_offset);
-       if (p == NULL) {
-               status = _STATS_FAILURE_;
-       }
 
-       if (ie_len == 0) /*  broadcast ssid, however it is not allowed in assocreq */
+       if (!p || ie_len == 0) {
+               /*  broadcast ssid, however it is not allowed in assocreq */
                status = _STATS_FAILURE_;
-       else {
+               goto OnAssocReqFail;
+       } else {
                /*  check if ssid match */
                if (memcmp((void *)(p+2), cur->Ssid.Ssid, cur->Ssid.SsidLength))
                        status = _STATS_FAILURE_;