Index: madwifi-ng-r2568-20070710/net80211/ieee80211_input.c =================================================================== --- madwifi-ng-r2568-20070710.orig/net80211/ieee80211_input.c 2007-10-20 20:52:09.000000000 +0200 +++ madwifi-ng-r2568-20070710/net80211/ieee80211_input.c 2007-10-20 20:52:44.000000000 +0200 @@ -2875,7 +2875,7 @@ } if ((vap->iv_opmode == IEEE80211_M_IBSS) && (scan.capinfo & IEEE80211_CAPINFO_IBSS)) { - if (!IEEE80211_ADDR_EQ(wh->i_addr2, ni->ni_macaddr)) { + if (ni == vap->iv_bss) { /* Create a new entry in the neighbor table. */ ni = ieee80211_add_neighbor(vap, wh, &scan); } else { Index: madwifi-ng-r2568-20070710/net80211/ieee80211_node.c =================================================================== --- madwifi-ng-r2568-20070710.orig/net80211/ieee80211_node.c 2007-10-20 20:52:09.000000000 +0200 +++ madwifi-ng-r2568-20070710/net80211/ieee80211_node.c 2007-10-20 20:52:39.000000000 +0200 @@ -1205,7 +1205,7 @@ struct ieee80211com *ic = vap->iv_ic; struct ieee80211_node *ni; - ni = ieee80211_dup_bss(vap, wh->i_addr2, 1); + ni = ieee80211_dup_bss(vap, wh->i_addr2, 0); if (ni != NULL) { ni->ni_esslen = sp->ssid[1]; memcpy(ni->ni_essid, sp->ssid + 2, sp->ssid[1]);