Browse Source

Enable management frame protection in wpa_supplicant, and make it configurable in /etc/config/wireless.

Signed-off-by: Stijn Tintel <[email protected]>

SVN-Revision: 20395
Travis Kemen 16 years ago
parent
commit
21f006f156

+ 1 - 1
package/hostapd/files/wpa_supplicant-full.config

@@ -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)

+ 10 - 0
package/hostapd/files/wpa_supplicant.sh

@@ -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