From: Zbigniew Jędrzejewski-Szmek Date: Tue, 26 Mar 2019 09:19:19 +0000 (+0100) Subject: systemctl: define less stuff when !HAVE_SYSV_COMPAT X-Git-Tag: v242~103^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2771aaf571fda17bf3a5d83b78d2e016b9be46ce;p=platform%2Fupstream%2Fsystemd.git systemctl: define less stuff when !HAVE_SYSV_COMPAT We'd translate our action to sysv runlevel action, only to discard the result in talk_initctl(). Let's just ifdef the whole thing away. Fixes #12103. --- diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 4dd5cd3..d162dde 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -8727,7 +8727,6 @@ _pure_ static int action_to_runlevel(void) { }; assert(arg_action >= 0 && arg_action < _ACTION_MAX); - return table[arg_action]; } #endif @@ -8826,9 +8825,11 @@ static int start_with_fallback(void) { if (start_unit(0, NULL, NULL) == 0) return 0; +#if HAVE_SYSV_COMPAT /* Nothing else worked, so let's try /dev/initctl */ if (talk_initctl(action_to_runlevel()) > 0) return 0; +#endif return log_error_errno(SYNTHETIC_ERRNO(EIO), "Failed to talk to init daemon."); diff --git a/src/systemctl/sysv-compat.c b/src/systemctl/sysv-compat.c index 72a2f57..a85b2df 100644 --- a/src/systemctl/sysv-compat.c +++ b/src/systemctl/sysv-compat.c @@ -7,8 +7,8 @@ #include "strv.h" #include "sysv-compat.h" -int talk_initctl(char rl) { #if HAVE_SYSV_COMPAT +int talk_initctl(char rl) { struct init_request request; _cleanup_close_ int fd = -1; const char *p; @@ -44,10 +44,8 @@ int talk_initctl(char rl) { return log_error_errno(r, "Failed to write to %s: %m", p); return 1; -#else - return 0; -#endif } +#endif int parse_shutdown_time_spec(const char *t, usec_t *ret) { assert(t); diff --git a/src/systemctl/sysv-compat.h b/src/systemctl/sysv-compat.h index 73329ec..e799192 100644 --- a/src/systemctl/sysv-compat.h +++ b/src/systemctl/sysv-compat.h @@ -3,7 +3,10 @@ #include "time-util.h" +#if HAVE_SYSV_COMPAT int talk_initctl(char runlevel); +#endif + int parse_shutdown_time_spec(const char *t, usec_t *ret); /* The init script exit codes for the LSB 'status' verb. (This is different from the 'start' verb, whose exit