Skip to content
Snippets Groups Projects
Commit a4365a8a authored by Kinsey Moore's avatar Kinsey Moore
Browse files

Fix regression introduced by SDP fixups

If capability is adjusted when switching to UDPTL during fax transmission, fax
teardown fails.  Make sure capability is only touched if RTP is active.  This
regression was introduced in R344385.
........

Merged revisions 344769 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 344770 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@344771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
parent e48cecc8
No related branches found
No related tags found
No related merge requests found
......@@ -9290,15 +9290,18 @@ static int process_sdp(struct sip_pvt *p, struct sip_request *req, int t38action
ast_rtp_lookup_mime_multiple2(s3, NULL, newnoncodeccapability, 0, 0));
}
 
/* We are now ready to change the sip session and p->rtp and p->vrtp with the offered codecs, since
they are acceptable */
ast_format_cap_copy(p->jointcaps, newjointcapability); /* Our joint codec profile for this call */
ast_format_cap_copy(p->peercaps, newpeercapability); /* The other sides capability in latest offer */
p->jointnoncodeccapability = newnoncodeccapability; /* DTMF capabilities */
if (ast_test_flag(&p->flags[1], SIP_PAGE2_PREFERRED_CODEC)) { /* respond with single most preferred joint codec, limiting the other side's choice */
ast_codec_choose(&p->prefs, p->jointcaps, 1, &tmp_fmt);
ast_format_cap_set(p->jointcaps, &tmp_fmt);
if (portno != -1 || vportno != -1 || tportno != -1) {
/* We are now ready to change the sip session and p->rtp and p->vrtp with the offered codecs, since
they are acceptable */
ast_format_cap_copy(p->jointcaps, newjointcapability); /* Our joint codec profile for this call */
ast_format_cap_copy(p->peercaps, newpeercapability); /* The other sides capability in latest offer */
p->jointnoncodeccapability = newnoncodeccapability; /* DTMF capabilities */
/* respond with single most preferred joint codec, limiting the other side's choice */
if (ast_test_flag(&p->flags[1], SIP_PAGE2_PREFERRED_CODEC)) {
ast_codec_choose(&p->prefs, p->jointcaps, 1, &tmp_fmt);
ast_format_cap_set(p->jointcaps, &tmp_fmt);
}
}
 
/* Setup audio address and port */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment