diff options
author | Damien Bergamini <damien@cvs.openbsd.org> | 2007-08-01 12:23:27 +0000 |
---|---|---|
committer | Damien Bergamini <damien@cvs.openbsd.org> | 2007-08-01 12:23:27 +0000 |
commit | 1de126f3ece51d8eed80a29bffc74071f997db87 (patch) | |
tree | 8331f0f2ac37eee70088a3b7bd5759f608ad1100 /sys/net80211/ieee80211_crypto.c | |
parent | 21b44d3f4098ddd7475bd5eea91a6cde4eb0d57d (diff) |
all WPA implementations i have tested use EAPOL-Key frames version 1,
so use that too and remove a check in ieee80211_recv_eapol().
WPA1 stores the group key id into bits 4-5 of the EAPOL-Key frame info
field and uses bit 6 to indicate if the key is Rx/Tx or Rx only.
remove a check in ieee80211_eapol_key_decrypt() because WPA1 encrypts
the payload of message 1 of the group-key handshake without setting the
encrypted bit in the info field.
Diffstat (limited to 'sys/net80211/ieee80211_crypto.c')
-rw-r--r-- | sys/net80211/ieee80211_crypto.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index cbe97fda43e..8fa037913c5 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ieee80211_crypto.c,v 1.27 2007/08/01 12:15:48 damien Exp $ */ +/* $OpenBSD: ieee80211_crypto.c,v 1.28 2007/08/01 12:23:26 damien Exp $ */ /* $NetBSD: ieee80211_crypto.c,v 1.5 2003/12/14 09:56:53 dyoung Exp $ */ /*- @@ -754,8 +754,6 @@ ieee80211_eapol_key_decrypt(struct ieee80211_eapol_key *key, len = BE_READ_2(key->paylen); info = BE_READ_2(key->info); - /* should not come here if key data is not encrypted */ - KASSERT(info & EAPOL_KEY_ENCRYPTED); data = (u_int8_t *)(key + 1); switch (info & EAPOL_KEY_VERSION_MASK) { |