Note that a nonblocking socket is necessary in any case, because we cannot risk that the signal handler gets blocked in a write if signals come in rapidly.

As for Gnulib, note that it doesn't help that Core is GPL. Enterprise still counts as a derivative work of any library used in Core, so we cannot use GPL libraries.