X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flog.c;fp=src%2Flog.c;h=5b1721184e65362a5e2f119ee90d127ac98c0c9d;hb=3338b9595b69a4a6de43bbd0f49b941eba7f6b0e;hp=949936762a14c91830bd917029afeca91a205b47;hpb=ba8d3790e85ce6bacb2e567e0ba48ceb8e66770e;p=elogind.git diff --git a/src/log.c b/src/log.c index 949936762..5b1721184 100644 --- a/src/log.c +++ b/src/log.c @@ -151,7 +151,7 @@ static int log_open_syslog(void) { goto fail; } - if (connect(syslog_fd, &sa.sa, sizeof(sa)) < 0) { + if (connect(syslog_fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0) { close_nointr_nofail(syslog_fd); /* Some legacy syslog systems still use stream @@ -163,7 +163,7 @@ static int log_open_syslog(void) { goto fail; } - if (connect(syslog_fd, &sa.sa, sizeof(sa)) < 0) { + if (connect(syslog_fd, &sa.sa, offsetof(struct sockaddr_un, sun_path) + strlen(sa.un.sun_path)) < 0) { r = -errno; goto fail; }