Fix bug #5464. Pointed out by Herb @ Connectathon. In fork_domain_child() we call :
commit4a0345d3fab80d586fb043831709ce8fe68f72f0
authorJeremy Allison <jra@samba.org>
Wed, 14 May 2008 21:12:14 +0000 (14 14:12 -0700)
committerJeremy Allison <jra@samba.org>
Wed, 14 May 2008 21:12:14 +0000 (14 14:12 -0700)
tree85ab43fd9fae92fe26e66d38710c780ff9605079
parent9e4ea761055429185b7c76cf4c96ef5407fa7e83
Fix bug #5464. Pointed out by Herb @ Connectathon. In fork_domain_child() we call :

CatchChild();

*before* we fork the domain child. This call establishes a signal handler that
eats SIGCLD signals and doesn't call sys_select_signal() as the main daemon
SIGCLD handler should do. This causes the parent to ignore dead children and
time out, instead of calling winbind_child_died() on receipt of the signal. The
correct fix is to move the CatchChild call into the child code after the fork.

Jeremy.
source/nsswitch/winbindd_dual.c