Both option -X and -R enables predictable sessions
authorAdam Dickmeiss <adam@indexdata.dk>
Mon, 28 Mar 2011 09:15:49 +0000 (11:15 +0200)
committerAdam Dickmeiss <adam@indexdata.dk>
Mon, 28 Mar 2011 09:15:49 +0000 (11:15 +0200)
We need predictable sessions when pazpar2 saves HTTP requests. If not
replay will refer to invalid sessions.

src/http_command.c
src/parameters.h
src/pazpar2.c
src/session.c

index 6acc2c3..b3e4dc7 100644 (file)
@@ -269,7 +269,7 @@ unsigned int make_sessionid(void)
     unsigned int res;
 
     seq++;
-    if (global_parameters.debug_mode)
+    if (global_parameters.predictable_sessions)
         res = seq;
     else
     {
index 59a1222..3b45497 100644 (file)
@@ -26,6 +26,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 struct parameters {
     int dump_records;
     int debug_mode;
+    int predictable_sessions;
 };
 extern struct parameters global_parameters;
 
index 84a3253..fcbbca2 100644 (file)
@@ -139,6 +139,7 @@ static int sc_main(
             break;
         case 'R':
             record_fname = arg;
+            global_parameters.predictable_sessions = 1;
             break;
         case 't':
             test_mode = 1;
@@ -153,6 +154,7 @@ static int sc_main(
             show_version();
         case 'X':
             global_parameters.debug_mode++;
+            global_parameters.predictable_sessions = 1;
             break;
         default:
             fprintf(stderr, "Usage: pazpar2\n"
index 194ab36..c0006a5 100644 (file)
@@ -86,7 +86,8 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 struct parameters global_parameters = 
 {
     0,   // dump_records
-    0    // debug_mode
+    0,   // debug_mode
+    0,   // predictable sessions
 };
 
 struct client_list {