From: Lennart Poettering Date: Mon, 2 Jan 2023 16:35:23 +0000 (+0100) Subject: logind: implement Type=notify-reload protocol properly X-Git-Tag: v253-rc1~135^2~3 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5d71e463f49518c7702467f6145484afa31bf8ba;p=thirdparty%2Fsystemd.git logind: implement Type=notify-reload protocol properly So close already. Let's add the two missing notifications too. Fixes: #18484 --- diff --git a/src/login/logind.c b/src/login/logind.c index def2f5a4428..1feacd36011 100644 --- a/src/login/logind.c +++ b/src/login/logind.c @@ -1020,6 +1020,11 @@ static int manager_dispatch_reload_signal(sd_event_source *s, const struct signa Manager *m = userdata; int r; + (void) sd_notifyf(/* unset= */ false, + "RELOADING=1\n" + "STATUS=Reloading configuration...\n" + "MONOTONIC_USEC=" USEC_FMT, now(CLOCK_MONOTONIC)); + manager_reset_config(m); r = manager_parse_config_file(m); if (r < 0) @@ -1027,6 +1032,7 @@ static int manager_dispatch_reload_signal(sd_event_source *s, const struct signa else log_info("Config file reloaded."); + (void) sd_notify(/* unset= */ false, NOTIFY_READY); return 0; } diff --git a/units/systemd-logind.service.in b/units/systemd-logind.service.in index 042ea75d7ab..24f5ddaa173 100644 --- a/units/systemd-logind.service.in +++ b/units/systemd-logind.service.in @@ -58,6 +58,7 @@ StateDirectory=systemd/linger SystemCallArchitectures=native SystemCallErrorNumber=EPERM SystemCallFilter=@system-service +Type=notify-reload {{SERVICE_WATCHDOG}} # Increase the default a bit in order to allow many simultaneous logins since