diff options
author | Michael L. Young <elgueromexicano@gmail.com> | 2012-05-25 02:31:58 +0000 |
---|---|---|
committer | Michael L. Young <elgueromexicano@gmail.com> | 2012-05-25 02:31:58 +0000 |
commit | 2eff35bafa161be155019c9186b7aa9e26e22aad (patch) | |
tree | 6b580487cf2c8c6231e7258c917e2cf326a33348 | |
parent | e5185367735ee26b93cddc9d162d584f412456ad (diff) |
Fix pvt_sip for inbound call to use peer's allowtransfer setting
The pvt_sip allowtransfer was not being set to that of the peer's setting.
Therefore, the global allowtransfer setting was being used instead which would
lead to calls not being transfered if the global setting was set to 'no' despite
the setting on the peer being 'yes' and vice versa, calls would be allowed to
transfer even if the peer's setting was 'no' but the global setting was 'yes'.
(Closes issue ASTERISK-19856)
Reported by: Jacek
Tested by: Michael L. Young, Jacek
Patches:
issue-asterisk-19856-branch10-v3.diff uploaded by
Michael L. Young (license 5026)
Review: https://reviewboard.asterisk.org/r/1923/
........
Merged revisions 367730 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 367731 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@367732 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r-- | channels/chan_sip.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 5bf1a9f5d..d09085425 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -16581,6 +16581,8 @@ static enum check_auth_result check_peer_ok(struct sip_pvt *p, char *of, else p->timer_b = 64 * p->timer_t1; + p->allowtransfer = peer->allowtransfer; + if (ast_test_flag(&peer->flags[0], SIP_INSECURE_INVITE)) { /* Pretend there is no required authentication */ ast_string_field_set(p, peersecret, NULL); |