#include "slurp.h"
#include "globals.h"
+#include "lutil.h"
/*
#ifdef SIGHUP
(void) SIGNAL( SIGHUP, slurp_set_shutdown );
#endif
-#if defined(SIGBREAK) && defined(HAVE_NT_SERVICE_MANAGER)
- (void) SIGNAL( SIGBREAK, do_nothing );
+#if defined(SIGBREAK)
+ (void) SIGNAL( SIGBREAK, slurp_set_shutdown );
#endif
if ( sglob->one_shot_mode ) {
RETSIGTYPE
slurp_set_shutdown(int sig)
{
+#if HAVE_NT_SERVICE_MANAGER && SIGBREAK
+ if (is_NT_Service && sig == SIGBREAK) {
+ /* empty */;
+ } else
+#endif
+ {
sglob->slurpd_shutdown = 1; /* set flag */
tcp_write( sglob->wake_sds[1], "0", 1); /* wake up file mgr */
+ }
(void) SIGNAL_REINSTALL( sig, slurp_set_shutdown ); /* reinstall handlers */
}