diff options
Diffstat (limited to 'etc/inc/config.inc')
-rw-r--r-- | etc/inc/config.inc | 8 |
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 |