Skip to contentSkip to conversation

Improve passive scanning: check not only for proberesp_ies but also for beacon_ies

PATCH New Matthias May 1 participant 1 message Nov 27, 2012 mac80211

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Improve passive scanning: check not only for proberesp_ies but also for beacon_ies

Improve passive scanning: check not only for proberesp_ies but also
for beacon_ies
Without this improvement, it always attempts to send a probe
request (which it's not allowed) and then wait for auth_data->timeout.

The log without patch:
Jan 1 02:48:03 (none) kern.info kernel: [10084.062491] wlan0:
authenticate with 04:f0:21:02:46:93

     Jan  1 02:48:03 (none) kern.info kernel: [10084.064933] wlan0: 
direct probe to 04:f0:21:02:46:93 (try 1/3)
     Jan  1 02:48:04 (none) kern.info kernel: [10084.078417] wlan0: send 
auth to 04:f0:21:02:46:93 (try 2/3)
     Jan  1 02:48:04 (none) kern.info kernel: [10084.079363] wlan0: 
authenticated
     Jan  1 02:48:04 (none) kern.info kernel: [10084.082648] wlan0: 
associate with 04:f0:21:02:46:93 (try 1/3)
     Jan  1 02:48:04 (none) kern.info kernel: [10084.083726] wlan0: RX 

AssocResp from 04:f0:21:02:46:93 (capab=0x11 status=0 aid=1)

The log with patch:
Jan 1 02:46:25 (none) kern.info kernel: [ 9985.696798] wlan0:
authenticate with 04:f0:21:02:46:53

     Jan  1 02:46:25 (none) kern.info kernel: [ 9985.699234] wlan0: send 
auth to 04:f0:21:02:46:53 (try 1/3)
     Jan  1 02:46:25 (none) kern.info kernel: [ 9985.700211] wlan0: 
authenticated
     Jan  1 02:46:25 (none) kern.info kernel: [ 9985.702583] wlan0: 
associate with 04:f0:21:02:46:53 (try 1/3)
     Jan  1 02:46:25 (none) kern.info kernel: [ 9985.703624] wlan0: RX 

AssocResp from 04:f0:21:02:46:53 (capab=0x11 status=0 aid=1)

---
  net/mac80211/mlme.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
net/mac80211/mlme.c +0 -0
index d2a4f78..fae5f9c 100644
@@ -2817,7 +2817,7 @@ static int ieee80211_probe_auth(struct 

ieee80211_sub_if_data *sdata)

         drv_mgd_prepare_tx(local, sdata);

- if (auth_data->bss->proberesp_ies) {

+       if (auth_data->bss->proberesp_ies || auth_data->bss->beacon_ies) {
                 u16 trans = 1;
                 u16 status = 0;
Signature · 10 lines
Matthias May
Software Engineer

Neratec Solutions AG
Postfach 83, CH-8608 Bubikon, Switzerland
Direct: +41 55 253 2074
Office: +41 55 253 2000
Fax:    +41 55 253 2070
email:  matthias.may at neratec.com
Web:   www.neratec.com