1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-09-01 02:34:55 +00:00

get_ppid_of: Make more robust in multithreaded applications.

* lib/get_ppid_of.c (get_ppid_of): Pass an O_CLOEXEC flag to open().
* modules/get_ppid_of (Depends-on): Add 'open'.
This commit is contained in:
Bruno Haible
2020-05-27 19:41:38 +02:00
parent 87b65cc5d2
commit c459f41314
3 changed files with 12 additions and 5 deletions
+6
View File
@@ -1,3 +1,9 @@
2020-05-28 Bruno Haible <bruno@clisp.org>
get_ppid_of: Make more robust in multithreaded applications.
* lib/get_ppid_of.c (get_ppid_of): Pass an O_CLOEXEC flag to open().
* modules/get_ppid_of (Depends-on): Add 'open'.
2020-05-28 Bruno Haible <bruno@clisp.org>
get-rusage-as: Make more robust in multithreaded applications.
+5 -5
View File
@@ -74,7 +74,7 @@ get_ppid_of (pid_t pid)
int fd;
sprintf (filename, "/proc/%u/status", (unsigned int) pid);
fd = open (filename, O_RDONLY);
fd = open (filename, O_RDONLY | O_CLOEXEC);
if (fd >= 0)
{
char buf[4096 + 1];
@@ -115,7 +115,7 @@ get_ppid_of (pid_t pid)
int fd;
sprintf (filename, "/proc/%u/status", (unsigned int) pid);
fd = open (filename, O_RDONLY);
fd = open (filename, O_RDONLY | O_CLOEXEC);
if (fd >= 0)
{
char buf[4096 + 1];
@@ -152,7 +152,7 @@ get_ppid_of (pid_t pid)
int fd;
sprintf (filename, "/proc/%u/psinfo", (unsigned int) pid);
fd = open (filename, O_RDONLY);
fd = open (filename, O_RDONLY | O_CLOEXEC);
if (fd >= 0)
{
char buf[4096 + 1];
@@ -190,7 +190,7 @@ get_ppid_of (pid_t pid)
int fd;
sprintf (filename, "/proc/%u/psinfo", (unsigned int) pid);
fd = open (filename, O_RDONLY);
fd = open (filename, O_RDONLY | O_CLOEXEC);
if (fd >= 0)
{
/* The contents is a 'struct psinfo'. But since 'struct psinfo'
@@ -283,7 +283,7 @@ get_ppid_of (pid_t pid)
int fd;
sprintf (filename, "/proc/pinfo/%u", pid);
fd = open (filename, O_RDONLY);
fd = open (filename, O_RDONLY | O_CLOEXEC);
if (0 <= fd)
{
prpsinfo_t buf;
+1
View File
@@ -9,6 +9,7 @@ Depends-on:
extensions
sys_types
unistd
open
configure.ac: