mirror of
https://github.com/systemd/systemd.git
synced 2025-03-01 08:58:29 +03:00
main: combine a some if checks
Let's merge a few if blocks that are conditioned out the same way. No change in behaviour.
This commit is contained in:
parent
ef59409ff2
commit
9289045238
126
src/core/main.c
126
src/core/main.c
@ -2125,7 +2125,6 @@ static bool early_skip_setup_check(int argc, char *argv[]) {
|
||||
* anyway, even if in that case we also do deserialization. */
|
||||
|
||||
for (i = 1; i < argc; i++) {
|
||||
|
||||
if (streq(argv[i], "--switched-root"))
|
||||
return false; /* If we switched root, don't skip the setup. */
|
||||
else if (streq(argv[i], "--deserialize"))
|
||||
@ -2177,8 +2176,8 @@ int main(int argc, char *argv[]) {
|
||||
/* Disable the umask logic */
|
||||
umask(0);
|
||||
|
||||
/* Make sure that at least initially we do not ever log to journald/syslogd, because it might not be activated
|
||||
* yet (even though the log socket for it exists). */
|
||||
/* Make sure that at least initially we do not ever log to journald/syslogd, because it might not be
|
||||
* activated yet (even though the log socket for it exists). */
|
||||
log_set_prohibit_ipc(true);
|
||||
|
||||
/* Always reopen /dev/console when running as PID 1 or one of its pre-execve() children. This is
|
||||
@ -2186,62 +2185,70 @@ int main(int argc, char *argv[]) {
|
||||
* child process right before execve()'ing the actual binary, at a point in time where socket
|
||||
* activation stderr/stdout area already set up. */
|
||||
log_set_always_reopen_console(true);
|
||||
}
|
||||
|
||||
if (getpid_cached() == 1 && detect_container() <= 0) {
|
||||
if (detect_container() <= 0) {
|
||||
|
||||
/* Running outside of a container as PID 1 */
|
||||
arg_system = true;
|
||||
log_set_target(LOG_TARGET_KMSG);
|
||||
log_open();
|
||||
/* Running outside of a container as PID 1 */
|
||||
arg_system = true;
|
||||
log_set_target(LOG_TARGET_KMSG);
|
||||
log_open();
|
||||
|
||||
if (in_initrd())
|
||||
initrd_timestamp = userspace_timestamp;
|
||||
if (in_initrd())
|
||||
initrd_timestamp = userspace_timestamp;
|
||||
|
||||
if (!skip_setup) {
|
||||
r = mount_setup_early();
|
||||
if (r < 0) {
|
||||
error_message = "Failed to mount early API filesystems";
|
||||
if (!skip_setup) {
|
||||
r = mount_setup_early();
|
||||
if (r < 0) {
|
||||
error_message = "Failed to mount early API filesystems";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
r = initialize_security(
|
||||
&loaded_policy,
|
||||
&security_start_timestamp,
|
||||
&security_finish_timestamp,
|
||||
&error_message);
|
||||
if (r < 0)
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (mac_selinux_init() < 0) {
|
||||
error_message = "Failed to initialize SELinux policy";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
r = initialize_security(
|
||||
&loaded_policy,
|
||||
&security_start_timestamp,
|
||||
&security_finish_timestamp,
|
||||
&error_message);
|
||||
if (r < 0)
|
||||
goto finish;
|
||||
if (!skip_setup)
|
||||
initialize_clock();
|
||||
|
||||
/* Set the default for later on, but don't actually open the logs like this for now. Note that
|
||||
* if we are transitioning from the initrd there might still be journal fd open, and we
|
||||
* shouldn't attempt opening that before we parsed /proc/cmdline which might redirect output
|
||||
* elsewhere. */
|
||||
log_set_target(LOG_TARGET_JOURNAL_OR_KMSG);
|
||||
|
||||
} else {
|
||||
/* Running inside a container, as PID 1 */
|
||||
arg_system = true;
|
||||
log_set_target(LOG_TARGET_CONSOLE);
|
||||
log_open();
|
||||
|
||||
/* For later on, see above... */
|
||||
log_set_target(LOG_TARGET_JOURNAL);
|
||||
|
||||
/* clear the kernel timestamp,
|
||||
* because we are in a container */
|
||||
kernel_timestamp = DUAL_TIMESTAMP_NULL;
|
||||
}
|
||||
|
||||
if (mac_selinux_init() < 0) {
|
||||
error_message = "Failed to initialize SELinux policy";
|
||||
initialize_coredump(skip_setup);
|
||||
|
||||
r = fixup_environment();
|
||||
if (r < 0) {
|
||||
log_emergency_errno(r, "Failed to fix up PID 1 environment: %m");
|
||||
error_message = "Failed to fix up PID1 environment";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (!skip_setup)
|
||||
initialize_clock();
|
||||
|
||||
/* Set the default for later on, but don't actually
|
||||
* open the logs like this for now. Note that if we
|
||||
* are transitioning from the initrd there might still
|
||||
* be journal fd open, and we shouldn't attempt
|
||||
* opening that before we parsed /proc/cmdline which
|
||||
* might redirect output elsewhere. */
|
||||
log_set_target(LOG_TARGET_JOURNAL_OR_KMSG);
|
||||
|
||||
} else if (getpid_cached() == 1) {
|
||||
/* Running inside a container, as PID 1 */
|
||||
arg_system = true;
|
||||
log_set_target(LOG_TARGET_CONSOLE);
|
||||
log_open();
|
||||
|
||||
/* For later on, see above... */
|
||||
log_set_target(LOG_TARGET_JOURNAL);
|
||||
|
||||
/* clear the kernel timestamp,
|
||||
* because we are in a container */
|
||||
kernel_timestamp = DUAL_TIMESTAMP_NULL;
|
||||
} else {
|
||||
/* Running as user instance */
|
||||
arg_system = false;
|
||||
@ -2253,24 +2260,14 @@ int main(int argc, char *argv[]) {
|
||||
kernel_timestamp = DUAL_TIMESTAMP_NULL;
|
||||
}
|
||||
|
||||
initialize_coredump(skip_setup);
|
||||
|
||||
r = fixup_environment();
|
||||
if (r < 0) {
|
||||
log_emergency_errno(r, "Failed to fix up PID 1 environment: %m");
|
||||
error_message = "Failed to fix up PID1 environment";
|
||||
goto finish;
|
||||
}
|
||||
|
||||
if (arg_system) {
|
||||
|
||||
/* Try to figure out if we can use colors with the console. No
|
||||
* need to do that for user instances since they never log
|
||||
* into the console. */
|
||||
/* Try to figure out if we can use colors with the console. No need to do that for user instances since
|
||||
* they never log into the console. */
|
||||
log_show_color(colors_enabled());
|
||||
|
||||
r = make_null_stdio();
|
||||
if (r < 0)
|
||||
log_warning_errno(r, "Failed to redirect standard streams to /dev/null: %m");
|
||||
log_warning_errno(r, "Failed to redirect standard streams to /dev/null, ignoring: %m");
|
||||
}
|
||||
|
||||
/* Mount /proc, /sys and friends, so that /proc/cmdline and
|
||||
@ -2418,10 +2415,10 @@ int main(int argc, char *argv[]) {
|
||||
finish:
|
||||
pager_close();
|
||||
|
||||
if (m)
|
||||
if (m) {
|
||||
arg_shutdown_watchdog = m->shutdown_watchdog;
|
||||
|
||||
m = manager_free(m);
|
||||
m = manager_free(m);
|
||||
}
|
||||
|
||||
free_arguments();
|
||||
mac_selinux_finish();
|
||||
@ -2454,7 +2451,6 @@ finish:
|
||||
|
||||
if (shutdown_verb) {
|
||||
r = become_shutdown(shutdown_verb, retval);
|
||||
|
||||
log_error_errno(r, "Failed to execute shutdown binary, %s: %m", getpid_cached() == 1 ? "freezing" : "quitting");
|
||||
error_message = "Failed to execute shutdown binary";
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user