From: Lennart Poettering Date: Tue, 28 Jan 2014 12:09:14 +0000 (+0100) Subject: util: pass original flags value to mkostemp(), in open_tmpfile() X-Git-Tag: v209~312 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=a6afc4aeaa5018859f8c8a397001ee4e3794545e util: pass original flags value to mkostemp(), in open_tmpfile() --- diff --git a/src/shared/util.c b/src/shared/util.c index 0e7d5c5fb..a6e86148d 100644 --- a/src/shared/util.c +++ b/src/shared/util.c @@ -6147,17 +6147,19 @@ int mkostemp_safe(char *pattern, int flags) { } int open_tmpfile(const char *path, int flags) { - int fd; char *p; + int fd; + + assert(path); #ifdef O_TMPFILE - fd = open(path, flags|O_TMPFILE, S_IRUSR|S_IWUSR); + fd = open(path, flags|O_TMPFILE|O_NOCTTY, S_IRUSR|S_IWUSR); if (fd >= 0) return fd; #endif p = strappenda(path, "/systemd-tmp-XXXXXX"); - fd = mkostemp_safe(p, O_RDWR|O_CLOEXEC); + fd = mkostemp_safe(p, flags); if (fd < 0) return fd;