hostapd: add acct_interval option
[openwrt/openwrt.git] / package / network / services / hostapd / files / hostapd.sh
index 6fb902e3765c50a7b9b2b553b9945ac60011ad80..d94aa38807e927301304c0cd6aa0687ff7b19d3d 100644 (file)
@@ -66,6 +66,8 @@ hostapd_common_add_device_config() {
        config_add_string require_mode
        config_add_boolean legacy_rates
 
+       config_add_string acs_chan_bias
+
        hostapd_add_log_config
 }
 
@@ -76,7 +78,7 @@ hostapd_prepare_device_config() {
        local base="${config%%.conf}"
        local base_cfg=
 
-       json_get_vars country country_ie beacon_int doth require_mode legacy_rates
+       json_get_vars country country_ie beacon_int:100 doth require_mode legacy_rates acs_chan_bias
 
        hostapd_set_log_options base_cfg
 
@@ -93,6 +95,8 @@ hostapd_prepare_device_config() {
                [ "$hwmode" = "a" -a "$doth" -gt 0 ] && append base_cfg "ieee80211h=1" "$N"
        }
 
+       [ -n "$acs_chan_bias" ] && append base_cfg "acs_chan_bias=$acs_chan_bias" "$N"
+
        local brlist= br
        json_get_values basic_rate_list basic_rate
        local rlist= r
@@ -121,7 +125,7 @@ hostapd_prepare_device_config() {
 
        [ -n "$rlist" ] && append base_cfg "supported_rates=$rlist" "$N"
        [ -n "$brlist" ] && append base_cfg "basic_rates=$brlist" "$N"
-       [ -n "$beacon_int" ] && append base_cfg "beacon_int=$beacon_int" "$N"
+       append base_cfg "beacon_int=$beacon_int" "$N"
 
        cat > "$config" <<EOF
 driver=$driver
@@ -151,6 +155,7 @@ hostapd_common_add_bss_config() {
        config_add_string acct_server
        config_add_string acct_secret
        config_add_int acct_port
+       config_add_int acct_interval
 
        config_add_string dae_client
        config_add_string dae_secret
@@ -207,8 +212,8 @@ hostapd_set_bss_options() {
                wps_pushbutton wps_label ext_registrar wps_pbc_in_m1 wps_ap_setup_locked \
                wps_independent wps_device_type wps_device_name wps_manufacturer wps_pin \
                macfilter ssid wmm uapsd hidden short_preamble rsn_preauth \
-               iapp_interface eapol_version acct_server acct_secret acct_port \
-               dynamic_vlan ieee80211w
+               iapp_interface eapol_version dynamic_vlan ieee80211w \
+               acct_server acct_secret acct_port acct_interval
 
        set_default isolate 0
        set_default maxassoc 0
@@ -249,6 +254,8 @@ hostapd_set_bss_options() {
                append bss_conf "acct_server_port=$acct_port" "$N"
                [ -n "$acct_secret" ] && \
                        append bss_conf "acct_server_shared_secret=$acct_secret" "$N"
+               [ -n "$acct_interval" ] && \
+                       append bss_conf "radius_acct_interim_interval=$acct_interval" "$N"
        }
 
        local vlan_possible=""
@@ -708,9 +715,7 @@ wpa_supplicant_add_network() {
                        ;;
                esac
        }
-       local beacon_int brates mrate
        [ -n "$bssid" ] && append network_data "bssid=$bssid" "$N$T"
-       [ -n "$beacon_int" ] && append network_data "beacon_int=$beacon_int" "$N$T"
 
        local bssid_blacklist bssid_whitelist
        json_get_values bssid_blacklist bssid_blacklist