>From 5ac55edadd1c131f876459c8ccdd899f3c042902 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Wed, 27 May 2020 19:40:08 +0200 Subject: [PATCH 05/18] get-rusage-as: Make more robust in multithreaded applications. * lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Pass an O_CLOEXEC flag to open(). * modules/get-rusage-as (Depends-on): Add 'open'. --- ChangeLog | 7 +++++++ lib/get-rusage-as.c | 2 +- modules/get-rusage-as | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 0945095..4139e7c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2020-05-27 Bruno Haible + get-rusage-as: Make more robust in multithreaded applications. + * lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Pass an O_CLOEXEC + flag to open(). + * modules/get-rusage-as (Depends-on): Add 'open'. + +2020-05-27 Bruno Haible + crypto/gc: Make more robust in multithreaded applications. * lib/gc-gnulib.c (randomize): Pass an O_CLOEXEC flag to open(). * modules/crypto/gc (Depends-on): Add 'open'. diff --git a/lib/get-rusage-as.c b/lib/get-rusage-as.c index 120fae0..da6b47d 100644 --- a/lib/get-rusage-as.c +++ b/lib/get-rusage-as.c @@ -176,7 +176,7 @@ get_rusage_as_via_setrlimit (void) const int fd = -1; # else /* !HAVE_MAP_ANONYMOUS */ const int flags = MAP_FILE | MAP_PRIVATE; - int fd = open ("/dev/zero", O_RDONLY, 0666); + int fd = open ("/dev/zero", O_RDONLY | O_CLOEXEC, 0666); if (fd < 0) return 0; # endif diff --git a/modules/get-rusage-as b/modules/get-rusage-as index 0d30aff..0dadd5c 100644 --- a/modules/get-rusage-as +++ b/modules/get-rusage-as @@ -11,6 +11,7 @@ stdint unistd extensions getpagesize +open vma-iter configure.ac: -- 2.7.4