about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2008-07-27 18:26:13 +0000
committerUlrich Drepper <drepper@redhat.com>2008-07-27 18:26:13 +0000
commitd6e0c2a67dbdb3f940d60f68bbcf58a5bdee4a97 (patch)
tree80154bbf66005a9d32db583091847ec051519012 /include
parent11ed3eaed92bf9e04925ec50a696eda5b6df0c33 (diff)
downloadglibc-d6e0c2a67dbdb3f940d60f68bbcf58a5bdee4a97.tar.gz
glibc-d6e0c2a67dbdb3f940d60f68bbcf58a5bdee4a97.tar.xz
glibc-d6e0c2a67dbdb3f940d60f68bbcf58a5bdee4a97.zip
* sysdeps/unix/sysv/linux/syscalls.list: Add __pipe2 alias.
	* io/pipe2.c: Likewise.
	* sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PIPE2
	instead of __ASSUME_PACCEPT.
	* include/unistd.h: Declare __have_pipe2.
	* libio/iopopen.c: Implement "e" flag.
	* libio/Makefile (tests): Add tst-popen1.
	* libio/tst-popen1.c: New file.
Diffstat (limited to 'include')
-rw-r--r--include/unistd.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/unistd.h b/include/unistd.h
index f34d53f223..34d7477f9e 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -48,6 +48,7 @@ extern ssize_t __libc_write (int __fd, __const void *__buf, size_t __n);
 libc_hidden_proto (__libc_write)
 extern int __pipe (int __pipedes[2]);
 libc_hidden_proto (__pipe)
+extern int __pipe2 (int __pipedes[2], int __flags);
 extern unsigned int __sleep (unsigned int __seconds);
 extern int __chown (__const char *__file,
 		    __uid_t __owner, __gid_t __group);
@@ -165,4 +166,10 @@ extern int __libc_pause (void);
 /* Not cancelable variant.  */
 extern int __pause_nocancel (void) attribute_hidden;
 
+extern int __have_sock_cloexec;
+/* At lot of other functionality became available at the same time as
+   SOCK_CLOEXEC.  Avoid defining separate variables for all of them
+   unless it is really necessary.  */
+#define __have_pipe2 __have_sock_cloexec
+
 #endif