Преглед на файлове

hostapd: introduce "wpa_pair_rekey" and "wpa_master_rekey" options, remove hardcoded wpa rekey intervals, remove hardcoded radius_acct_interim_interval as it might overrule the radius Acct-Interim-Interval attribute

SVN-Revision: 28207
Jo-Philipp Wich преди 14 години
родител
ревизия
964feeb54d
променени са 1 файла, в които са добавени 12 реда и са изтрити 5 реда
  1. 12 5
      package/hostapd/files/hostapd.sh

+ 12 - 5
package/hostapd/files/hostapd.sh

@@ -1,10 +1,13 @@
 hostapd_set_bss_options() {
 	local var="$1"
 	local vif="$2"
-	local enc wpa_group_rekey wps_possible
+	local enc wep_rekey wpa_group_rekey wpa_pair_rekey wpa_master_rekey wps_possible
 
 	config_get enc "$vif" encryption
-	config_get wpa_group_rekey "$vif" wpa_group_rekey
+	config_get wep_rekey        "$vif" wep_rekey        # 300
+	config_get wpa_group_rekey  "$vif" wpa_group_rekey  # 300
+	config_get wpa_pair_rekey   "$vif" wpa_pair_rekey   # 300
+	config_get wpa_master_rekey "$vif" wpa_master_rekey # 640
 	config_get_bool ap_isolate "$vif" isolate 0
 
 	config_get device "$vif" device
@@ -64,6 +67,9 @@ hostapd_set_bss_options() {
 				append "$var" "wpa_passphrase=$psk" "$N"
 			fi
 			wps_possible=1
+			[ -n "$wpa_group_rekey"  ] && append "$var" "wpa_group_rekey=$wpa_group_rekey" "$N"
+			[ -n "$wpa_pair_rekey"   ] && append "$var" "wpa_ptk_rekey=$wpa_pair_rekey"    "$N"
+			[ -n "$wpa_master_rekey" ] && append "$var" "wpa_gmk_rekey=$wpa_master_rekey"  "$N"
 		;;
 		*wpa*)
 			# required fields? formats?
@@ -88,11 +94,11 @@ hostapd_set_bss_options() {
 			config_get nasid "$vif" nasid
 			append "$var" "nas_identifier=$nasid" "$N"
 			append "$var" "eapol_key_index_workaround=1" "$N"
-			append "$var" "radius_acct_interim_interval=300" "$N"
 			append "$var" "ieee8021x=1" "$N"
 			append "$var" "wpa_key_mgmt=WPA-EAP" "$N"
-			append "$var" "wpa_group_rekey=300" "$N"
-			append "$var" "wpa_gmk_rekey=640" "$N"
+			[ -n "$wpa_group_rekey"  ] && append "$var" "wpa_group_rekey=$wpa_group_rekey" "$N"
+			[ -n "$wpa_pair_rekey"   ] && append "$var" "wpa_ptk_rekey=$wpa_pair_rekey"    "$N"
+			[ -n "$wpa_master_rekey" ] && append "$var" "wpa_gmk_rekey=$wpa_master_rekey"  "$N"
 		;;
 		*wep*)
 			config_get key "$vif" key
@@ -111,6 +117,7 @@ hostapd_set_bss_options() {
 				*)
 					append "$var" "wep_key0=$(prepare_key_wep "$key")" "$N"
 					append "$var" "wep_default_key=0" "$N"
+					[ -n "$wep_rekey" ] && append "$var" "wep_rekey_period=$wep_rekey" "$N"
 				;;
 			esac
 			case "$enc" in