summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRany Hany2025-11-16 21:04:54 +0000
committerRobert Marko2025-11-19 12:57:30 +0000
commitb947064db46f280ba4e2c937b3d79cedb22511db (patch)
treef85792cbff00d204fc46e1c81b36adf89df4bba8
parentf4ff823435edd5343c54d01cb717dcadb12eaf13 (diff)
downloadopenwrt-b947064db46f280ba4e2c937b3d79cedb22511db.tar.gz
wifi-scripts: allow rssi_reject_assoc_timeout to be configured
This is useful to alter the default ban time after an STA association is rejected for being below RSSI threshold. Signed-off-by: Rany Hany <rany_hany@riseup.net> Link: https://github.com/openwrt/openwrt/pull/20811 Signed-off-by: Robert Marko <robimarko@gmail.com>
-rw-r--r--package/network/config/wifi-scripts/files-ucode/usr/share/schema/wireless.wifi-device.json7
-rw-r--r--package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc2
-rw-r--r--package/network/config/wifi-scripts/files/lib/netifd/hostapd.sh6
3 files changed, 12 insertions, 3 deletions
diff --git a/package/network/config/wifi-scripts/files-ucode/usr/share/schema/wireless.wifi-device.json b/package/network/config/wifi-scripts/files-ucode/usr/share/schema/wireless.wifi-device.json
index 8eae28c0c6..7b907891a0 100644
--- a/package/network/config/wifi-scripts/files-ucode/usr/share/schema/wireless.wifi-device.json
+++ b/package/network/config/wifi-scripts/files-ucode/usr/share/schema/wireless.wifi-device.json
@@ -587,6 +587,13 @@
"type": "number",
"default": 0
},
+ "rssi_reject_assoc_timeout": {
+ "description": "Association retry delay in seconds allowed by the STA if RSSI has not met the threshold",
+ "type": "number",
+ "default": 30,
+ "minimum": 0,
+ "maximum": 255
+ },
"rts": {
"description": "Override the RTS/CTS threshold",
"type": "number"
diff --git a/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc b/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc
index 5604eb1266..bf8fe234e1 100644
--- a/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc
+++ b/package/network/config/wifi-scripts/files-ucode/usr/share/ucode/wifi/hostapd.uc
@@ -489,7 +489,7 @@ function generate(config) {
append_vars(config, [ 'airtime_mode' ]);
/* assoc/thresholds */
- append_vars(config, [ 'rssi_reject_assoc_rssi', 'rssi_ignore_probe_request', 'iface_max_num_sta', 'no_probe_resp_if_max_sta' ]);
+ append_vars(config, [ 'rssi_reject_assoc_rssi', 'rssi_reject_assoc_timeout', 'rssi_ignore_probe_request', 'iface_max_num_sta', 'no_probe_resp_if_max_sta' ]);
/* ACS / Radar*/
if (!phy_features.radar_background || config.band != '5g')
diff --git a/package/network/config/wifi-scripts/files/lib/netifd/hostapd.sh b/package/network/config/wifi-scripts/files/lib/netifd/hostapd.sh
index 1b8369c5a4..5ae9965632 100644
--- a/package/network/config/wifi-scripts/files/lib/netifd/hostapd.sh
+++ b/package/network/config/wifi-scripts/files/lib/netifd/hostapd.sh
@@ -126,6 +126,7 @@ hostapd_common_add_device_config() {
config_add_int cell_density
config_add_int rts_threshold
config_add_int rssi_reject_assoc_rssi
+ config_add_int rssi_reject_assoc_timeout
config_add_int rssi_ignore_probe_request
config_add_int maxassoc
config_add_int reg_power_type
@@ -148,8 +149,8 @@ hostapd_prepare_device_config() {
json_get_vars country country3 country_ie beacon_int:100 doth require_mode legacy_rates \
acs_chan_bias local_pwr_constraint spectrum_mgmt_required airtime_mode cell_density \
- rts_threshold beacon_rate rssi_reject_assoc_rssi rssi_ignore_probe_request maxassoc \
- mbssid:0 band reg_power_type stationary_ap
+ rts_threshold beacon_rate rssi_reject_assoc_rssi rssi_reject_assoc_timeout rssi_ignore_probe_request \
+ maxassoc mbssid:0 band reg_power_type stationary_ap
hostapd_set_log_options base_cfg
@@ -242,6 +243,7 @@ hostapd_prepare_device_config() {
done
[ -n "$rssi_reject_assoc_rssi" ] && append base_cfg "rssi_reject_assoc_rssi=$rssi_reject_assoc_rssi" "$N"
+ [ -n "$rssi_reject_assoc_timeout" ] && append base_cfg "rssi_reject_assoc_timeout=$rssi_reject_assoc_timeout" "$N"
[ -n "$rssi_ignore_probe_request" ] && append base_cfg "rssi_ignore_probe_request=$rssi_ignore_probe_request" "$N"
[ -n "$beacon_rate" ] && append base_cfg "beacon_rate=$beacon_rate" "$N"
[ -n "$rlist" ] && append base_cfg "supported_rates=$rlist" "$N"