summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Ullrich <sullrich@pfsense.org>2007-04-23 23:40:01 +0000
committerScott Ullrich <sullrich@pfsense.org>2007-04-23 23:40:01 +0000
commit23be6f1bc1f2915d4a833604cc536ee856cfeaec (patch)
tree0a18f970f2b3788f7f140432fdbc3b74f7081ca0
parent8cd7e1fa57a5926f23e65b577c36d4ad442d90ab (diff)
downloadpfsense-23be6f1bc1f2915d4a833604cc536ee856cfeaec.zip
pfsense-23be6f1bc1f2915d4a833604cc536ee856cfeaec.tar.gz
When restoring a configuration via the webConfigurator detect that a interface mismatch has occured and redirect the user to the assign interface screen. Once the assign interface Save button has been pressed go ahead and reboot. This might just prevent someone from throwing a fit since they do not have console access.
-rwxr-xr-xusr/local/www/diag_backup.php5
-rwxr-xr-xusr/local/www/interfaces_assign.php5
2 files changed, 10 insertions, 0 deletions
diff --git a/usr/local/www/diag_backup.php b/usr/local/www/diag_backup.php
index 2f39422..d881358 100755
--- a/usr/local/www/diag_backup.php
+++ b/usr/local/www/diag_backup.php
@@ -184,6 +184,11 @@ if ($_POST) {
$reboot_needed = true;
}
setup_serial_port();
+ if(is_interface_mismatch() == true) {
+ touch("/var/run/interface_mismatch_reboot_needed");
+ $reboot_needed = false;
+ header("Location: interfaces_assign.php");
+ }
} else {
$input_errors[] = "The configuration could not be restored.";
}
diff --git a/usr/local/www/interfaces_assign.php b/usr/local/www/interfaces_assign.php
index 7999fa3..2379ca2 100755
--- a/usr/local/www/interfaces_assign.php
+++ b/usr/local/www/interfaces_assign.php
@@ -195,6 +195,9 @@ if ($_GET['act'] == "add") {
$pgtitle = "Interfaces: Assign";
include("head.inc");
+if(file_exists("/var/run/interface_mismatch_reboot_needed"))
+ $savemsg = "Interface mismatch deteceted. Please resolved the mismatch and click Save. The firewall will reboot afterwards.";
+
?>
<body link="#0000CC" vlink="#0000CC" alink="#0000CC">
@@ -287,6 +290,8 @@ include("head.inc");
if ($_POST) {
if (!$input_errors)
touch("/tmp/reload_interfaces");
+ if(file_exists("/var/run/interface_mismatch_reboot_needed"))
+ exec("/etc/rc.reboot");
}
?> \ No newline at end of file
OpenPOWER on IntegriCloud