1
0
mirror of https://github.com/systemd/systemd.git synced 2025-08-31 09:49:54 +03:00

main-func: send main exit code to parent via sd_notify() on exit

So far we silently convert negative return values from run() as
EXIT_FAILURE, which is how UNIX expects it. In many cases it would be
very useful for the caller to retrieve the actual error number we exit
with. Let's generically return that via sd_notify()'s ERRNO= attribute.
This means callers can set $NOTIFY_SOCKET and get the actual error
number delivered at their doorstep just like that.
This commit is contained in:
Lennart Poettering
2019-05-17 10:17:06 +02:00
parent 8987afc4d1
commit 6b636c2d27

View File

@ -3,6 +3,8 @@
#include <stdlib.h>
#include "sd-daemon.h"
#include "pager.h"
#include "selinux-util.h"
#include "spawn-ask-password-agent.h"
@ -16,6 +18,8 @@
save_argc_argv(argc, argv); \
intro; \
r = impl; \
if (r < 0) \
(void) sd_notifyf(0, "ERRNO=%i", -r); \
ask_password_agent_close(); \
polkit_agent_close(); \
pager_close(); \