]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix pvt_sip for inbound call to use peer's allowtransfer setting
authorMichael L. Young <elgueromexicano@gmail.com>
Fri, 25 May 2012 02:29:26 +0000 (02:29 +0000)
committerMichael L. Young <elgueromexicano@gmail.com>
Fri, 25 May 2012 02:29:26 +0000 (02:29 +0000)
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

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@367731 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index 2e7cf95983d145b6eac5e73e0d1d1d65059c5e8e..16c7da0af2675e4805cef22e8cc0ca31f0cd681c 100644 (file)
@@ -16439,6 +16439,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);