OpenSSH PAM "thread" buglet

Joerg Sonnenberger joerg at britannica.bec.de
Fri Jul 15 23:57:20 EST 2005


On Fri, Jul 15, 2005 at 01:18:30PM +1000, Darren Tucker wrote:
> Joerg Sonnenberger wrote:
> >Hi all,
> >the attached patch ensure that only one side of the authentication
> >socketpair stays open on both sides. This should make the code
> >more robust by detecting the dead of the process on the other side.
> >This applies to the non-pthread case only.
> 
> Can you give an example where it would make a difference?  The death of 
> the child process should already be caught by the SIGCHLD.  Or are you 
> talking about the parent dying unexpectedly and the child not getting a 
> SIGPIPE?

The current code depends on the SIGCHLD in the parent, if that gets lost,
it will never detect it. Given that the current code already plays with
more than one child, it's an assumption, which needs to be justified.
Closing one side allows it to detect the death of the child nevertheless.

The same situation applies to the child too, yes. The comment in the FreeBSD
code explicitly refers to the SIGALRM handling, it seems that the child could
remain orphaned in case of timeouts.

Joerg




More information about the openssh-unix-dev mailing list