]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Remove automatic switching from T.38 to voice mode in chan_sip.
authorKevin P. Fleming <kpfleming@digium.com>
Mon, 12 Oct 2009 15:30:40 +0000 (15:30 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Mon, 12 Oct 2009 15:30:40 +0000 (15:30 +0000)
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

index 15e00ba64b1be05ed0a6eeb7d41f70453dd5d481..bb49cd72e9a8def7f3587ff960e8c64c13e7443e 100644 (file)
@@ -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);