]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blobdiff - systemd/patches/systemd-44-fix-journald-PAGE_SIZE-on-arm.patch
systemd: Update to 44.
[people/ms/ipfire-3.x.git] / systemd / patches / systemd-44-fix-journald-PAGE_SIZE-on-arm.patch
diff --git a/systemd/patches/systemd-44-fix-journald-PAGE_SIZE-on-arm.patch b/systemd/patches/systemd-44-fix-journald-PAGE_SIZE-on-arm.patch
new file mode 100644 (file)
index 0000000..623bea1
--- /dev/null
@@ -0,0 +1,44 @@
+From 7264278fbbdc1dc6c30fedc902d1337594aa6ff6 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Wed, 21 Mar 2012 22:47:44 +0000
+Subject: journal: PAGE_SIZE is not known on ppc and other archs
+
+Let's use NAME_MAX, as suggested by Dan Walsh
+---
+diff --git a/src/journal/journald.c b/src/journal/journald.c
+index d27cb60..87390bd 100644
+--- a/src/journal/journald.c
++++ b/src/journal/journald.c
+@@ -29,7 +29,6 @@
+ #include <sys/ioctl.h>
+ #include <linux/sockios.h>
+ #include <sys/statvfs.h>
+-#include <sys/user.h>
+ #include <systemd/sd-journal.h>
+ #include <systemd/sd-login.h>
+@@ -2149,10 +2148,20 @@ static int process_event(Server *s, struct epoll_event *ev) {
+                         size_t label_len = 0;
+                         union {
+                                 struct cmsghdr cmsghdr;
++
++                                /* We use NAME_MAX space for the
++                                 * SELinux label here. The kernel
++                                 * currently enforces no limit, but
++                                 * according to suggestions from the
++                                 * SELinux people this will change and
++                                 * it will probably be identical to
++                                 * NAME_MAX. For now we use that, but
++                                 * this should be updated one day when
++                                 * the final limit is known.*/
+                                 uint8_t buf[CMSG_SPACE(sizeof(struct ucred)) +
+                                             CMSG_SPACE(sizeof(struct timeval)) +
+-                                            CMSG_SPACE(sizeof(int)) +
+-                                            CMSG_SPACE(PAGE_SIZE)]; /* selinux label */
++                                            CMSG_SPACE(sizeof(int)) + /* fd */
++                                            CMSG_SPACE(NAME_MAX)]; /* selinux label */
+                         } control;
+                         ssize_t n;
+                         int v;
+--
+cgit v0.9.0.2-2-gbebe