Author: blogic
Date: 2014-10-20 13:19:21 +0200 (Mon, 20 Oct 2014)
New Revision: 43001

Modified:
   trunk/package/network/services/hostapd/files/netifd.sh
Log:
hostapd: Add wpa_psk_file option to netifd.sh

The wpa_psk_file option offers the possibility to use a different WPA-PSK key 
for each client. The directive points to a file with the following syntax:

mac_address wpa_passphrase_or_hex_key

Example:

00:11:22:33:44:55 passphrase_for_client_1
00:11:22:33:44:67 passphrase_for_client_2
00:11:22:33:44:89 
0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef

So it is possible to specify both ASCII passphrases and raw 64-chars hex keys.

Signed-off-by: Vittorio Gambaletta <[email protected]>

Modified: trunk/package/network/services/hostapd/files/netifd.sh
===================================================================
--- trunk/package/network/services/hostapd/files/netifd.sh      2014-10-20 
10:00:02 UTC (rev 43000)
+++ trunk/package/network/services/hostapd/files/netifd.sh      2014-10-20 
11:19:21 UTC (rev 43001)
@@ -134,6 +134,8 @@
 
        config_add_string 'key1:wepkey' 'key2:wepkey' 'key3:wepkey' 
'key4:wepkey' 'password:wpakey'
 
+       config_add_string wpa_psk_file
+
        config_add_boolean wps_pushbutton wps_label ext_registrar wps_pbc_in_m1
        config_add_string wps_device_type wps_device_name wps_manufacturer 
wps_pin
 
@@ -202,7 +204,7 @@
                        wps_not_configured=1
                ;;
                psk)
-                       json_get_vars key
+                       json_get_vars key wpa_psk_file
                        if [ ${#key} -lt 8 ]; then
                                wireless_setup_vif_failed INVALID_WPA_PSK
                                return 1
@@ -211,6 +213,10 @@
                        else
                                append bss_conf "wpa_passphrase=$key" "$N"
                        fi
+                       [ -n "$wpa_psk_file" ] && {
+                               [ -e "$wpa_psk_file" ] || touch "$wpa_psk_file"
+                               append bss_conf "wpa_psk_file=$wpa_psk_file" 
"$N"
+                       }
                        wps_possible=1
                ;;
                eap)
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to