X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fpazpar2.c;h=6c8251a3c841c38b625725faa62aac5987aec4cf;hb=3bf8f39f8b9067c605ca0bc8f1352db1de80422e;hp=3352fa07da4f8aa01e83c9d0f31ce37122e92faa;hpb=9267d02c3601122f74bdf3a9d21f30080a4a1a9a;p=pazpar2-moved-to-github.git diff --git a/src/pazpar2.c b/src/pazpar2.c index 3352fa0..6c8251a 100644 --- a/src/pazpar2.c +++ b/src/pazpar2.c @@ -56,7 +56,12 @@ void child_handler(void *data) static void show_version(void) { char yaz_version_str[80]; - printf("Pazpar2 " PACKAGE_VERSION "\n"); + printf("Pazpar2 " PACKAGE_VERSION +#ifdef PAZPAR2_VERSION_SHA1 + " " + PAZPAR2_VERSION_SHA1 +#endif +"\n"); yaz_version(yaz_version_str, 0); @@ -93,6 +98,7 @@ static int sc_main( char *arg; const char *pidfile = 0; const char *uid = 0; + int session_timeout = 60; #ifndef WIN32 if (signal(SIGPIPE, SIG_IGN) == SIG_ERR) @@ -104,7 +110,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:u:VX", argv, argc, &arg)) != -2) + while ((ret = options("dDf:h:l:p:t:T:u:VX", argv, argc, &arg)) != -2) { switch (ret) { @@ -131,6 +137,16 @@ static int sc_main( case 't': strcpy(global_parameters.settings_path_override, arg); break; + case 'T': + session_timeout = atoi(arg); + if (session_timeout < 9 || session_timeout > 86400) + { + yaz_log(YLOG_FATAL, "Session timeout out of range 10..86400: %d", + session_timeout); + return 1; + } + global_parameters.session_timeout = session_timeout; + break; case 'u': uid = arg; break; @@ -148,6 +164,7 @@ static int sc_main( " -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" " -X debug mode\n"