luci-mod-network: (wireless) Expose 802.11k settings.
authorPaul Dee <itsascambutmailmeanyway@gmail.com>
Thu, 2 Dec 2021 20:01:16 +0000 (21:01 +0100)
committerPaul Dee <itsascambutmailmeanyway@gmail.com>
Sat, 10 Dec 2022 01:58:40 +0000 (02:58 +0100)
Tested on: 21.02.1

Signed-off-by: Paul Dee <itsascambutmailmeanyway@gmail.com>
modules/luci-mod-network/htdocs/luci-static/resources/view/network/wireless.js

index dec45862688f783666e9e8bf572fdfba7fbc4fea..b094bf37525ad4eb039eb54aef28d88b6f8ec316 100644 (file)
@@ -1151,6 +1151,24 @@ return view.extend({
                                        o = ss.taboption('advanced', form.Flag, 'multicast_to_unicast', _('Multi To Unicast'), _('ARP, IPv4 and IPv6 (even 802.1Q) with multicast destination MACs are unicast to the STA MAC address. Note: This is not Directed Multicast Service (DMS) in 802.11v. Note: might break receiver STA multicast expectations.'));
                                        o.rmempty = true;
 
+                                       /* 802.11k settings start */
+                                       // Probe 802.11k support via EAP support (full hostapd has EAP)
+                                       if (L.hasSystemFeature('hostapd', 'eap')) {
+                                               o = ss.taboption('advanced', form.Flag, 'ieee80211k', _('802.11k RRM'), _('Radio Resource Measurement - Sends beacons to assist roaming. Not all clients support this.'));
+                                               // add_dependency_permutations(o, { mode: ['ap', 'ap-wds'], encryption: ['psk', 'psk2', 'psk-mixed', 'sae', 'sae-mixed'] });
+                                               o.depends('mode', 'ap');
+                                               o.depends('mode', 'ap-wds');
+
+                                               o = ss.taboption('advanced', form.Flag, 'rrm_neighbor_report', _('Neighbour Report'), _('802.11k: Enable neighbor report via radio measurements.'));
+                                               o.depends({ ieee80211k: '1' });
+                                               o.default = o.enabled;
+
+                                               o = ss.taboption('advanced', form.Flag, 'rrm_beacon_report', _('Beacon Report'), _('802.11k: Enable beacon report via radio measurements.'));
+                                               o.depends({ ieee80211k: '1' });
+                                               o.default = o.enabled;
+                                       }
+                                       /* 802.11k settings end */
+
                                        o = ss.taboption('advanced', form.Flag, 'isolate', _('Isolate Clients'), _('Prevents client-to-client communication'));
                                        o.depends('mode', 'ap');
                                        o.depends('mode', 'ap-wds');