Don't allow SYSVINIT parameters through anymore.

RC_REBOOT is now yes when rebooting.
Document the special reboot runlevel.
This commit is contained in:
Roy Marples
2009-01-13 11:02:00 +00:00
parent fcf1cce549
commit abcc4c5c72
3 changed files with 13 additions and 8 deletions

View File

@@ -112,11 +112,10 @@ rc_conf_yesno(const char *setting)
}
static const char *const env_whitelist[] = {
"PATH", "SHELL", "USER", "HOME", "TERM",
"CONSOLE", "PATH", "SHELL", "USER", "HOME", "TERM",
"LANG", "LC_CTYPE", "LC_NUMERIC", "LC_TIME", "LC_COLLATE",
"LC_MONETARY", "LC_MESSAGES", "LC_PAPER", "LC_NAME", "LC_ADDRESS",
"LC_TELEPHONE", "LC_MEASUREMENT", "LC_IDENTIFICATION", "LC_ALL",
"INIT_HALT", "INIT_VERSION", "RUNLEVEL", "PREVLEVEL", "CONSOLE",
"IN_HOTPLUG", "IN_BACKGROUND", "RC_INTERFACE_KEEP_CONFIG",
NULL
};

View File

@@ -842,10 +842,14 @@ main(int argc, char **argv)
}
newlevel = argv[optind++];
/* For compat with old system */
/* To make life easier, we only have the shutdown runlevel as
* nothing really needs to know that we're rebooting.
* But for those that do, you can test against RC_REBOOT. */
if (newlevel) {
if (strcmp(newlevel, "reboot") == 0)
if (strcmp(newlevel, "reboot") == 0) {
newlevel = UNCONST(RC_LEVEL_SHUTDOWN);
setenv("RC_REBOOT", "yes", 1);
}
}
/* Enable logging */