aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2006-10-05 02:40:40 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2006-10-05 02:40:40 +0000
commit39bc5101675464f1347d12378377c79afb497d68 (patch)
tree862d82c898faa2488ab8b29125b984f8262223a9 /channels
parentff4d743a18c35066014a0b8cb3820f7ec278f7e9 (diff)
Don't totally bail out if T.38 was negotiated
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@44450 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_sip.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 55e1e5e3c..7c7326a23 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -4946,9 +4946,16 @@ static int process_sdp(struct sip_pvt *p, struct sip_request *req)
ast_rtp_lookup_mime_multiple(s3, BUFSIZ, newnoncodeccapability, 0, 0));
}
if (!newjointcapability) {
- ast_log(LOG_NOTICE, "No compatible codecs, not accepting this offer!\n");
- /* Do NOT Change current setting */
- return -1;
+ /* If T.38 was not negotiated either, totally bail out... */
+ if (!p->t38.jointcapability) {
+ ast_log(LOG_NOTICE, "No compatible codecs, not accepting this offer!\n");
+ /* Do NOT Change current setting */
+ return -1;
+ } else {
+ if (option_debug > 2)
+ ast_log(LOG_DEBUG, "Have T.38 but no audio codecs, accepting offer anyway\n");
+ return 0;
+ }
}
/* We are now ready to change the sip session and p->rtp and p->vrtp with the offered codecs, since