]> Savannah Git Hosting - gnulib.git/commit
open: support O_CLOEXEC
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 14 Aug 2017 20:04:46 +0000 (13:04 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 14 Aug 2017 20:05:23 +0000 (13:05 -0700)
commit990fa9d50c060b3acf2bcf1f1e0578b6e975310b
tree262cf411ced696640532e4b67abeaeea5e397612
parent825e198de85f173e74500d2adb1ff3bb9276ad5a
open: support O_CLOEXEC

* NEWS, doc/posix-functions/open.texi:
* doc/posix-functions/openat.texi: Document this.
* lib/fcntl.in.h (O_CLOEXEC): Default to a nonzero value.
(GNULIB_defined_O_CLOEXEC): New symbol.
* lib/open.c: Include cloexec.h.
(open): Support O_CLOEXEC.
* lib/openat.c: Include cloexec.h.
(rpl_openat): Support O_CLOEXEC.
* lib/popen-safer.c: Do not include cloexec.h.
(open_noinherit): Remove.
(popen_safer): Use O_CLOEXEC instead of set_cloexec_flag.
* lib/save-cwd.c: Do not include cloexec.h.
(save_cwd): Use O_CLOEXEC instead of set_cloexec_flag.
* m4/open-cloexec.m4: New file.
* m4/open.m4 (gl_FUNC_OPEN): Require gl_PREPROC_O_CLOEXEC.
Replace 'open' if O_CLOEXEC is not present.
* m4/openat.m4 (gl_FUNC_OPENAT): Require gl_PREPROC_O_CLOEXEC.
Replace 'openat' if O_CLOEXEC is not present.
* modules/freopen (Depends-on): Depend on 'open' if replacing freopen.
* modules/open (Files): Add m4/open-cloexec.m4.
(Depends-on): Depend on cloexec if replacing 'open'.
* modules/openat (Files): Add m4/open-cloexec.m4.
(Depends-on): Depend on cloexec if replacing openat.
* modules/popen-safer (Depends-on): Remove cloexec.
* modules/save-cwd (Depends-on): Remove cloexec, and add
fd-safer-flag and 'open'.
17 files changed:
ChangeLog
NEWS
doc/posix-functions/open.texi
doc/posix-functions/openat.texi
lib/fcntl.in.h
lib/open.c
lib/openat.c
lib/popen-safer.c
lib/save-cwd.c
m4/open-cloexec.m4 [new file with mode: 0644]
m4/open.m4
m4/openat.m4
modules/freopen
modules/open
modules/openat
modules/popen-safer
modules/save-cwd