<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="https://reviewboard.asterisk.org/r/1923/">https://reviewboard.asterisk.org/r/1923/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On May 17th, 2012, 10:51 a.m., <b>Mark Michelson</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I suspect this will only work for incoming calls for the peer. If a call is placed to the peer, then the allowtransfer setting for that peer still will not be honored.
There are two places where peer settings are typically copied to a sip_pvt.
1. For outbound calls, check create_addr_from_peer().
2. For inbound calls, check check_peer_ok().
Copy the value in those two functions and things should be good to go.</pre>
</blockquote>
</blockquote>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Outbound calls are already copying the setting to sip_pvt in create_addr_from_peer, like you mentioned. That I saw was already being done. So, I was trying to fix inbound calls.
Thanks for pointing out check_peer_ok... I kept missing that spot in the code. I see I was close... this patch is copying this setting after the call to check_peer_ok... just needed to trace things back further (check_user_full which then calls check_peer_ok).
I will make the appropriate change and then update the review.
Thanks for pointing me in the right direction.</pre>
<br />
<p>- elguero</p>
<br />
<p>On May 15th, 2012, 7:31 p.m., elguero wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
<tr>
<td>
<div>Review request for Asterisk Developers.</div>
<div>By elguero.</div>
<p style="color: grey;"><i>Updated May 15, 2012, 7:31 p.m.</i></p>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">When setting the global setting in sip.conf for allowtransfer to "no" and then setting the peer's allowtransfer setting to "yes", call transfers are being denied. This would appear to be caused by the dialog not being set to use the peer's allowtransfer setting. The allowtransfer setting is set to the default global setting at the time of creation but never updated to reflect the related peer's setting.
This patch attempts to fix this by setting the dialog's allowtransfer to that of the peer's when there is a related peer found.</pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Tested on local machine. Posted patch to issue tracker and hopefully the reporter will test it out as well.</pre>
</td>
</tr>
</table>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-19856">ASTERISK-19856</a>
</div>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>branches/10/channels/chan_sip.c <span style="color: grey">(366599)</span></li>
</ul>
<p><a href="https://reviewboard.asterisk.org/r/1923/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>