* OF THIS SOFTWARE.
*
* $Log: statserv.h,v $
- * Revision 1.15 1999-04-16 14:45:55 adam
+ * Revision 1.16 1999-06-10 11:45:30 adam
+ * Added bend_start, bend_stop handlers and removed pre_init.
+ * Handlers bend_start/bend_stop are called when service/daemon is
+ * started/stopped.
+ *
+ * Revision 1.15 1999/04/16 14:45:55 adam
* Added interface for tcpd wrapper for access control.
*
* Revision 1.14 1999/02/02 13:57:32 adam
int maxrecordsize; /* maximum value for negotiation */
char configname[ODR_MAXNAME+1]; /* given to the backend in bend_init */
char setuid[ODR_MAXNAME+1]; /* setuid to this user after binding */
- void (*pre_init)(struct statserv_options_block *p);
+ void (*bend_start)(struct statserv_options_block *p);
+ void (*bend_stop)(struct statserv_options_block *p);
int (*options_func)(int argc, char **argv);
int (*check_ip)(void *cd, const char *addr, int len, int type);
char daemon_name[128];
* Based on code written by
* Chas Woodfield, Fretwell Downing Datasystems.
* $Log: service.c,v $
- * Revision 1.2 1999-02-02 13:57:36 adam
+ * Revision 1.3 1999-06-10 11:45:30 adam
+ * Added bend_start, bend_stop handlers and removed pre_init.
+ * Handlers bend_start/bend_stop are called when service/daemon is
+ * started/stopped.
+ *
+ * Revision 1.2 1999/02/02 13:57:36 adam
* Uses preprocessor define WIN32 instead of WINDOWS to build code
* for Microsoft WIN32.
*
else
{
/* Set the console control handler for exiting the program */
-/* SetConsoleCtrlHandler((PHANDLER_ROUTINE)EventHandlerRoutine, TRUE);
-*/
+ SetConsoleCtrlHandler((PHANDLER_ROUTINE)EventHandlerRoutine, TRUE);
/* Now do the main work */
ServiceMain(argc, argv);
case CTRL_SHUTDOWN_EVENT: /* A signal that the system sends to all console processes when the system */
/* We are basically shutting down, so call Service_Delete */
Service_Delete();
- return(TRUE);
+ return(FALSE);
break;
default:
* Chas Woodfield, Fretwell Downing Datasystems.
*
* $Log: statserv.c,v $
- * Revision 1.55 1999-06-10 09:18:54 adam
+ * Revision 1.56 1999-06-10 11:45:30 adam
+ * Added bend_start, bend_stop handlers and removed pre_init.
+ * Handlers bend_start/bend_stop are called when service/daemon is
+ * started/stopped.
+ *
+ * Revision 1.55 1999/06/10 09:18:54 adam
* Modified so that pre_init is called when service/server is started.
*
* Revision 1.54 1999/04/16 14:45:55 adam
1024*1024, /* maximum PDU size (approx.) to allow */
"default-config", /* configuration name to pass to backend */
"", /* set user id */
- NULL, /* pre init handler */
+ 0, /* bend_start handler */
+ 0, /* bend_stop handler */
check_options, /* Default routine, for checking the run-time arguments */
check_ip_tcpd,
"",
free(pThreadHandles);
}
+ if (control_block.bend_stop)
+ (*control_block.bend_stop)(&control_block);
/* No longer require the critical section, since all threads are dead */
DeleteCriticalSection(&Thread_CritSect);
}
if (control_block.options_func(argc, argv))
return(1);
- if (control_block.pre_init)
- (*control_block.pre_init)(&control_block);
+ if (control_block.bend_start)
+ (*control_block.bend_start)(&control_block);
#ifndef WIN32
if (control_block.inetd)
inetd_connection(control_block.default_proto);