diff options
author | Damien Bergamini <damien@cvs.openbsd.org> | 2008-08-12 19:50:40 +0000 |
---|---|---|
committer | Damien Bergamini <damien@cvs.openbsd.org> | 2008-08-12 19:50:40 +0000 |
commit | cfceb85c4117431ab482fc7e0344332d0e674529 (patch) | |
tree | 455d06cad0eb1791b03650fca42b11d5b2a0530f | |
parent | 22fb3cbd09eaff49bfbf93f00a8ae49c94327933 (diff) |
clear Tx_Rx protection bits properly.
-rw-r--r-- | sys/net80211/ieee80211_input.c | 6 | ||||
-rw-r--r-- | sys/net80211/ieee80211_proto.c | 3 |
2 files changed, 6 insertions, 3 deletions
diff --git a/sys/net80211/ieee80211_input.c b/sys/net80211/ieee80211_input.c index e57853d8e72..e9dd7df6507 100644 --- a/sys/net80211/ieee80211_input.c +++ b/sys/net80211/ieee80211_input.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ieee80211_input.c,v 1.94 2008/08/12 19:45:22 damien Exp $ */ +/* $OpenBSD: ieee80211_input.c,v 1.95 2008/08/12 19:50:39 damien Exp $ */ /*- * Copyright (c) 2001 Atsushi Onoe @@ -1735,7 +1735,9 @@ ieee80211_recv_assoc_resp(struct ieee80211com *ic, struct mbuf *m0, */ if (ic->ic_flags & IEEE80211_F_RSNON) { /* XXX ic->ic_mgt_timer = 5; */ - } + } else if (ic->ic_flags & IEEE80211_F_WEPON) + ni->ni_flags |= IEEE80211_NODE_TXRXPROT; + ieee80211_new_state(ic, IEEE80211_S_RUN, IEEE80211_FC0_SUBTYPE_ASSOC_RESP); } diff --git a/sys/net80211/ieee80211_proto.c b/sys/net80211/ieee80211_proto.c index e25ae7fac69..0504c675a6a 100644 --- a/sys/net80211/ieee80211_proto.c +++ b/sys/net80211/ieee80211_proto.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ieee80211_proto.c,v 1.31 2008/08/12 18:37:23 damien Exp $ */ +/* $OpenBSD: ieee80211_proto.c,v 1.32 2008/08/12 19:50:39 damien Exp $ */ /* $NetBSD: ieee80211_proto.c,v 1.8 2004/04/30 23:58:20 dyoung Exp $ */ /*- @@ -517,6 +517,7 @@ ieee80211_auth_open(struct ieee80211com *ic, const struct ieee80211_frame *wh, } if (ic->ic_flags & IEEE80211_F_RSNON) { /* XXX not here! */ + ic->ic_bss->ni_flags &= ~IEEE80211_NODE_TXRXPROT; ic->ic_bss->ni_port_valid = 0; ic->ic_bss->ni_replaycnt_ok = 0; (*ic->ic_delete_key)(ic, ic->ic_bss, |