diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-03-26 10:19:19 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2019-03-26 19:06:48 +0100 |
commit | 2771aaf571fda17bf3a5d83b78d2e016b9be46ce (patch) | |
tree | c0ea5cd0d039485860280243823e249e30e50183 /src/systemctl | |
parent | adca059d55fe0a126dbdd62911b0705ddf8e9b8a (diff) | |
download | systemd-2771aaf571fda17bf3a5d83b78d2e016b9be46ce.tar.gz |
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.
Diffstat (limited to 'src/systemctl')
-rw-r--r-- | src/systemctl/systemctl.c | 3 | ||||
-rw-r--r-- | src/systemctl/sysv-compat.c | 6 | ||||
-rw-r--r-- | src/systemctl/sysv-compat.h | 3 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 4dd5cd3768..d162ddee5a 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 72a2f57965..a85b2dfe4b 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 73329ec42a..e79919217c 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 |