X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fpazpar2.c;h=d7e8c9836f1fa884c86267f6b16fc4f3d9a7432e;hb=a745f0041d5e495db155d4c43883f80b0c613d7e;hp=caafc4f26a027ea69f4a942d1778b65711e86d57;hpb=6755b9a05f1a95ce8fa468bcfb9458e158e9f5a8;p=pazpar2-moved-to-github.git diff --git a/src/pazpar2.c b/src/pazpar2.c index caafc4f..d7e8c98 100644 --- a/src/pazpar2.c +++ b/src/pazpar2.c @@ -34,12 +34,12 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include -static char *path_override = 0; +static struct conf_config *sc_stop_config = 0; void child_handler(void *data) { struct conf_config *config = (struct conf_config *) data; - config_read_settings(config, path_override); + config_read_settings(config); pazpar2_event_loop(); } @@ -92,7 +92,7 @@ static int sc_main( int session_timeout = 60; const char *listener_override = 0; const char *proxy_override = 0; - struct conf_config *config; + struct conf_config *config = 0; #ifndef WIN32 if (signal(SIGPIPE, SIG_IGN) == SIG_ERR) @@ -104,7 +104,7 @@ static int sc_main( yaz_log_init_prefix("pazpar2"); yaz_log_xml_errors(0, YLOG_WARN); - while ((ret = options("dDf:h:l:p:t:T:u:VX", argv, argc, &arg)) != -2) + while ((ret = options("dDf:h:l:p:T:u:VX", argv, argc, &arg)) != -2) { switch (ret) { @@ -115,9 +115,10 @@ static int sc_main( daemon = 1; break; case 'f': - config = read_config(arg); + config = config_create(arg); if (!config) - exit(1); + return 1; + sc_stop_config = config; break; case 'h': listener_override = arg; @@ -129,9 +130,6 @@ static int sc_main( case 'p': pidfile = arg; break; - case 't': - path_override = arg; - break; case 'T': session_timeout = atoi(arg); if (session_timeout < 9 || session_timeout > 86400) @@ -158,7 +156,6 @@ static int sc_main( " -h [host:]port (REST protocol listener)\n" " -l file log to file\n" " -p pidfile PID file\n" - " -t settings\n" " -T session_timeout\n" " -u uid\n" " -V show version\n" @@ -184,7 +181,7 @@ static int sc_main( yaz_log(YLOG_FATAL, "Load config with -f"); return 1; } - ret = start_http_listener(config, listener_override, proxy_override); + ret = config_start_listeners(config, listener_override, proxy_override); if (ret) return ret; /* error starting http listener */ @@ -201,7 +198,7 @@ static int sc_main( static void sc_stop(yaz_sc_t s) { - http_close_server(); + config_stop_listeners(sc_stop_config); } int main(int argc, char **argv)