From 0a226d933f06f95ea9af0452feb0f57ce08948cc Mon Sep 17 00:00:00 2001 From: "Kevin P. Fleming" Date: Mon, 12 Oct 2009 15:30:40 +0000 Subject: [PATCH] Remove automatic switching from T.38 to voice mode in chan_sip. chan_sip has some code to automatically switch from T.38 mode to voice mode when a voice frame is written to the channel while it is in T.38 mode; this was intended to handle the situation when a FAX transmission has ended and the channel is not yet hung up, but is causing problems at the beginning of FAX sessions as well when there are still voice frames 'in flight' at the time the T.38 negotiation completes. This patch removes the automatic switchover. (issue #16025) Reported by: jamicque git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@223692 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_sip.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 15e00ba64b..bb49cd72e9 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -3910,8 +3910,7 @@ static int sip_write(struct ast_channel *ast, struct ast_frame *frame) ast_set_flag(&p->flags[0], SIP_PROGRESS_SENT); } } else if (p->t38.state == T38_ENABLED && !p->t38.direct) { - p->t38.state = T38_DISABLED; - transmit_reinvite_with_sdp(p); + /* drop frame, can't sent VOICE frames while in T.38 mode */ } else { p->lastrtptx = time(NULL); res = ast_rtp_write(p->rtp, frame); -- 2.47.2