binoy@cordys.com writes:
Actually no. slapd/main.c does lutil_CommenceStartupProcessing( serverName, slap_sig_shutdown ); which causes liblutil/ntservice.c:lutil_ServiceCtrlHandler() to call slap_sig_shutdown(-1). (The handler is stored in stopfunc.)
Leaving the correction to a committer who knows Windows, but I assume a minimal fix would be
if (sig >= 0) SIGNAL_REINSTALL( sig, slap_sig_shutdown );