hostapd: append nasid to config for all WPA types
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 26 Mar 2015 23:34:10 +0000 (23:34 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Thu, 26 Mar 2015 23:34:10 +0000 (23:34 +0000)
The 802.11r implementation in hostapd uses nas_identifier as PMK-R0 Key
Holder identifier. As 802.11r can also be used with WPA Personal, nasid
should be appended to the hostapd config for all WPA types.

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

package/network/services/hostapd/files/hostapd.sh
package/network/services/hostapd/files/netifd.sh

index b8ba7bd..2a38d16 100644 (file)
@@ -129,9 +129,7 @@ hostapd_set_bss_options() {
                                append "$var" "radius_das_port=${dae_port:-3799}" "$N"
                                append "$var" "radius_das_client=$dae_client $dae_secret" "$N"
                        }
-                       config_get nasid "$vif" nasid
                        config_get ownip "$vif" ownip
-                       append "$var" "nas_identifier=$nasid" "$N"
                        append "$var" "own_ip_addr=$ownip" "$N"
                        append "$var" "eapol_key_index_workaround=1" "$N"
                        append "$var" "ieee8021x=1" "$N"
@@ -216,6 +214,12 @@ hostapd_set_bss_options() {
        [ -n "$ieee80211d" ] && append "$var" "ieee80211d=$ieee80211d" "$N"
        [ -n "$iapp_interface" ] && append "$var" iapp_interface=$(uci_get_state network "$iapp_interface" ifname "$iapp_interface") "$N"
 
+       if [ "$wpa" -ge "1" ]
+       then
+               config_get nasid "$vif" nasid
+               [ -n "$nasid" ] && append "$var" "nas_identifier=$nasid" "$N"
+       fi
+
        if [ "$wpa" -ge "2" ]
        then
                # RSN -> allow preauthentication. You have two
index 3a64689..26a255f 100644 (file)
@@ -239,7 +239,7 @@ hostapd_set_bss_options() {
                                auth_server auth_secret auth_port \
                                acct_server acct_secret acct_port \
                                dae_client dae_secret dae_port \
-                               nasid ownip \
+                               ownip \
                                eap_reauth_period dynamic_vlan \
                                vlan_naming vlan_tagged_interface \
                                vlan_bridge
@@ -273,7 +273,6 @@ hostapd_set_bss_options() {
                                append bss_conf "radius_das_client=$dae_client $dae_secret" "$N"
                        }
 
-                       append bss_conf "nas_identifier=$nasid" "$N"
                        [ -n "$ownip" ] && append bss_conf "own_ip_addr=$ownip" "$N"
                        append bss_conf "eapol_key_index_workaround=1" "$N"
                        append bss_conf "ieee8021x=1" "$N"
@@ -339,6 +338,11 @@ hostapd_set_bss_options() {
                [ -n "$iapp_interface" ] && append bss_conf "iapp_interface=$iapp_interface" "$N"
        }
 
+       if [ "$wpa" -ge "1" ]; then
+               json_get_vars nasid
+               [ -n "$nasid" ] && append bss_conf "nas_identifier=$nasid" "$N"
+       fi
+
        if [ "$wpa" -ge "2" ]; then
                if [ -n "$network_bridge" -a "$rsn_preauth" = 1 ]; then
                        set_default auth_cache 1