summaryrefslogtreecommitdiff
path: root/src/basic/missing_fcntl.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2023-03-27 18:16:40 +0200
committerLennart Poettering <lennart@poettering.net>2023-03-29 18:53:20 +0200
commit2ea24611b99d12955ba374f072148b9ad6d644dc (patch)
treee98de09fffe2160e1342607301a104a94d8d2ccb /src/basic/missing_fcntl.h
parent522f12224c5118ca1924a2d35a647d04a8e73fdd (diff)
downloadsystemd-2ea24611b99d12955ba374f072148b9ad6d644dc.tar.gz
pid1: add DumpFileDescriptorStore() bus call that returns fdstore content info
Diffstat (limited to 'src/basic/missing_fcntl.h')
-rw-r--r--src/basic/missing_fcntl.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/basic/missing_fcntl.h b/src/basic/missing_fcntl.h
index 00937d2af0..79e95a8f6f 100644
--- a/src/basic/missing_fcntl.h
+++ b/src/basic/missing_fcntl.h
@@ -58,3 +58,12 @@
#ifndef O_TMPFILE
#define O_TMPFILE (__O_TMPFILE | O_DIRECTORY)
#endif
+
+/* So O_LARGEFILE is generally implied by glibc, and defined to zero hence, because we only build in LFS
+ * mode. However, when invoking fcntl(F_GETFL) the flag is ORed into the result anyway — glibc does not mask
+ * it away. Which sucks. Let's define the actual value here, so that we can mask it ourselves. */
+#if O_LARGEFILE != 0
+#define RAW_O_LARGEFILE O_LARGEFILE
+#else
+#define RAW_O_LARGEFILE 0100000
+#endif