X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=server%2Fstatserv.c;h=ec506a5cd8be5cb2fd3eaceddd6e2c26133c3b85;hp=64477ead920cf4d8cba60cbdee7c6ff41e74c8e2;hb=068a5a7412f492019b4d6f5e89158098d44368f7;hpb=1f7958b4f3d909e12b5d76ec9f5a080f0fbca61f diff --git a/server/statserv.c b/server/statserv.c index 64477ea..ec506a5 100644 --- a/server/statserv.c +++ b/server/statserv.c @@ -7,7 +7,17 @@ * Chas Woodfield, Fretwell Downing Datasystem. * * $Log: statserv.c,v $ - * Revision 1.41 1997-09-29 07:19:32 adam + * Revision 1.43 1997-10-31 12:20:09 adam + * Improved memory debugging for xmalloc/nmem.c. References to NMEM + * instead of ODR in n ESPEC-1 handling in source d1_espec.c. + * Bug fix: missing fclose in data1_read_espec1. + * + * Revision 1.42 1997/10/27 14:03:02 adam + * Added new member to statserver_options_block, pre_init, which + * specifies a callback to be invoked after command line parsing and + * before the server listens for the first time. + * + * Revision 1.41 1997/09/29 07:19:32 adam * Server library uses nmem_init/nmem_exit. The log prefix no longer * includes leading path on NT. * @@ -181,7 +191,8 @@ static statserv_options_block control_block = { 60, /* idle timeout (minutes) */ 1024*1024, /* maximum PDU size (approx.) to allow */ "default-config", /* configuration name to pass to backend */ - "" /* set user id */ + "", /* set user id */ + NULL }; /* @@ -393,10 +404,12 @@ static void listener(IOCHAN h, int event) } logf(LOG_DEBUG, "Setting timeout %d", control_block.idle_timeout); iochan_setdata(new_chan, newas); - iochan_settimeout(new_chan, control_block.idle_timeout * 60); + iochan_settimeout(new_chan, control_block.idle_timeout * 60); +#ifndef WINDOWS logf(LOG_DEBUG, "Determining client address"); a = cs_addrstr(new_line); - logf(LOG_LOG, "Accepted connection from %s", a ? a : "[Unknown]"); + logf(LOG_LOG, "Accepted connection from %s", a ? a : "[Unknown]"); +#endif /* Now what we need todo is create a new thread with this iochan as the parameter */ /* if (CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)event_loop, new_chan, @@ -777,10 +790,6 @@ int statserv_main(int argc, char **argv) } } -#if 0 - log_init(control_block.loglevel, NULL, control_block.logfile); -#endif /* WINDOWS */ - if ((pListener == NULL) && *control_block.default_listen) add_listener(control_block.default_listen, protocol); @@ -789,6 +798,8 @@ int statserv_main(int argc, char **argv) inetd_connection(protocol); else { + if (control_block.pre_init) + (*control_block.pre_init)(&control_block); if (control_block.dynamic) signal(SIGCHLD, catchchld); }