summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/inc/config.inc8
1 files changed, 6 insertions, 2 deletions
diff --git a/etc/inc/config.inc b/etc/inc/config.inc
index b29b210..e71b489 100644
--- a/etc/inc/config.inc
+++ b/etc/inc/config.inc
@@ -297,11 +297,15 @@ function discover_last_backup() {
}
function restore_backup($file) {
+ config_lock();
if(file_exists($file)) {
conf_mount_rw();
- system("cp $file /cf/conf/config.xml");
+ copy("$file /cf/conf/config.xml");
+ unlink_if_exists("/tmp/config.cache");
+ log_error("pfSense is restoring the configuration $file");
+ conf_mount_ro();
}
- log_error("pfSense is restoring the configuration $file");
+ config_unlock();
}
/****f* config/parse_config_bootup
OpenPOWER on IntegriCloud