andrei      2008/05/30 23:10:54 CEST

  SER CVS Repository

  Modified files:
    modules/tm           t_cancel.c t_fwd.c t_reply.c t_reply.h 
                         timer.c 
  Log:
  - fix: in some corner cases where send blocks for a long time or when final
   reply or on send callbacks take too much time to execute for a transaction
   for which the final reply timer just expired, it is possible that the wait
   handler would execute _before_ we are finished with t (e.g. before all the
   callbacks are called). Because presence on a timer list is not ref. counted
   and we optimize deletion by allowing unlink_timer() not to wait for the
   fr_timer to finish (timer_allow_del()) this would mean the transaction will
   be deleted while still in use. The fix makes sure the wait timer is always
   started after we're not looking at t anymore (an alternative would be to
   remove timer_allow_del() from retr_buf_hanlder(), but this could cause
   fast timer slowdowns).
  
  Revision  Changes    Path
  1.31      +3 -3      sip_router/modules/tm/t_cancel.c
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/tm/t_cancel.c.diff?r1=1.30&r2=1.31
  1.105     +4 -4      sip_router/modules/tm/t_fwd.c
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/tm/t_fwd.c.diff?r1=1.104&r2=1.105
  1.161     +64 -32    sip_router/modules/tm/t_reply.c
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/tm/t_reply.c.diff?r1=1.160&r2=1.161
  1.30      +2 -2      sip_router/modules/tm/t_reply.h
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/tm/t_reply.h.diff?r1=1.29&r2=1.30
  1.84      +9 -25     sip_router/modules/tm/timer.c
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/tm/timer.c.diff?r1=1.83&r2=1.84
_______________________________________________
Serdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/serdev

Reply via email to