diff options
author | sam <sam@FreeBSD.org> | 2005-12-12 18:44:27 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2005-12-12 18:44:27 +0000 |
commit | a106e1bec979c9af5d353ad29b0ebd7bd0249e4f (patch) | |
tree | f9f70c5a539b2883a9003dc4e8f00ab11f36584b /sys | |
parent | 14e234a70b64d2ac7420ba343f4586e3bf82d9a8 (diff) | |
download | FreeBSD-src-a106e1bec979c9af5d353ad29b0ebd7bd0249e4f.zip FreeBSD-src-a106e1bec979c9af5d353ad29b0ebd7bd0249e4f.tar.gz |
propagate current bss state on sta join so, in particular, authmode
is set properly in the new bss node
MFC after: 2 weeks
Diffstat (limited to 'sys')
-rw-r--r-- | sys/net80211/ieee80211_node.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/net80211/ieee80211_node.c b/sys/net80211/ieee80211_node.c index 8efc33e..7fe4525 100644 --- a/sys/net80211/ieee80211_node.c +++ b/sys/net80211/ieee80211_node.c @@ -678,7 +678,7 @@ ieee80211_end_scan(struct ieee80211com *ic) * Decrement the failure counts so entries will be * reconsidered the next time around. We really want * to do this only for sta's where we've previously - had some success. + * had some success. */ IEEE80211_NODE_LOCK(nt); TAILQ_FOREACH(ni, &nt->nt_node, ni_list) @@ -787,8 +787,10 @@ ieee80211_sta_join(struct ieee80211com *ic, struct ieee80211_node *selbs) */ obss = ic->ic_bss; ic->ic_bss = selbs; /* NB: caller assumed to bump refcnt */ - if (obss != NULL) + if (obss != NULL) { + copy_bss(selbs, obss); ieee80211_free_node(obss); + } /* * Set the erp state (mostly the slot time) to deal with * the auto-select case; this should be redundant if the |