* libc/include/sys/_default_fcntl.h (O_CLOEXEC): Define as _FNOINHERIT.

(F_DUPFD_CLOEXEC): Define for Cygwin.
	* libc/include/sys/unistd.h (dup3): Define for Cygwin.
	(pipe2): Ditto.
This commit is contained in:
Corinna Vinschen 2010-01-14 18:49:13 +00:00
parent e70fdfb99f
commit 37671b5114
3 changed files with 16 additions and 0 deletions

View File

@ -1,3 +1,10 @@
2010-01-14 Corinna Vinschen <corinna@vinschen.de>
* libc/include/sys/_default_fcntl.h (O_CLOEXEC): Define as _FNOINHERIT.
(F_DUPFD_CLOEXEC): Define for Cygwin.
* libc/include/sys/unistd.h (dup3): Define for Cygwin.
(pipe2): Ditto.
2010-01-14 Corinna Vinschen <corinna@vinschen.de> 2010-01-14 Corinna Vinschen <corinna@vinschen.de>
* libc/stdio/vfprintf.c (_VFPRINTF_R): Just wave bytes invalid in * libc/stdio/vfprintf.c (_VFPRINTF_R): Just wave bytes invalid in

View File

@ -51,6 +51,8 @@ extern "C" {
#define O_BINARY _FBINARY #define O_BINARY _FBINARY
#define O_TEXT _FTEXT #define O_TEXT _FTEXT
#define O_NOINHERIT _FNOINHERIT #define O_NOINHERIT _FNOINHERIT
/* O_CLOEXEC is the Linux equivalent to O_NOINHERIT */
#define O_CLOEXEC _FNOINHERIT
/* The windows header files define versions with a leading underscore. */ /* The windows header files define versions with a leading underscore. */
#define _O_RDONLY O_RDONLY #define _O_RDONLY O_RDONLY
@ -122,6 +124,9 @@ extern "C" {
#define F_CNVT 12 /* Convert a fhandle to an open fd */ #define F_CNVT 12 /* Convert a fhandle to an open fd */
#define F_RSETLKW 13 /* Set or Clear remote record-lock(Blocking) */ #define F_RSETLKW 13 /* Set or Clear remote record-lock(Blocking) */
#endif /* !_POSIX_SOURCE */ #endif /* !_POSIX_SOURCE */
#ifdef __CYGWIN__
#define F_DUPFD_CLOEXEC 14 /* As F_DUPFD, but set close-on-exec flag */
#endif
/* fcntl(2) flags (l_type field of flock structure) */ /* fcntl(2) flags (l_type field of flock structure) */
#define F_RDLCK 1 /* read lock */ #define F_RDLCK 1 /* read lock */

View File

@ -38,6 +38,7 @@ int _EXFUN(daemon, (int nochdir, int noclose));
int _EXFUN(dup, (int __fildes )); int _EXFUN(dup, (int __fildes ));
int _EXFUN(dup2, (int __fildes, int __fildes2 )); int _EXFUN(dup2, (int __fildes, int __fildes2 ));
#if defined(__CYGWIN__) #if defined(__CYGWIN__)
int _EXFUN(dup3, (int __fildes, int __fildes2, int flags));
int _EXFUN(eaccess, (const char *__path, int __mode)); int _EXFUN(eaccess, (const char *__path, int __mode));
void _EXFUN(endusershell, (void)); void _EXFUN(endusershell, (void));
int _EXFUN(euidaccess, (const char *__path, int __mode)); int _EXFUN(euidaccess, (const char *__path, int __mode));
@ -129,6 +130,9 @@ int _EXFUN(pause, (void ));
int _EXFUN(pthread_atfork, (void (*)(void), void (*)(void), void (*)(void))); int _EXFUN(pthread_atfork, (void (*)(void), void (*)(void), void (*)(void)));
#endif #endif
int _EXFUN(pipe, (int __fildes[2] )); int _EXFUN(pipe, (int __fildes[2] ));
#ifdef __CYGWIN__
int _EXFUN(pipe2, (int __fildes[2], int flags));
#endif
ssize_t _EXFUN(pread, (int __fd, void *__buf, size_t __nbytes, off_t __offset)); ssize_t _EXFUN(pread, (int __fd, void *__buf, size_t __nbytes, off_t __offset));
ssize_t _EXFUN(pwrite, (int __fd, const void *__buf, size_t __nbytes, off_t __offset)); ssize_t _EXFUN(pwrite, (int __fd, const void *__buf, size_t __nbytes, off_t __offset));
_READ_WRITE_RETURN_TYPE _EXFUN(read, (int __fd, void *__buf, size_t __nbyte )); _READ_WRITE_RETURN_TYPE _EXFUN(read, (int __fd, void *__buf, size_t __nbyte ));