missing merge from FreeBSD 8.2
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41558 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
c41d9ce694
commit
7ea3c0686e
@ -51,6 +51,7 @@ __FBSDID("$FreeBSD$");
|
||||
#endif
|
||||
#include <net80211/ieee80211_wds.h>
|
||||
#include <net80211/ieee80211_mesh.h>
|
||||
#include <net80211/ieee80211_ratectl.h>
|
||||
|
||||
#include <net/bpf.h>
|
||||
|
||||
@ -428,7 +429,7 @@ ieee80211_reset_bss(struct ieee80211vap *vap)
|
||||
ieee80211_reset_erp(ic);
|
||||
|
||||
ni = ieee80211_alloc_node(&ic->ic_sta, vap, vap->iv_myaddr);
|
||||
KASSERT(ni != NULL, ("unable to setup inital BSS node"));
|
||||
KASSERT(ni != NULL, ("unable to setup initial BSS node"));
|
||||
obss = vap->iv_bss;
|
||||
vap->iv_bss = ieee80211_ref_node(ni);
|
||||
if (obss != NULL) {
|
||||
@ -813,6 +814,7 @@ ieee80211_sta_join(struct ieee80211vap *vap, struct ieee80211_channel *chan,
|
||||
if (ieee80211_iserp_rateset(&ni->ni_rates))
|
||||
ni->ni_flags |= IEEE80211_NODE_ERP;
|
||||
ieee80211_node_setuptxparms(ni);
|
||||
ieee80211_ratectl_node_init(ni);
|
||||
|
||||
return ieee80211_sta_join1(ieee80211_ref_node(ni));
|
||||
}
|
||||
@ -1032,6 +1034,7 @@ node_free(struct ieee80211_node *ni)
|
||||
{
|
||||
struct ieee80211com *ic = ni->ni_ic;
|
||||
|
||||
ieee80211_ratectl_node_deinit(ni);
|
||||
ic->ic_node_cleanup(ni);
|
||||
ieee80211_ies_cleanup(&ni->ni_ies);
|
||||
ieee80211_psq_cleanup(&ni->ni_psq);
|
||||
@ -1131,6 +1134,8 @@ ieee80211_alloc_node(struct ieee80211_node_table *nt,
|
||||
IEEE80211_NOTE(vap, IEEE80211_MSG_INACT, ni,
|
||||
"%s: inact_reload %u", __func__, ni->ni_inact_reload);
|
||||
|
||||
ieee80211_ratectl_node_init(ni);
|
||||
|
||||
return ni;
|
||||
}
|
||||
|
||||
@ -1168,6 +1173,8 @@ ieee80211_tmp_node(struct ieee80211vap *vap,
|
||||
ni->ni_txpower = bss->ni_txpower;
|
||||
/* XXX optimize away */
|
||||
ieee80211_psq_init(&ni->ni_psq, "unknown");
|
||||
|
||||
ieee80211_ratectl_node_init(ni);
|
||||
} else {
|
||||
/* XXX msg */
|
||||
vap->iv_stats.is_rx_nodealloc++;
|
||||
@ -1396,6 +1403,7 @@ ieee80211_fakeup_adhoc_node(struct ieee80211vap *vap,
|
||||
#endif
|
||||
}
|
||||
ieee80211_node_setuptxparms(ni);
|
||||
ieee80211_ratectl_node_init(ni);
|
||||
if (ic->ic_newassoc != NULL)
|
||||
ic->ic_newassoc(ni, 1);
|
||||
/* XXX not right for 802.1x/WPA */
|
||||
@ -1465,6 +1473,7 @@ ieee80211_add_neighbor(struct ieee80211vap *vap,
|
||||
if (ieee80211_iserp_rateset(&ni->ni_rates))
|
||||
ni->ni_flags |= IEEE80211_NODE_ERP;
|
||||
ieee80211_node_setuptxparms(ni);
|
||||
ieee80211_ratectl_node_init(ni);
|
||||
if (ic->ic_newassoc != NULL)
|
||||
ic->ic_newassoc(ni, 1);
|
||||
/* XXX not right for 802.1x/WPA */
|
||||
@ -1736,7 +1745,7 @@ ieee80211_node_delucastkey(struct ieee80211_node *ni)
|
||||
status = ieee80211_crypto_delkey(ni->ni_vap, &ni->ni_ucastkey);
|
||||
if (nt->nt_keyixmap != NULL && keyix < nt->nt_keyixmax) {
|
||||
nikey = nt->nt_keyixmap[keyix];
|
||||
nt->nt_keyixmap[keyix] = NULL;;
|
||||
nt->nt_keyixmap[keyix] = NULL;
|
||||
}
|
||||
}
|
||||
if (!isowned)
|
||||
@ -2333,6 +2342,7 @@ ieee80211_node_join(struct ieee80211_node *ni, int resp)
|
||||
);
|
||||
|
||||
ieee80211_node_setuptxparms(ni);
|
||||
ieee80211_ratectl_node_init(ni);
|
||||
/* give driver a chance to setup state like ni_txrate */
|
||||
if (ic->ic_newassoc != NULL)
|
||||
ic->ic_newassoc(ni, newassoc);
|
||||
|
Loading…
Reference in New Issue
Block a user