[sr-dev] git:andrei/cancel_reason: tm: Reason header generation for local CANCELs

Andrei Pelinescu-Onciul andrei at iptel.org
Mon Mar 1 18:50:55 CET 2010


Module: sip-router
Branch: andrei/cancel_reason
Commit: 70d5b1b4c1bf4deb1dfed13679e9a76f15e9b923
URL:    http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=70d5b1b4c1bf4deb1dfed13679e9a76f15e9b923

Author: Andrei Pelinescu-Onciul <andrei at iptel.org>
Committer: Andrei Pelinescu-Onciul <andrei at iptel.org>
Date:   Mon Mar  1 18:40:19 2010 +0100

tm: Reason header generation for local CANCELs

When cancel-ing branches due to final reply, 2xx or 6xx, add a
Reason header (according to RFC3326).

E.g.: Reason: SIP;cause=200

Internal implementation notes: the branch_bm_t/cancel_bitmap
parameter of many of the reply and cancel functions was replaced
with a bigger structure that contains all the information
associated with the cancel: the cancel branch bitmap, the reason
and reason text (optional) or the  received cancel message (if
any).
Note that the current commit does not implement copying Reason
headers from a received CANCEL, it deals only with CANCEL
generated locally because of a final reply, 2xx or 6xx.

---

 modules/tm/t_cancel.c     |   47 +++++++++++--------
 modules/tm/t_cancel.h     |    7 ++-
 modules/tm/t_fwd.c        |    3 +-
 modules/tm/t_msgbuilder.c |  113 ++++++++++++++++++++++++++++++++++++++++----
 modules/tm/t_msgbuilder.h |    6 ++-
 modules/tm/t_reply.c      |   78 +++++++++++++++++--------------
 modules/tm/t_reply.h      |   37 ++++++++++++++-
 modules/tm/timer.c        |    8 ++--
 8 files changed, 221 insertions(+), 78 deletions(-)

Diff:   http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=70d5b1b4c1bf4deb1dfed13679e9a76f15e9b923



More information about the sr-dev mailing list