From d120d897eca011cd782a9e4074d91e25b6d76895 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 21 Mar 2022 18:12:53 +0100 Subject: [PATCH] sd-journal: refuse invocation of journal_file_open() with O_RDONLY|O_CREAT --- src/libsystemd/sd-journal/journal-file.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/libsystemd/sd-journal/journal-file.c b/src/libsystemd/sd-journal/journal-file.c index ac8ad145ed..e7014196c8 100644 --- a/src/libsystemd/sd-journal/journal-file.c +++ b/src/libsystemd/sd-journal/journal-file.c @@ -3336,6 +3336,9 @@ int journal_file_open( if (!IN_SET((flags & O_ACCMODE), O_RDONLY, O_RDWR)) return -EINVAL; + if ((flags & O_ACCMODE) == O_RDONLY && FLAGS_SET(flags, O_CREAT)) + return -EINVAL; + if (fname && (flags & O_CREAT) && !endswith(fname, ".journal")) return -EINVAL;