summaryrefslogtreecommitdiff
path: root/include/fcntl.h
diff options
context:
space:
mode:
authorNicolas Cavallari <nicolas.cavallari@green-communications.fr>2021-04-07 19:08:23 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2021-04-09 05:56:24 +0200
commit221f2898b9140b4cc103d2c485061023706c1fcf (patch)
tree89ecaeda872ea2074d05b5941e20575d0b9238e1 /include/fcntl.h
parent2bf4991c4dd7b50b74656011dea9c40464ff390c (diff)
open: Add support for O_TMPFILE
Since Linux 3.11, O_TMPFILE allows to create unnamed files that can be linked later on. It is internally defined as (O_TMPFILE | O_DIRECTORY) to make it fail on old kernels. Copying definitions from glibc for O_TMPFILE is not enough to support O_TMPFILE; The open() wrapper also need to pass the mode when the flag contains O_TMPFILE, otherwise, it will pass mode 000 which will succeed but yield unexpected results. openat() is curiously not affected since it passes the mode unconditionally.. Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
Diffstat (limited to 'include/fcntl.h')
-rw-r--r--include/fcntl.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/fcntl.h b/include/fcntl.h
index 35797c689..136f64d70 100644
--- a/include/fcntl.h
+++ b/include/fcntl.h
@@ -104,8 +104,9 @@ libc_hidden_proto(fcntl64)
#endif
/* Open FILE and return a new file descriptor for it, or -1 on error.
- OFLAG determines the type of access used. If O_CREAT is on OFLAG,
- the third argument is taken as a `mode_t', the mode of the created file.
+ OFLAG determines the type of access used. If O_CREAT or O_TMPFILE
+ is on OFLAG, the third argument is taken as a `mode_t', the mode of
+ the created file.
This function is a cancellation point and therefore not marked with
__THROW. */