Public feed
#601788
diff -Nurb madwifi-ng-r2525-20070630/net80211/ieee80211_input.c madwifi-ng-r2525-20070630.work/net80211/ieee80211_input.c--- madwifi-ng-r2525-20070630/net80211/ieee80211_input.c 2007-06-25 09:18:07.000000000 +0530+++ madwifi-ng-r2525-20070630.work/net80211/ieee80211_input.c 2007-07-03 23:55:33.000000000 +0530@@ -2542,7 +2542,7 @@ u_int8_t rate; int reassoc, resp, allocbs = 0; u_int8_t qosinfo;-+ u_int8_t mytim = 0; wh = (struct ieee80211_frame *) skb->data; frm = (u_int8_t *)&wh[1]; efrm = skb->data + skb->len;@@ -2834,8 +2834,10 @@ int max = tim->tim_len + min - 4; if ((tim->tim_bitctl&1) || (min <= ix && ix <= max &&- isset(tim->tim_bitmap - min, aid)))+ isset(tim->tim_bitmap - min, aid))) {+ mytim = 1; ieee80211_sta_pwrsave(vap, 0);+ } vap->iv_dtim_count = tim->tim_count; } @@ -2862,7 +2864,7 @@ if (ic->ic_flags & IEEE80211_F_SCAN) ieee80211_add_scan(vap, &scan, wh, subtype, rssi, rtsf);- else if (contbgscan(vap) || startbgscan(vap))+ else if ((contbgscan(vap) || startbgscan(vap)) && mytim == 0) ieee80211_bg_scan(vap); return; }