From 0b26b56316fe2109cd54cd22a1e82742dc9ff8b6 Mon Sep 17 00:00:00 2001
From: Joshua Colp <jcolp@digium.com>
Date: Thu, 5 Oct 2006 18:03:34 +0000
Subject: [PATCH] Merged revisions 44486 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44486 | file | 2006-10-05 14:01:51 -0400 (Thu, 05 Oct 2006) | 2 lines

One more T.38 fix! Don't leave a reinvite hanging by a thread if the other side is already setup with T.38

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44487 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/chan_sip.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 241d848110..7f7f332445 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -13133,6 +13133,12 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
 									transmit_response_reliable(p, "488 Not acceptable here", req);
 								sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
 							}
+						} else {
+							/* The other side is already setup for T.38 most likely so we need to acknowledge this too */
+							transmit_response_with_t38_sdp(p, "200 OK", req, XMIT_CRITICAL);
+							p->t38.state = T38_ENABLED;
+							if (option_debug)
+								ast_log(LOG_DEBUG, "T38 state changed to %d on channel %s\n", p->t38.state, p->owner ? p->owner->name : "<none>");
 						}
 					} else {
 						/* Other side is not a SIP channel */
-- 
GitLab