Package: libc6-dev Version: 2.18-5 Severity: normal Tags: patch The new O_TMPFILE open(2) flag introduced in Linux 3.11 [1] is missing in <fcntl.h>. Andreas Schwab pushed the update in upstream last year [2]. I reformatted his patch in attachment. 1. http://kernelnewbies.org/Linux_3.11#head-8be09d59438b31c2a724547838f234cb33c40357 2. https://sourceware.org/git/?p=glibc.git;a=commit;h=ffdd31816a67f48697ea4d6b852e58d2886d42ca Regards, Mickaël
From ffdd31816a67f48697ea4d6b852e58d2886d42ca Mon Sep 17 00:00:00 2001 From: Andreas Schwab <schwab@suse.de> Date: Wed, 11 Sep 2013 11:15:45 +0200 Subject: [PATCH] Add O_TMPFILE to <fcntl.h> 2013-09-11 Andreas Schwab <schwab@suse.de> * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (__O_TMPFILE): Define if not defined. (O_TMPFILE) [__USE_GNU]: Define. * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (__O_TMPFILE): Define. * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (__O_TMPFILE): Define. * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (__O_TMPFILE): Define. diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h index 2e31691..02c9a7f 100644 --- a/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h +++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h @@ -36,6 +36,7 @@ #define __O_DIRECT 02000000 /* Direct disk access. */ #define __O_NOATIME 04000000 /* Do not set atime. */ #define __O_PATH 040000000 /* Resolve pathname but do not open file. */ +#define __O_TMPFILE 0100100000 /* Atomically create nameless file. */ /* Not necessary, files are always with 64bit off_t. */ #define __O_LARGEFILE 0 diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h index 744548a..76faa40 100644 --- a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h +++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h @@ -37,6 +37,7 @@ #define __O_CLOEXEC 010000000 /* Set close_on_exec. */ #define __O_NOATIME 004000000 /* Do not set atime. */ #define __O_PATH 020000000 +#define __O_TMPFILE 040010000 /* Atomically create nameless file. */ #define __O_LARGEFILE 00004000 diff --git a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h index b5929bd..9b0421e 100644 --- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h +++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h @@ -96,6 +96,9 @@ #ifndef __O_DSYNC # define __O_DSYNC 010000 #endif +#ifndef __O_TMPFILE +# define __O_TMPFILE 020200000 +#endif #ifndef F_GETLK # ifndef __USE_FILE_OFFSET64 @@ -128,6 +131,7 @@ # define O_DIRECT __O_DIRECT /* Direct disk access. */ # define O_NOATIME __O_NOATIME /* Do not set atime. */ # define O_PATH __O_PATH /* Resolve pathname but do not open file. */ +# define O_TMPFILE __O_TMPFILE /* Atomically create nameless file. */ #endif /* For now, Linux has no separate synchronicitiy options for read diff --git a/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h b/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h index 01084bb..f384bc7 100644 --- a/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h @@ -39,6 +39,7 @@ #define __O_DIRECT 0x100000 /* direct disk access hint */ #define __O_NOATIME 0x200000 /* Do not set atime. */ #define __O_PATH 0x1000000 /* Resolve pathname but do not open file. */ +#define __O_TMPFILE 0x2010000 /* Atomically create nameless file. */ #if __WORDSIZE == 64 # define __O_LARGEFILE 0
Attachment:
signature.asc
Description: OpenPGP digital signature