]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
wlantest: Show broadcast Deauth/Disassoc info in debug
authorJouni Malinen <jouni.malinen@atheros.com>
Tue, 23 Nov 2010 11:16:23 +0000 (13:16 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 23 Nov 2010 11:16:23 +0000 (13:16 +0200)
wlantest/rx_mgmt.c

index 1e94a6ca3c6c3116f25016be01b4d40844e9b6c6..bf9750ecf4ec89ab81b980236e5d3fe8f64fd590 100644 (file)
@@ -171,8 +171,6 @@ static void rx_mgmt_deauth(struct wlantest *wt, const u8 *data, size_t len,
                sta = sta_get(bss, mgmt->da);
        else
                sta = sta_get(bss, mgmt->sa);
-       if (sta == NULL)
-               return;
 
        if (len < 24 + 2) {
                wpa_printf(MSG_INFO, "Too short Deauthentication frame from "
@@ -181,11 +179,14 @@ static void rx_mgmt_deauth(struct wlantest *wt, const u8 *data, size_t len,
        }
 
        wpa_printf(MSG_DEBUG, "DEAUTH " MACSTR " -> " MACSTR
-                  " (reason=%u)",
+                  " (reason=%u) (valid=%d)",
                   MAC2STR(mgmt->sa), MAC2STR(mgmt->da),
-                  le_to_host16(mgmt->u.deauth.reason_code));
+                  le_to_host16(mgmt->u.deauth.reason_code), valid);
        wpa_hexdump(MSG_MSGDUMP, "DEAUTH payload", data + 24, len - 24);
 
+       if (sta == NULL)
+               return;
+
        if (os_memcmp(mgmt->sa, mgmt->bssid, ETH_ALEN) == 0)
                sta->counters[valid ? WLANTEST_STA_COUNTER_VALID_DEAUTH_RX :
                              WLANTEST_STA_COUNTER_INVALID_DEAUTH_RX]++;
@@ -478,8 +479,6 @@ static void rx_mgmt_disassoc(struct wlantest *wt, const u8 *data, size_t len,
                sta = sta_get(bss, mgmt->da);
        else
                sta = sta_get(bss, mgmt->sa);
-       if (sta == NULL)
-               return;
 
        if (len < 24 + 2) {
                wpa_printf(MSG_INFO, "Too short Disassociation frame from "
@@ -488,11 +487,14 @@ static void rx_mgmt_disassoc(struct wlantest *wt, const u8 *data, size_t len,
        }
 
        wpa_printf(MSG_DEBUG, "DISASSOC " MACSTR " -> " MACSTR
-                  " (reason=%u)",
+                  " (reason=%u) (valid=%d)",
                   MAC2STR(mgmt->sa), MAC2STR(mgmt->da),
-                  le_to_host16(mgmt->u.disassoc.reason_code));
+                  le_to_host16(mgmt->u.disassoc.reason_code), valid);
        wpa_hexdump(MSG_MSGDUMP, "DISASSOC payload", data + 24, len - 24);
 
+       if (sta == NULL)
+               return;
+
        if (os_memcmp(mgmt->sa, mgmt->bssid, ETH_ALEN) == 0)
                sta->counters[valid ? WLANTEST_STA_COUNTER_VALID_DISASSOC_RX :
                              WLANTEST_STA_COUNTER_INVALID_DISASSOC_RX]++;