Enable management frame protection in wpa_supplicant, and make it
authorthepeople <thepeople@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 24 Mar 2010 00:21:28 +0000 (00:21 +0000)
committerthepeople <thepeople@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Wed, 24 Mar 2010 00:21:28 +0000 (00:21 +0000)
configurable in /etc/config/wireless.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20395 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/hostapd/files/wpa_supplicant-full.config
package/hostapd/files/wpa_supplicant.sh

index 5e7fd27d1b14ed855f12be2b7372f8cba23e373c..8d6813a56b5279c041d2ea285eb2c7950f435401 100644 (file)
@@ -301,7 +301,7 @@ CONFIG_PEERKEY=y
 # This version is an experimental implementation based on IEEE 802.11w/D1.0
 # draft and is subject to change since the standard has not yet been finalized.
 # Driver support is also needed for IEEE 802.11w.
-#CONFIG_IEEE80211W=y
+CONFIG_IEEE80211W=y
 
 # Select TLS implementation
 # openssl = OpenSSL (default)
index b6499e6c68f54b941b089c46815de9be75c1988e..74d20c66623655fca813e69389c6a2a868bc771b 100644 (file)
@@ -58,6 +58,7 @@ wpa_supplicant_setup_vif() {
                        case "$enc" in
                                *psk2*)
                                        proto='proto=RSN'
+                                       config_get ieee80211w "$vif" ieee80211w
                                ;;
                                *psk*)
                                        proto='proto=WPA'
@@ -67,6 +68,7 @@ wpa_supplicant_setup_vif() {
                *wpa*|*8021x*)
                        proto='proto=WPA2'
                        key_mgmt='WPA-EAP'
+                       config_get ieee80211w "$vif" ieee80211w
                        config_get ca_cert "$vif" ca_cert
                        ca_cert=${ca_cert:+"ca_cert=\"$ca_cert\""}
                        case "$eap_type" in
@@ -90,6 +92,13 @@ wpa_supplicant_setup_vif() {
                        eap_type="eap=$(echo $eap_type | tr 'a-z' 'A-Z')"
                ;;
        esac
+
+       case "$ieee80211w" in
+               [012])
+                       ieee80211w="ieee80211w=$ieee80211w"
+               ;;
+       esac
+
        config_get ifname "$vif" ifname
        config_get bridge "$vif" bridge
        config_get ssid "$vif" ssid
@@ -104,6 +113,7 @@ network={
        $bssid
        key_mgmt=$key_mgmt
        $proto
+       $ieee80211w
        $passphrase
        $pairwise
        $group