aboutsummaryrefslogtreecommitdiffstats
path: root/package/hostapd/patches/100-pending_work.patch
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2012-01-24 01:49:23 +0000
committerFelix Fietkau <nbd@openwrt.org>2012-01-24 01:49:23 +0000
commit53c6db5ab43194c89cc7fe2d03dbd630c39bcfda (patch)
treeac95f43ca393bda15b6733484b69c099a2f358cf /package/hostapd/patches/100-pending_work.patch
parent9cf1d4e06e836d0a6270bb70f6aee5ba5c607f18 (diff)
downloadupstream-53c6db5ab43194c89cc7fe2d03dbd630c39bcfda.tar.gz
upstream-53c6db5ab43194c89cc7fe2d03dbd630c39bcfda.tar.bz2
upstream-53c6db5ab43194c89cc7fe2d03dbd630c39bcfda.zip
hostapd: merge an upstream workaround for broken clients sending the wrong wpa type (should fix #9561)
SVN-Revision: 29876
Diffstat (limited to 'package/hostapd/patches/100-pending_work.patch')
-rw-r--r--package/hostapd/patches/100-pending_work.patch18
1 files changed, 18 insertions, 0 deletions
diff --git a/package/hostapd/patches/100-pending_work.patch b/package/hostapd/patches/100-pending_work.patch
index d9824f3178..8b318190fd 100644
--- a/package/hostapd/patches/100-pending_work.patch
+++ b/package/hostapd/patches/100-pending_work.patch
@@ -160,3 +160,21 @@
if (bss != &drv->first_bss) {
struct i802_bss *tbss;
+--- a/src/ap/wpa_auth.c
++++ b/src/ap/wpa_auth.c
+@@ -776,7 +776,14 @@ void wpa_receive(struct wpa_authenticato
+ }
+
+ if (sm->wpa == WPA_VERSION_WPA2) {
+- if (key->type != EAPOL_KEY_TYPE_RSN) {
++ if (key->type == EAPOL_KEY_TYPE_WPA) {
++ /*
++ * Some deployed station implementations seem to send
++ * msg 4/4 with incorrect type value in WPA2 mode.
++ */
++ wpa_printf(MSG_DEBUG, "Workaround: Allow EAPOL-Key "
++ "with unexpected WPA type in RSN mode");
++ } else if (key->type != EAPOL_KEY_TYPE_RSN) {
+ wpa_printf(MSG_DEBUG, "Ignore EAPOL-Key with "
+ "unexpected type %d in RSN mode",
+ key->type);