Commit Briefs
avoid race-condition
what if we receive a SIGHUP right after unblock_signal (or during the whole block_signals...unblock_signals) but *before* the wait_sighup? Yeah.
add compat for setproctitle
This adds a check for setproctitle and for the (linux) prctl PR_SET_NAME. If setproctitle is not available, on linux we provide an implementation that use prctl (taken from tmux compat layer.)
use upper bound given by poll
it's a waste to loop through all fds. We know the *exact* number of clients that needs attention, so use that information to limit the looping.
refactor executor_main
now it's symmetrical to listener_main().
revert commit 346f28eeaa205d268d1e63c7ffd86cf041f6d1e6
keep mark_nonblock in utils.c, as otherwise the build for the regress suite will fail (mark_nonblock needs fatal which is in gmid.c, and we can't link gmid.o with the regress suite...)