diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2023-05-16 11:48:29 +0200 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2023-05-16 11:48:32 +0200 |
commit | 17915ea5b3d11790a8bd1f09335aa10bdf3c2a96 (patch) | |
tree | 6d26c19cd1743ef9cf5bbfdae4a5fc6e74365211 | |
parent | missing: add more F_SEAL_XYZ flags (diff) | |
download | systemd-17915ea5b3d11790a8bd1f09335aa10bdf3c2a96.tar.xz systemd-17915ea5b3d11790a8bd1f09335aa10bdf3c2a96.zip |
memfd-util: memfd may also have F_SEAL_EXEC flag
Follow-up for c29715a8f77d96cd731b4a3083b3a852b3b61eb8.
Fixes #27608.
-rw-r--r-- | src/basic/memfd-util.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/basic/memfd-util.c b/src/basic/memfd-util.c index 285abd41d3..3e99ab0480 100644 --- a/src/basic/memfd-util.c +++ b/src/basic/memfd-util.c @@ -106,7 +106,8 @@ int memfd_get_sealed(int fd) { if (r < 0) return -errno; - return r == (F_SEAL_SHRINK | F_SEAL_GROW | F_SEAL_WRITE | F_SEAL_SEAL); + /* We ignore F_SEAL_EXEC here to support older kernels. */ + return FLAGS_SET(r, F_SEAL_SHRINK | F_SEAL_GROW | F_SEAL_WRITE | F_SEAL_SEAL); } int memfd_get_size(int fd, uint64_t *sz) { |