X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=server%2Fstatserv.c;h=aab25b6d0c40b551f4a36e43675290a82ca20f4d;hb=29ad0d85b05dd7ed7a68a01b87ebce5195bdbb85;hp=965d5d32a6c46b2b05774a081f3bfe24a1bb0b17;hpb=ee171c36f5db3f64d42b840c247ac33f056d656d;p=yaz-moved-to-github.git diff --git a/server/statserv.c b/server/statserv.c index 965d5d3..aab25b6 100644 --- a/server/statserv.c +++ b/server/statserv.c @@ -7,7 +7,10 @@ * Chas Woodfield, Fretwell Downing Datasystems. * * $Log: statserv.c,v $ - * Revision 1.61 2000-03-15 12:59:49 adam + * Revision 1.62 2000-03-17 12:47:02 adam + * Minor changes to admin client. + * + * Revision 1.61 2000/03/15 12:59:49 adam * Added handle member to statserv_control. * * Revision 1.60 2000/03/14 09:06:11 adam @@ -541,10 +544,20 @@ void statserv_remove(IOCHAN pIOChannel) void statserv_closedown() { IOCHAN p; + + if (control_block.bend_stop) + (*control_block.bend_stop)(&control_block); + for (p = pListener; p; p = p->next) iochan_destroy(p); } +void sigterm(int sig) +{ + statserv_closedown(); + exit (0); +} + static void *new_session (void *vp); static void listener(IOCHAN h, int event) @@ -852,8 +865,10 @@ int statserv_start(int argc, char **argv) me++; else me = argv[0]; + logf (LOG_LOG, "Starting server %s", me); #else me = argv[0]; + logf (LOG_LOG, "Starting server %s pid=%d", me, getpid()); #endif if (control_block.options_func(argc, argv)) return(1); @@ -868,6 +883,7 @@ int statserv_start(int argc, char **argv) if (control_block.dynamic) signal(SIGCHLD, catchchld); } + signal (SIGTERM, sigterm); if (*control_block.setuid) { struct passwd *pw;