diff options
author | Lennart Poettering <lennart@poettering.net> | 2014-10-30 18:28:37 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2014-10-30 18:28:37 +0100 |
commit | 73843b52585d42cc1a970a1c664818ece6942e9e (patch) | |
tree | 471c50000670cf5064973929dd864b9601b1dc4d /src/journal/journald-native.c | |
parent | 47f0f4eb1d79ec37dfbe6a382817c0384b106373 (diff) |
memfd: always use our internal utility functions where we have them
Diffstat (limited to 'src/journal/journald-native.c')
-rw-r--r-- | src/journal/journald-native.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/journal/journald-native.c b/src/journal/journald-native.c index 6a9ae8a6ce..d3735ec73c 100644 --- a/src/journal/journald-native.c +++ b/src/journal/journald-native.c @@ -33,6 +33,7 @@ #include "journald-console.h" #include "journald-syslog.h" #include "journald-wall.h" +#include "memfd.h" bool valid_user_field(const char *p, size_t l, bool allow_protected) { const char *a; @@ -319,9 +320,7 @@ void server_process_native_file( /* If it's a memfd, check if it is sealed. If so, we can just * use map it and use it, and do not need to copy the data * out. */ - r = fcntl(fd, F_GET_SEALS); - sealed = r >= 0 && - (r & (F_SEAL_SHRINK|F_SEAL_GROW|F_SEAL_WRITE|F_SEAL_SEAL)) == (F_SEAL_SHRINK|F_SEAL_GROW|F_SEAL_WRITE|F_SEAL_SEAL); + sealed = memfd_get_sealed(fd) > 0; if (!sealed && (!ucred || ucred->uid != 0)) { _cleanup_free_ char *sl = NULL, *k = NULL; |