procd: get rid of putenv usage.
[project/procd.git] / state.c
diff --git a/state.c b/state.c
index d51970e..ccf4104 100644 (file)
--- a/state.c
+++ b/state.c
@@ -48,7 +48,7 @@ static void set_stdio(const char* tty)
            !freopen(tty, "w", stdout) ||
            !freopen(tty, "w", stderr) ||
            chdir("/"))
-               ERROR("failed to set stdio\n");
+               ERROR("failed to set stdio: %m\n");
        else
                fcntl(STDERR_FILENO, F_SETFL, fcntl(STDERR_FILENO, F_GETFL) | O_NONBLOCK);
 }
@@ -73,7 +73,7 @@ static void set_console(void)
        }
 
        if (chdir("/dev")) {
-               ERROR("failed to change dir to /dev\n");
+               ERROR("failed to change dir to /dev: %m\n");
                return;
        }
        while (tty!=NULL) {
@@ -87,7 +87,7 @@ static void set_console(void)
                i++;
        }
        if (chdir("/"))
-               ERROR("failed to change dir to /\n");
+               ERROR("failed to change dir to /: %m\n");
 
        if (tty != NULL)
                set_stdio(tty);
@@ -111,7 +111,6 @@ static void state_enter(void)
                set_stdio("console");
                LOG("- ubus -\n");
                procd_connect_ubus();
-               service_init();
                service_start_early("ubus", ubus_cmd);
                break;
 
@@ -129,6 +128,8 @@ static void state_enter(void)
 
        case STATE_RUNNING:
                LOG("- init complete -\n");
+               procd_inittab_run("respawnlate");
+               procd_inittab_run("askconsolelate");
                break;
 
        case STATE_SHUTDOWN: