summaryrefslogtreecommitdiffstats
path: root/etc/inc
diff options
context:
space:
mode:
authorErmal Luçi <eri@pfsense.org>2009-06-08 22:14:34 +0000
committerErmal Luçi <eri@pfsense.org>2009-06-08 22:14:34 +0000
commite1c449c0362c89b1d7c4ab2a1a860e88938cfcde (patch)
tree86cae093b6bad3bcbd9f13c3042b78da7fe31ae4 /etc/inc
parent83bdca55920ca6ab3d848f0993d57a1f9b85098f (diff)
downloadpfsense-e1c449c0362c89b1d7c4ab2a1a860e88938cfcde.zip
pfsense-e1c449c0362c89b1d7c4ab2a1a860e88938cfcde.tar.gz
Revert "Do not use tags for vlan interface names since there might be same vlan tags on different parent interfaces and this will break configs and will hide the reason it does not work. Thanks-to: smos@"
This reverts commit 83bdca55920ca6ab3d848f0993d57a1f9b85098f.
Diffstat (limited to 'etc/inc')
-rw-r--r--etc/inc/config.inc8
-rw-r--r--etc/inc/interfaces.inc16
-rw-r--r--etc/inc/upgrade_config.inc2
3 files changed, 14 insertions, 12 deletions
diff --git a/etc/inc/config.inc b/etc/inc/config.inc
index 5d8661a..6dd751d 100644
--- a/etc/inc/config.inc
+++ b/etc/inc/config.inc
@@ -810,12 +810,12 @@ EOD;
if (is_array($config['vlans']['vlan']) && count($config['vlans']['vlan'])) {
echo "\n\nVLAN interfaces:\n\n";
- foreach ($config['vlans']['vlan'] as $vlanid => $vlan) {
+ foreach ($config['vlans']['vlan'] as $vlan) {
- echo sprintf("% -8s%s\n", "vlan{$vlanid}",
+ echo sprintf("% -8s%s\n", "vlan{$vlan['tag']}",
"VLAN tag {$vlan['tag']}, interface {$vlan['if']}");
- $iflist['vlan' . $vlanid] = array();
+ $iflist['vlan' . $vlan['tag']] = array();
}
}
@@ -1146,7 +1146,7 @@ EOD;
echo "Enter the VLAN tag (1-4094): ";
$vlan['tag'] = chop(fgets($fp));
- $vlan['vlanif'] = "vlan{$vlanif}";
+ $vlan['vlanif'] = "vlan{$vlan['tag']}";
if (!is_numericint($vlan['tag']) || ($vlan['tag'] < 1) || ($vlan['tag'] > 4094)) {
echo "\nInvalid VLAN tag '{$vlan['tag']}'\n";
continue;
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc
index 603e7b3..72fb3a1 100644
--- a/etc/inc/interfaces.inc
+++ b/etc/inc/interfaces.inc
@@ -88,9 +88,9 @@ function interfaces_loopback_configure() {
function interfaces_vlan_configure() {
global $config;
if (is_array($config['vlans']['vlan']) && count($config['vlans']['vlan'])) {
- foreach ($config['vlans']['vlan'] as $vlanid => $vlan) {
+ foreach ($config['vlans']['vlan'] as $vlan) {
if(empty($vlan['vlanif']))
- $vlan['vlanif'] = "vlan{$vlanid}";
+ $vlan['vlanif'] = "vlan{$vlan['tag']}";
/* XXX: Maybe we should report any errors?! */
interface_vlan_configure($vlan);
}
@@ -105,10 +105,11 @@ function interface_vlan_configure($vlan) {
return;
}
$if = $vlan['if'];
+ $vlanif = empty($vlan['vlanif']) ? "vlan{$vlan['tag']}" : $vlan['vlanif'];
$tag = $vlan['tag'];
- if (empty($if)) {
- log_error("interface_vlan_confgure called with parent if undefined.");
+ if(empty($if)) {
+ log_error("interface_vlan_confgure called with if undefined.");
return;
}
@@ -147,13 +148,14 @@ function interface_vlan_configure($vlan) {
/* all vlans need to spoof their parent mac address, too. see
* ticket #1514: http://cvstrac.pfsense.com/tktview?tn=1514,33
*/
- foreach ($config['interfaces'] as $interfaces) {
- if ($interfaces['if'] == $if && $interfaces['spoofmac']) {
+ foreach($config['interfaces'] as $interfaces) {
+ if($interfaces['if'] == $if && $interfaces['spoofmac']) {
mwexec("/sbin/ifconfig " . escapeshellarg($vlanif) .
" link " . escapeshellarg($interfaces['spoofmac']));
}
}
+ /* XXX: ermal -- for now leave it here at the moment it does not hurt. */
interfaces_bring_up($if);
return $vlanif;
@@ -168,7 +170,7 @@ function interface_qinq_configure($vlan, $fd = NULL) {
}
$if = $vlan['if'];
- $vlanif = empty($vlan['vlanif']) ? "vlan" . count($config['qinqs']['qinq']) : $vlan['vlanif'];
+ $vlanif = empty($vlan['vlanif']) ? "vlan{$vlan['tag']}" : $vlan['vlanif'];
$tag = $vlan['tag'];
if(empty($if)) {
log_error("interface_qinq_confgure called with if undefined.\n");
diff --git a/etc/inc/upgrade_config.inc b/etc/inc/upgrade_config.inc
index 48b94d5..2e00622 100644
--- a/etc/inc/upgrade_config.inc
+++ b/etc/inc/upgrade_config.inc
@@ -772,7 +772,7 @@ function upgrade_044_to_045() {
global $config;
if (is_array($config['vlans']['vlan']) && count($config['vlans']['vlan'])) {
foreach ($config['vlans']['vlan'] as $id => &$vlan)
- $vlan['vlanif'] = "vlan{$id}";
+ $vlan['vlanif'] = "vlan{$vlan['tag']}";
}
}
OpenPOWER on IntegriCloud