44 lines
2.0 KiB
Diff
44 lines
2.0 KiB
Diff
|
commit 7264278fbbdc1dc6c30fedc902d1337594aa6ff6
|
||
|
Author: Lennart Poettering <lennart@poettering.net>
|
||
|
Date: Wed Mar 21 23:47:44 2012 +0100
|
||
|
|
||
|
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;
|