diff options
author | Ermal Luçi <eri@pfsense.org> | 2008-08-31 15:11:40 +0000 |
---|---|---|
committer | Ermal Luçi <eri@pfsense.org> | 2008-08-31 15:11:40 +0000 |
commit | 7a701b1efc8b63acb5ad6930bb0d398ac8526ed0 (patch) | |
tree | 6da332b5ff407db1c2e5ca9ed12cfdd7a443329b /usr/local/www | |
parent | 74d65827db40936f016b5efb71b0a55a75488196 (diff) | |
download | pfsense-7a701b1efc8b63acb5ad6930bb0d398ac8526ed0.zip pfsense-7a701b1efc8b63acb5ad6930bb0d398ac8526ed0.tar.gz |
Fix error checking for wireless interfaces being part of a bridge which is allowed only in hostap mode.
Diffstat (limited to 'usr/local/www')
-rw-r--r-- | usr/local/www/interfaces_bridge_edit.php | 11 | ||||
-rwxr-xr-x | usr/local/www/interfaces_wlan.inc | 5 |
2 files changed, 11 insertions, 5 deletions
diff --git a/usr/local/www/interfaces_bridge_edit.php b/usr/local/www/interfaces_bridge_edit.php index a1b9fdc..05ddc2d 100644 --- a/usr/local/www/interfaces_bridge_edit.php +++ b/usr/local/www/interfaces_bridge_edit.php @@ -123,6 +123,17 @@ if ($_POST) { $input_errors[] = "{$ifdescr} interface path cost for STP needs to be an interger between 1 and 200000000."; $i++; } + + if (!is_array($_POST['members']) || count($_POST['members'] < 2) + $input_errors[] = "You must select at least 2 member interfaces for a bridge."; + + if (is_array($_POST['members'])) { + foreach($_POST['members'] as $ifmembers) + if (is_array($config['interfaces'][$ifmembers]['wireless']) && + $config['interfaces'][$ifmembers]['wireless']['mode'] != "hostap") + $input_errors[] = "Bridging a wireless interface is only possible in hostap mode."; + } + if (!$input_errors) { $bridge = array(); $bridge['members'] = implode(',', $_POST['members']); diff --git a/usr/local/www/interfaces_wlan.inc b/usr/local/www/interfaces_wlan.inc index 84c9e6a..62d1f09 100755 --- a/usr/local/www/interfaces_wlan.inc +++ b/usr/local/www/interfaces_wlan.inc @@ -86,11 +86,6 @@ function wireless_config_post() { $reqdfieldsn = explode(",", "Mode,SSID"); do_input_validation($_POST, $reqdfields, $reqdfieldsn, &$input_errors); - if (!$input_errors) { - /* bridge check (hostap only!) */ - if ($pconfig['bridge'] && ($pconfig['mode'] != "hostap")) - $input_errors[] = "Bridging a wireless interface is only possible in hostap mode."; - } } /* loop through keys and enforce size */ |