@@ -4,6 +4,7 @@
|
||||
#include "fd-util.h"
|
||||
#include "log.h"
|
||||
#include "string-util.h"
|
||||
#include "time-util.h"
|
||||
|
||||
static int notify_remove_fd_warn(const char *name) {
|
||||
int r;
|
||||
@@ -74,3 +75,18 @@ int notify_push_fdf(int fd, const char *format, ...) {
|
||||
|
||||
return notify_push_fd(fd, name);
|
||||
}
|
||||
|
||||
int notify_reloading_full(const char *status) {
|
||||
int r;
|
||||
|
||||
r = sd_notifyf(/* unset_environment = */ false,
|
||||
"RELOADING=1\n"
|
||||
"MONOTONIC_USEC=" USEC_FMT
|
||||
"%s%s",
|
||||
now(CLOCK_MONOTONIC),
|
||||
status ? "\nSTATUS=" : "", strempty(status));
|
||||
if (r < 0)
|
||||
return log_debug_errno(r, "Failed to notify service manager for reloading status: %m");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
#define NOTIFY_READY "READY=1\n" "STATUS=Processing requests..."
|
||||
#define NOTIFY_STOPPING "STOPPING=1\n" "STATUS=Shutting down..."
|
||||
|
||||
static inline const char *notify_start(const char *start, const char *stop) {
|
||||
static inline const char* notify_start(const char *start, const char *stop) {
|
||||
if (start)
|
||||
(void) sd_notify(false, start);
|
||||
|
||||
@@ -26,3 +26,8 @@ static inline void notify_on_cleanup(const char **p) {
|
||||
int notify_remove_fd_warnf(const char *format, ...) _printf_(1, 2);
|
||||
int close_and_notify_warn(int fd, const char *name);
|
||||
int notify_push_fdf(int fd, const char *format, ...) _printf_(2, 3);
|
||||
|
||||
int notify_reloading_full(const char *status);
|
||||
static inline int notify_reloading(void) {
|
||||
return notify_reloading_full("Reloading configuration...");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user