From d3539a10d4a53f5fd3a54756999431b21064ff5e Mon Sep 17 00:00:00 2001 From: sam Date: Mon, 6 Mar 2006 17:23:26 +0000 Subject: when scanning channels marked passive defer probe request until 802.11 traffic is seen; fixes problems with ap's hiding their ssid Obtained from: atheros MFC after: 1 week --- sys/net80211/ieee80211_proto.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'sys/net80211/ieee80211_proto.c') diff --git a/sys/net80211/ieee80211_proto.c b/sys/net80211/ieee80211_proto.c index bb755ed..0e9b581 100644 --- a/sys/net80211/ieee80211_proto.c +++ b/sys/net80211/ieee80211_proto.c @@ -978,19 +978,11 @@ ieee80211_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg break; case IEEE80211_S_SCAN: /* - * Scan next. If doing an active scan and the - * channel is not marked passive-only then send - * a probe request. Otherwise just listen for - * beacons on the channel. + * Scan next. If doing an active scan probe + * for the requested ap (if any). */ - if ((ic->ic_flags & IEEE80211_F_ASCAN) && - (ic->ic_curchan->ic_flags & IEEE80211_CHAN_PASSIVE) == 0) { - ieee80211_send_probereq(ni, - ic->ic_myaddr, ifp->if_broadcastaddr, - ifp->if_broadcastaddr, - ic->ic_des_essid, ic->ic_des_esslen, - ic->ic_opt_ie, ic->ic_opt_ie_len); - } + if (ic->ic_flags & IEEE80211_F_ASCAN) + ieee80211_probe_curchan(ic, 0); break; case IEEE80211_S_RUN: /* beacon miss */ -- cgit v1.1