[sr-dev] git:treimann/master_tm-extend-callbacks: tm: Execute TMCB_ACK_NEG_IN callback on reception of a local ACK as

Timo Reimann sr at foo-lounge.de
Tue Nov 15 00:46:33 CET 2011


Module: sip-router
Branch: treimann/master_tm-extend-callbacks
Commit: 86a921a3a28d86eb66dc3c4e481b27ebb2cfff70
URL:    http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=86a921a3a28d86eb66dc3c4e481b27ebb2cfff70

Author: Timo Reimann <sr at foo-lounge.de>
Committer: Timo Reimann <sr at foo-lounge.de>
Date:   Tue Nov 15 00:41:47 2011 +0100

tm: Execute TMCB_ACK_NEG_IN callback on reception of a local ACK as
well.

---

 modules/tm/t_reply.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/modules/tm/t_reply.c b/modules/tm/t_reply.c
index c2021e7..d1af221 100644
--- a/modules/tm/t_reply.c
+++ b/modules/tm/t_reply.c
@@ -2081,6 +2081,14 @@ int reply_received( struct sip_msg  *p_msg )
 							run_trans_callbacks_off_params(TMCB_REQUEST_SENT, t,
 							                               &onsend_params);
 						}
+						if (unlikely(has_tran_tmcbs(t, TMCB_ACK_NEG_IN))){
+							INIT_TMCB_ONSEND_PARAMS(onsend_params,
+									t->uas.request, p_msg, &uac->request,
+									&uac->request.dst, ack, ack_len,
+									TMCB_LOCAL_F, branch, TYPE_LOCAL_ACK);
+							run_trans_callbacks_off_params(TMCB_ACK_NEG_IN, t,
+							                               &onsend_params);
+						}
 					shm_free(ack);
 				}
 			} else if (is_local(t) /*&& 200 <= msg_status < 300*/) {




More information about the sr-dev mailing list