X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=src%2Fjournal%2Fjournald-syslog.c;h=79c07fffa1d1b646e31583dec467a6310bba7fae;hb=0a2478a918763f73de5d1b78ebb1023c31042583;hp=cbb944f287dab955369c8f93834b2ea205ccff4f;hpb=40b71e89bae4e51768db4dc50ec64c1e9c96eec4;p=elogind.git diff --git a/src/journal/journald-syslog.c b/src/journal/journald-syslog.c index cbb944f28..79c07fffa 100644 --- a/src/journal/journald-syslog.c +++ b/src/journal/journald-syslog.c @@ -37,16 +37,16 @@ static void forward_syslog_iovec(Server *s, const struct iovec *iovec, unsigned n_iovec, struct ucred *ucred, struct timeval *tv) { - union sockaddr_union sa = { + static const union sockaddr_union sa = { .un.sun_family = AF_UNIX, .un.sun_path = "/run/systemd/journal/syslog", }; struct msghdr msghdr = { .msg_iov = (struct iovec *) iovec, .msg_iovlen = n_iovec, - .msg_name = &sa, + .msg_name = (struct sockaddr*) &sa.sa, .msg_namelen = offsetof(union sockaddr_union, un.sun_path) - + sizeof("/run/systemd/journal/syslog") - 1, + + strlen("/run/systemd/journal/syslog"), }; struct cmsghdr *cmsg; union { @@ -159,7 +159,7 @@ void server_forward_syslog(Server *s, int priority, const char *identifier, cons identifier = ident_buf; } - snprintf(header_pid, sizeof(header_pid), "[%lu]: ", (unsigned long) ucred->pid); + snprintf(header_pid, sizeof(header_pid), "["PID_FMT"]: ", ucred->pid); char_array_0(header_pid); if (identifier) @@ -426,9 +426,9 @@ int server_open_syslog_socket(Server *s) { assert(s); if (s->syslog_fd < 0) { - union sockaddr_union sa = { + static const union sockaddr_union sa = { .un.sun_family = AF_UNIX, - .un.sun_path = "/dev/log", + .un.sun_path = "/run/systemd/journal/dev-log", }; s->syslog_fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0); @@ -441,7 +441,7 @@ int server_open_syslog_socket(Server *s) { r = bind(s->syslog_fd, &sa.sa, offsetof(union sockaddr_union, un.sun_path) + strlen(sa.un.sun_path)); if (r < 0) { - log_error("bind() failed: %m"); + log_error("bind(%s) failed: %m", sa.un.sun_path); return -errno; } @@ -457,7 +457,7 @@ int server_open_syslog_socket(Server *s) { } #ifdef HAVE_SELINUX - if (use_selinux()) { + if (mac_selinux_use()) { one = 1; r = setsockopt(s->syslog_fd, SOL_SOCKET, SO_PASSSEC, &one, sizeof(one)); if (r < 0)