I believe ```exit()``` is not safe for signal handlers, it might cause an endless loop of exit-handlers being called. Either ```_exit()``` or better output an ```UnexpectedError()``` and continue (Especially for the daemon signal handler).