Comment 6 for bug 497781

Revision history for this message
In , Darren Tucker (dtucker) wrote :

Seems like a reasonable hypothesis, but I don't see the patch making any difference.

The execv will result in an entirely new process address space (including address layout randomization on platforms that have it) and the disposition of the old process' signal handlers will be irrelevant. You'd still have a window until the signal handler is reinstalled where the default action of SIGHUP would kill sshd.

You could minimize this window by moving the "signal(SIGCHLD, main_sigchld_handler)" to the start of main(). This wouldn't eliminate the window but it would shrink it a lot (particularly because the generation of the protocol 1 ephemeral server key would no longer be in the window).