Red Hat Bugzilla – Bug 157204
shell_cmd should use waitpid instead of wait
Last modified: 2007-11-30 17:11:05 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041220
Description of problem:
The shell_cmd function in shell_cmd.c does the following loop to
wait for its command to terminate:
while ((wait_pid = wait((int *) 0)) != -1 && wait_pid != child_pid)
Having now the waitpid primitive, it would be safer to use it instead:
waitpid(child_pid, (int *) 0, 0)
otherwise an application linked with tcp_wrappers and needing to get
the exit status of its children may fail because of that loop in
shell_cmd, if /etc/hosts.allow is setup to fork a command for this
That happened on our site with am-utils (amd and amq).
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. acces to many automount points
2. tell amd to unmount them with "amq -u"
3. repeat 1. end 2.
*** This bug has been marked as a duplicate of 156373 ***