[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#747444: marked as done (libc6-dev: Missing O_TMPFILE in <fcntl.h>)



Your message dated Thu, 5 Jun 2014 21:07:43 +0200
with message-id <20140605190743.GA17570@volta.rr44.fr>
and subject line Re: libc6-dev: Missing O_TMPFILE in <fcntl.h>
has caused the Debian Bug report #747444,
regarding libc6-dev: Missing O_TMPFILE in <fcntl.h>
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
747444: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=747444
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
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


--- End Message ---
--- Begin Message ---
Version: 2.19-1

On Thu, May 08, 2014 at 07:34:06PM +0200, Mickaël Salaün wrote:
> 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

This bug has been fixed in version 2.19-1. Closing the bug for this 
version.

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net

--- End Message ---

Reply to: