diff -rup musl-1.0.4-orig/src/misc/syslog.c musl-1.0.4/src/misc/syslog.c --- musl-1.0.4-orig/src/misc/syslog.c 2015-01-05 15:15:35.349015771 +0200 +++ musl-1.0.4/src/misc/syslog.c 2015-01-05 15:21:30.525024212 +0200 @@ -46,7 +46,11 @@ void closelog(void) static void __openlog() { log_fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0); - if (log_fd >= 0) connect(log_fd, (void *)&log_addr, sizeof log_addr); + if (log_fd < 0) return; + if (connect(log_fd, (void *)&log_addr, sizeof log_addr) < 0) { + close(log_fd); + log_fd = -1; + } } void openlog(const char *ident, int opt, int facility)