Browse code

- fixed t_uac 0 fr_timer (reported by Stefan Sayer) : all the fifo created transaction will have the default tm timer (fr_inv_timer, fr_timer). They will not be affected by t_set_fr or the fr_timer avps.

Andrei Pelinescu-Onciul authored on 16/12/2005 13:09:06
Showing 2 changed files
... ...
@@ -61,7 +61,7 @@ MAIN_NAME=ser
61 61
 VERSION = 0
62 62
 PATCHLEVEL = 10
63 63
 SUBLEVEL =   99
64
-EXTRAVERSION = -dev29-tm-timers
64
+EXTRAVERSION = -dev30-tm-timers
65 65
 
66 66
 RELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
67 67
 OS = $(shell uname -s | sed -e s/SunOS/solaris/ | tr "[A-Z]" "[a-z]")
... ...
@@ -50,6 +50,8 @@
50 50
  *  2004-02-11  FIFO/CANCEL + alignments (hash=f(callid,cseq)) (uli+jiri)
51 51
  *  2004-02-13  t->is_invite, t->local, t->noisy_ctimer replaced (bogdan)
52 52
  *  2004-08-23  avp support in t_uac (bogdan)
53
+ *  2005-12-16  t_uac will set the new_cell timers to the default values,
54
+ *               fixes 0 fr_timer bug (andrei)
53 55
  */
54 56
 
55 57
 #include <string.h>
... ...
@@ -200,6 +202,13 @@ int t_uac(str* method, str* headers, str* body, dlg_t* dialog,
200 202
 		LOG(L_ERR, "t_uac: short of cell shmem\n");
201 203
 		goto error2;
202 204
 	}
205
+	/* init timers hack, new_cell->fr_timer and new_cell->fr_inv_timer
206
+	 * must be set, or else the fr will happen immediately
207
+	 * we can't call init_new_t() because we don't have a sip msg
208
+	 * => we'll ignore t_set_fr() or avp timer value and will use directly the
209
+	 * module params fr_inv_timer and fr_timer -- andrei */
210
+	new_cell->fr_timeout=fr_timeout;
211
+	new_cell->fr_inv_timeout=fr_inv_timeout;
203 212
 
204 213
 	/* better reset avp list now - anyhow, it's useless from
205 214
 	 * this point (bogdan) */