summaryrefslogtreecommitdiffstats
path: root/src/main.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2015-03-11 16:01:27 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2015-03-11 16:01:27 +0000
commite6fd6b13d306316c2c0e10228cafb5fe909b3553 (patch)
treef9e27905ff3f1bba688dfa425dffb36471271a8d /src/main.c
parent3a04ba27ee630246cdba7bb61ba3f7b0a5dd9980 (diff)
downloadrspamd-e6fd6b13d306316c2c0e10228cafb5fe909b3553.tar.gz
rspamd-e6fd6b13d306316c2c0e10228cafb5fe909b3553.zip
Improve systemd support diagnostic.
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c
index 0f2ceb360..8744dc39c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -615,9 +615,11 @@ systemd_get_socket (gint number)
if ((err == NULL || *err == '\0') && num_passed > number) {
sock = number + sd_listen_fds_start;
if (fstat (sock, &st) == -1) {
+ msg_warn ("cannot stat systemd descriptor %d", sock);
return NULL;
}
if (!S_ISSOCK (st.st_mode)) {
+ msg_warn ("systemd descriptor %d is not a socket", sock);
errno = EINVAL;
return NULL;
}
@@ -628,10 +630,13 @@ systemd_get_socket (gint number)
result = g_list_prepend (result, GINT_TO_POINTER (sock));
}
else if (num_passed <= number) {
+ msg_warn ("systemd LISTEN_FDS does not contain the expected fd: %d",
+ num_passed);
errno = EOVERFLOW;
}
}
else {
+ msg_warn ("cannot get systemd variable 'LISTEN_FDS'");
errno = ENOENT;
}