diff options
author | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-05-05 14:25:15 +0000 |
---|---|---|
committer | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-05-05 14:25:15 +0000 |
commit | a135939fbda575112a23576b69c5ec4d49a059dd (patch) | |
tree | 0a93917e6b2ec7309910697de66b2ea6b92facec /channels | |
parent | 58e23ec2fbf82dc5f10344293061f622a04f688b (diff) |
Merged revisions 192387 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
........
r192387 | file | 2009-05-05 11:22:47 -0300 (Tue, 05 May 2009) | 10 lines
Fix a bug with setting t38pt_udptl at the user or peer level.
If an incoming call authenticated as a user or peer and t38pt_udptl was
not set to yes in general then no UDPTL session would be present and any
T38 related things would fail. This commit changes it so that if after
authenticating T38 is enabled but no UDPTL session is present one will be
created.
(issue AST-215)
........
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.0@192397 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index f1e10fc53..e261e68b1 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -17236,6 +17236,11 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int return 0; } + /* If T38 is needed but not present, then make it magically appear */ + if (ast_test_flag(&p->flags[1], SIP_PAGE2_T38SUPPORT) && !p->udptl) { + p->udptl = ast_udptl_new_with_bindaddr(sched, io, 0, bindaddr.sin_addr); + } + /* We have a succesful authentication, process the SDP portion if there is one */ if (find_sdp(req)) { if (process_sdp(p, req, SDP_T38_INITIATE)) { |