mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-10 02:55:55 +02:00
hostapd: make client isolation configurable via WebUI
hostapd supports client-isolation, but this feature could not be configured via the WebUI so far. Since it might be desired in public wireless networks, or even private ones, it makes sense to provide a radio button to let the user decide on. Fixes #11974. Signed-off-by: Peter Müller <peter.mueller@ipfire.org> Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
committed by
Michael Tremer
parent
a10b0e5b44
commit
5b4464a944
@@ -75,6 +75,7 @@ $wlanapsettings{'DRIVER'} = 'NL80211';
|
||||
$wlanapsettings{'HTCAPS'} = '';
|
||||
$wlanapsettings{'VHTCAPS'} = '';
|
||||
$wlanapsettings{'NOSCAN'} = 'off';
|
||||
$wlanapsettings{'CLIENTISOLATION'} = 'off';
|
||||
|
||||
&General::readhash("/var/ipfire/wlanap/settings", \%wlanapsettings);
|
||||
&Header::getcgihash(\%wlanapsettings);
|
||||
@@ -252,6 +253,10 @@ $checked{'NOSCAN'}{'off'} = '';
|
||||
$checked{'NOSCAN'}{'on'} = '';
|
||||
$checked{'NOSCAN'}{$wlanapsettings{'NOSCAN'}} = "checked='checked'";
|
||||
|
||||
$checked{'CLIENTISOLATION'}{'off'} = '';
|
||||
$checked{'CLIENTISOLATION'}{'on'} = '';
|
||||
$checked{'CLIENTISOLATION'}{$wlanapsettings{'CLIENTISOLATION'}} = "checked='checked'";
|
||||
|
||||
$selected{'ENC'}{$wlanapsettings{'ENC'}} = "selected='selected'";
|
||||
$selected{'CHANNEL'}{$wlanapsettings{'CHANNEL'}} = "selected='selected'";
|
||||
$selected{'COUNTRY'}{$wlanapsettings{'COUNTRY'}} = "selected='selected'";
|
||||
@@ -377,6 +382,7 @@ print <<END
|
||||
<tr><td width='25%' class='base'>SSID: </td><td class='base' colspan='3'><input type='text' name='SSID' size='30' value='$wlanapsettings{'SSID'}' /></td></tr>
|
||||
<!--SSID Broadcast: on => HIDESSID: off -->
|
||||
<tr><td width='25%' class='base'>SSID Broadcast: </td><td class='base' colspan='3'>on <input type='radio' name='HIDESSID' value='off' $checked{'HIDESSID'}{'off'} /> | <input type='radio' name='HIDESSID' value='on' $checked{'HIDESSID'}{'on'} /> off</td></tr>
|
||||
<tr><td width='25%' class='base'>Client Isolation: </td><td class='base' colspan='3'>on <input type='radio' name='CLIENTISOLATION' value='off' $checked{'CLIENTISOLATION'}{'off'} /> | <input type='radio' name='CLIENTISOLATION' value='on' $checked{'CLIENTISOLATION'}{'on'} /> off</td></tr>
|
||||
|
||||
|
||||
<tr><td width='25%' class='base'>$Lang::tr{'wlanap country'}: </td><td class='base' colspan='3'>
|
||||
@@ -632,6 +638,14 @@ END
|
||||
|
||||
}
|
||||
|
||||
# https://forum.ipfire.org/viewtopic.php?f=22&t=12274&p=79070#p79070
|
||||
if ( $wlanapsettings{'CLIENTISOLATION'} eq 'on' ){
|
||||
print CONFIGFILE <<END
|
||||
ap_isolate=1
|
||||
END
|
||||
;
|
||||
}
|
||||
|
||||
if ( $wlanapsettings{'NOSCAN'} eq 'on' ){
|
||||
print CONFIGFILE <<END
|
||||
noscan=1
|
||||
|
||||
Reference in New Issue
Block a user