mirror of
https://gitlab.com/chrony/chrony.git
synced 2025-12-03 18:05:06 -05:00
privops: wait for helper pid
Save the pid of the helper process and replace wait() with waitpid().
This commit is contained in:
@@ -92,6 +92,7 @@ typedef struct {
|
||||
} PrvResponse;
|
||||
|
||||
static int helper_fd = -1;
|
||||
static pid_t helper_pid;
|
||||
|
||||
static int
|
||||
have_helper(void)
|
||||
@@ -381,7 +382,7 @@ stop_helper(void)
|
||||
req.op = op_QUIT;
|
||||
send_request(&req);
|
||||
|
||||
wait(&status);
|
||||
waitpid(helper_pid, &status, 0);
|
||||
}
|
||||
|
||||
/* ======================================================================= */
|
||||
@@ -518,6 +519,7 @@ PRV_Initialise(void)
|
||||
/* parent process */
|
||||
close(sock_pair[1]);
|
||||
helper_fd = sock_pair[0];
|
||||
helper_pid = pid;
|
||||
|
||||
/* stop the helper even when not exiting cleanly from the main function */
|
||||
atexit(stop_helper);
|
||||
|
||||
Reference in New Issue
Block a user