From e2a82d38e70b9fd32f8df6173844f3e8743b4940 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Thu, 2 Apr 2015 21:06:27 +0200 Subject: [PATCH] rc: fix factory defaults #124 --- src/etc/inc/config.lib.inc | 23 ++++++++++------------- src/etc/rc.initial.defaults | 15 +++------------ 2 files changed, 13 insertions(+), 25 deletions(-) diff --git a/src/etc/inc/config.lib.inc b/src/etc/inc/config.lib.inc index 1029f26b2..6a9d574f1 100644 --- a/src/etc/inc/config.lib.inc +++ b/src/etc/inc/config.lib.inc @@ -198,15 +198,12 @@ function write_config($desc = 'Unknown', $backup = true) * RESULT * integer - indicates completion ******/ -function reset_factory_defaults($lock = false) +function reset_factory_defaults() { - global $g; - - if (!$lock) - $lockkey = lock('config', LOCK_EX); + $lockkey = lock('config', LOCK_EX); /* create conf directory, if necessary */ - safe_mkdir('/conf'); + @mkdir('/conf'); /* clear out /conf */ $dh = opendir('/conf'); @@ -217,17 +214,17 @@ function reset_factory_defaults($lock = false) } closedir($dh); - /* copy default configuration */ - copy('/usr/local/etc/config.xml', '/conf/config.xml'); - disable_security_checks(); /* call the wizard */ - touch("/conf/trigger_initial_wizard"); - if (!$lock) - unlock($lockkey); + touch('/conf/trigger_initial_wizard'); + + unlock($lockkey); + setup_serial_port(); - return 0; + + /* as we go through a special case directly reboot */ + mwexec('/sbin/shutdown -or now'); } function config_restore($conffile) { diff --git a/src/etc/rc.initial.defaults b/src/etc/rc.initial.defaults index b35fed54f..4d915186e 100755 --- a/src/etc/rc.initial.defaults +++ b/src/etc/rc.initial.defaults @@ -33,26 +33,17 @@ require_once("config.lib.inc"); require_once("functions.inc"); $fp = fopen('php://stdin', 'r'); +$yes_no_prompt = '[y|n]? '; echo <<