summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2018-11-12 13:31:03 +0100
committerLennart Poettering <lennart@poettering.net>2018-11-12 17:51:34 +0100
commit4b670f86886b81c08b1343a2e54a41005779833b (patch)
treea68f2d670c7b892d8aada1470a56943898cd35d7
parentcd0504a3951a24557782aaca49eb6eabd332f1f5 (diff)
downloadsystemd-4b670f86886b81c08b1343a2e54a41005779833b.tar.gz
hostnamed,localed,timedate: properly propagate errors from sd_event_add_signal()
main() can't doesn't expect negative error codes as return.
-rw-r--r--src/hostname/hostnamed.c12
-rw-r--r--src/locale/localed.c12
-rw-r--r--src/timedate/timedated.c12
3 files changed, 24 insertions, 12 deletions
diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c
index d8074e6f5f..a0535070b3 100644
--- a/src/hostname/hostnamed.c
+++ b/src/hostname/hostnamed.c
@@ -732,12 +732,16 @@ int main(int argc, char *argv[]) {
(void) sd_event_set_watchdog(event, true);
r = sd_event_add_signal(event, NULL, SIGINT, NULL, NULL);
- if (r < 0)
- return r;
+ if (r < 0) {
+ log_error_errno(r, "Failed to install SIGINT handler: %m");
+ goto finish;
+ }
r = sd_event_add_signal(event, NULL, SIGTERM, NULL, NULL);
- if (r < 0)
- return r;
+ if (r < 0) {
+ log_error_errno(r, "Failed to install SIGTERM handler: %m");
+ goto finish;
+ }
r = connect_bus(&context, event, &bus);
if (r < 0)
diff --git a/src/locale/localed.c b/src/locale/localed.c
index 1f0c3ac74f..c949fa3831 100644
--- a/src/locale/localed.c
+++ b/src/locale/localed.c
@@ -751,12 +751,16 @@ int main(int argc, char *argv[]) {
(void) sd_event_set_watchdog(event, true);
r = sd_event_add_signal(event, NULL, SIGINT, NULL, NULL);
- if (r < 0)
- return r;
+ if (r < 0) {
+ log_error_errno(r, "Failed to install SIGINT handler: %m");
+ goto finish;
+ }
r = sd_event_add_signal(event, NULL, SIGTERM, NULL, NULL);
- if (r < 0)
- return r;
+ if (r < 0) {
+ log_error_errno(r, "Failed to install SIGTERM handler: %m");
+ goto finish;
+ }
r = connect_bus(&context, event, &bus);
if (r < 0)
diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c
index 8cf5e8d48d..71f2f6f69b 100644
--- a/src/timedate/timedated.c
+++ b/src/timedate/timedated.c
@@ -987,12 +987,16 @@ int main(int argc, char *argv[]) {
(void) sd_event_set_watchdog(event, true);
r = sd_event_add_signal(event, NULL, SIGINT, NULL, NULL);
- if (r < 0)
- return r;
+ if (r < 0) {
+ log_error_errno(r, "Failed to install SIGINT handler: %m");
+ goto finish;
+ }
r = sd_event_add_signal(event, NULL, SIGTERM, NULL, NULL);
- if (r < 0)
- return r;
+ if (r < 0) {
+ log_error_errno(r, "Failed to install SIGTERM handler: %m");
+ goto finish;
+ }
r = connect_bus(&context, event, &bus);
if (r < 0)