summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorErmal <eri@pfsense.org>2010-05-25 22:24:02 +0000
committerErmal <eri@pfsense.org>2010-05-25 22:24:02 +0000
commitd1eea5235e56d311312248e6ec0cb6b3311b6462 (patch)
treebbec723e7fe782f6fdfb65a5c6fa0e2c60476420 /etc
parentd76f45b1a64a2dbf5b0dee7cc3eb89fc62a35e5d (diff)
downloadpfsense-d1eea5235e56d311312248e6ec0cb6b3311b6462.zip
pfsense-d1eea5235e56d311312248e6ec0cb6b3311b6462.tar.gz
On gre/gif case when the interface is saved do a reconfigure of the underlying interface itself. This helps when an interface is enabled/disabled as reported on http://forum.pfsense.org/index.php/topic,25329.0.html.
Diffstat (limited to 'etc')
-rw-r--r--etc/inc/interfaces.inc15
1 files changed, 15 insertions, 0 deletions
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc
index ade937e..9ff2c40 100644
--- a/etc/inc/interfaces.inc
+++ b/etc/inc/interfaces.inc
@@ -1952,10 +1952,25 @@ function interface_configure($interface = "wan", $reloadall = false) {
mwexec("/sbin/ifconfig " . escapeshellarg($realif) .
" " . escapeshellarg($wancfg['ipaddr'] . "/" .
$wancfg['subnet']));
+ } else if (substr($realif, 0, 3) == "gre") {
+ if (is_array($config['gres']['gre'])) {
+ foreach ($config['gres']['gre'] as $gre)
+ if ($gre['greif'] == $realif)
+ interface_gre_configure($gre);
+ }
+ } else if (substr($realif, 0, 3) == "gif") {
+ if (is_array($config['gifs']['gif'])) {
+ foreach ($config['gifs']['gif'] as $gif)
+ if($gif['gifif'] == $interface)
+ interface_gif_configure($gif);
+ }
+ } else if (substr($realif, 0, 4) == "ovpn") {
+ /* XXX: Should be done anything?! */
}
if (is_ipaddr($wancfg['gateway']))
file_put_contents("{$g['tmp_path']}/{$realif}_router", $wancfg['gateway']);
+ break;
}
if(does_interface_exist($wancfg['if']))
OpenPOWER on IntegriCloud