From: Lennart Poettering Date: Sun, 1 Nov 2015 20:49:19 +0000 (+0100) Subject: sd-daemon: verify NOTIFY_SOCKET path length X-Git-Tag: v228~124^2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=638b56cd3c703651013033b82000d2a9f2732048;p=thirdparty%2Fsystemd.git sd-daemon: verify NOTIFY_SOCKET path length Better generate a real error then simply connect to the wrong socket. --- diff --git a/src/libsystemd/sd-daemon/sd-daemon.c b/src/libsystemd/sd-daemon/sd-daemon.c index c7887804df4..27045e25d0c 100644 --- a/src/libsystemd/sd-daemon/sd-daemon.c +++ b/src/libsystemd/sd-daemon/sd-daemon.c @@ -436,6 +436,11 @@ _public_ int sd_pid_notify_with_fds(pid_t pid, int unset_environment, const char goto finish; } + if (strlen(e) > sizeof(sockaddr.un.sun_path)) { + r = -EINVAL; + goto finish; + } + fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0); if (fd < 0) { r = -errno;