uuidd: improve socket activation error messaging
Tell more exactly what is wrong and how, and give hint how to recover when possible. Signed-off-by: Sami Kerola <kerolasa@iki.fi>
This commit is contained in:
parent
100a43932c
commit
fa8945db4a
|
@ -360,9 +360,17 @@ static void server_loop(const char *socket_path, const char *pidfile_path,
|
||||||
|
|
||||||
#ifdef HAVE_LIBSYSTEMD
|
#ifdef HAVE_LIBSYSTEMD
|
||||||
if (uuidd_cxt->no_sock) {
|
if (uuidd_cxt->no_sock) {
|
||||||
if (sd_listen_fds(0) != 1)
|
const int ret = sd_listen_fds(0);
|
||||||
errx(EXIT_FAILURE, _("no or too many file descriptors received"));
|
|
||||||
|
|
||||||
|
if (ret < 0) {
|
||||||
|
errno = ret * -1;
|
||||||
|
err(EXIT_FAILURE, _("sd_listen_fds() failed"));
|
||||||
|
} else if (ret == 0)
|
||||||
|
errx(EXIT_FAILURE,
|
||||||
|
_("no file descriptors received, check systemctl status uuidd.socket"));
|
||||||
|
else if (1 < ret)
|
||||||
|
errx(EXIT_FAILURE,
|
||||||
|
_("too many file descriptors received, check uuidd.socket"));
|
||||||
s = SD_LISTEN_FDS_START + 0;
|
s = SD_LISTEN_FDS_START + 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue