From: Lennart Poettering Date: Sun, 11 Jul 2010 21:49:02 +0000 (+0200) Subject: sd-daemon: fix abstract namespace sockaddr for notification socket X-Git-Tag: v3~40 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=a013bd94cc0137c20236f3db2fa156ada9373e59;hp=c2ad51299afe046f3a65b4f57bcbd38b2cce2234 sd-daemon: fix abstract namespace sockaddr for notification socket --- diff --git a/src/sd-daemon.c b/src/sd-daemon.c index 5df70e38d..3bb258d34 100644 --- a/src/sd-daemon.c +++ b/src/sd-daemon.c @@ -381,7 +381,11 @@ int sd_notify(int unset_environment, const char *state) { memset(&msghdr, 0, sizeof(msghdr)); msghdr.msg_name = &sockaddr; - msghdr.msg_namelen = sizeof(struct sockaddr_un); + msghdr.msg_namelen = sizeof(sa_family_t) + strlen(e); + + if (msghdr.msg_namelen > sizeof(struct sockaddr_un)) + msghdr.msg_namelen = sizeof(struct sockaddr_un); + msghdr.msg_iov = &iovec; msghdr.msg_iovlen = 1; msghdr.msg_control = &control;