From d77c26e8e7f944dbf9fec13c5b5941998e037978 Mon Sep 17 00:00:00 2001 From: Benny Baumann <BenBE@geshi.org> Date: Wed, 30 Dec 2020 15:22:33 +0100 Subject: [PATCH] Allow output of error messages on status fd --- src/service/daemonctl.hpp | 3 +++ src/service/daemonctl_rcd.cpp | 5 +++++ src/service/daemonctl_systemd.cpp | 6 ++++++ 3 files changed, 14 insertions(+) diff --git a/src/service/daemonctl.hpp b/src/service/daemonctl.hpp index 7f56765..b32847a 100644 --- a/src/service/daemonctl.hpp +++ b/src/service/daemonctl.hpp @@ -5,6 +5,9 @@ ATTR_NONNULL_ALL void dctl_status_msg(const char* msg); +ATTR_NONNULL_ALL +void dctl_status_err(const char *msg); + void dctl_status_ready(); void dctl_status_reload(); void dctl_status_shutdown(); diff --git a/src/service/daemonctl_rcd.cpp b/src/service/daemonctl_rcd.cpp index 84bf39e..ca170b9 100644 --- a/src/service/daemonctl_rcd.cpp +++ b/src/service/daemonctl_rcd.cpp @@ -7,6 +7,11 @@ void dctl_status_msg(const char* msg) { (void)msg; } +ATTR_WEAK +void dctl_status_err(const char *msg) { + (void)msg; +} + ATTR_WEAK void dctl_status_ready() { diff --git a/src/service/daemonctl_systemd.cpp b/src/service/daemonctl_systemd.cpp index c9e4920..e399dde 100644 --- a/src/service/daemonctl_systemd.cpp +++ b/src/service/daemonctl_systemd.cpp @@ -12,6 +12,12 @@ void dctl_status_msg(const char* msg) { std::cout << SD_INFO << "STATUS=" << msg << std::endl; } +ATTR_NONNULL_ALL +void dctl_status_err(const char *msg) { + sd_notifyf(0, "STATUS=%s", msg); + std::cerr << SD_ERR << "STATUS=" << msg << std::endl; +} + void dctl_status_ready() { sd_notify(0, "READY=1"); } -- GitLab