summaryrefslogtreecommitdiff
path: root/sys/net80211
diff options
context:
space:
mode:
authorStefan Sperling <stsp@cvs.openbsd.org>2013-12-01 10:08:56 +0000
committerStefan Sperling <stsp@cvs.openbsd.org>2013-12-01 10:08:56 +0000
commitfa811ab193cd676f4596308968456c6f42d65c25 (patch)
tree45e2aec5928b62a6879292f04abe6d7ec1a1de54 /sys/net80211
parent48b19faaf1c9fa819b38fc5d3bd581e4b73e56da (diff)
Reset txrate array index after changing a node's rate list.
Should prevent "bogus xmit rate %d setup" panics, which I ran into again in IBSS mode. ok kettenis
Diffstat (limited to 'sys/net80211')
-rw-r--r--sys/net80211/ieee80211_node.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211_node.c b/sys/net80211/ieee80211_node.c
index e8afbc2816e..21f63d7e6b1 100644
--- a/sys/net80211/ieee80211_node.c
+++ b/sys/net80211/ieee80211_node.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ieee80211_node.c,v 1.79 2013/11/21 16:16:08 mpi Exp $ */
+/* $OpenBSD: ieee80211_node.c,v 1.80 2013/12/01 10:08:55 stsp Exp $ */
/* $NetBSD: ieee80211_node.c,v 1.14 2004/05/09 09:18:47 dyoung Exp $ */
/*-
@@ -909,6 +909,7 @@ ieee80211_find_txnode(struct ieee80211com *ic, const u_int8_t *macaddr)
return NULL;
/* XXX no rate negotiation; just dup */
ni->ni_rates = ic->ic_bss->ni_rates;
+ ni->ni_txrate = 0;
if (ic->ic_newassoc)
(*ic->ic_newassoc)(ic, ni, 1);
}
@@ -1041,6 +1042,7 @@ ieee80211_find_rxnode(struct ieee80211com *ic,
IEEE80211_ADDR_COPY(ni->ni_bssid, (bssid != NULL) ? bssid : zero);
ni->ni_rates = ic->ic_bss->ni_rates;
+ ni->ni_txrate = 0;
if (ic->ic_newassoc)
(*ic->ic_newassoc)(ic, ni, 1);