diff options
-rw-r--r-- | hurd/port2fd.c | 4 | ||||
-rw-r--r-- | sysdeps/mach/hurd/bits/fcntl.h | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/hurd/port2fd.c b/hurd/port2fd.c index 48b74f1..262e6d9 100644 --- a/hurd/port2fd.c +++ b/hurd/port2fd.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1994, 1997, 1999 Free Software Foundation, Inc. +/* Copyright (C) 1994, 1997, 1999, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -55,7 +55,7 @@ _hurd_port2fd (struct hurd_fd *d, io_t dport, int flags) mach_port_t old = _hurd_userlink_clear (&d->port.users) ? d->port.port : MACH_PORT_NULL; d->port.port = dport; - d->flags = 0; + d->flags = (flags & O_CLOEXEC) ? FD_CLOEXEC : 0; if (old != MACH_PORT_NULL) __mach_port_deallocate (__mach_task_self (), old); } diff --git a/sysdeps/mach/hurd/bits/fcntl.h b/sysdeps/mach/hurd/bits/fcntl.h index e709cc6..34e6baa 100644 --- a/sysdeps/mach/hurd/bits/fcntl.h +++ b/sysdeps/mach/hurd/bits/fcntl.h @@ -1,5 +1,6 @@ /* O_*, F_*, FD_* bit values for GNU. - Copyright (C) 1993,94,96,97,98,99,2000,01,04 Free Software Foundation, Inc. + Copyright (C) 1993,1994,1996,1997,1998,1999,2000,2001,2004,2007 + Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -70,6 +71,7 @@ #define O_SYNC O_FSYNC #ifdef __USE_GNU # define O_NOATIME 0x0800 /* Don't set access time on read (owner). */ +# define O_CLOEXEC 0x00010000 /* Set FD_CLOEXEC. */ #endif #ifdef __USE_MISC # define O_SHLOCK 0x00020000 /* Open with shared file lock. */ |