[asterisk-dev] [Code Review] Skip endpoint lookup for in-dialog requests

Joshua Colp reviewboard at asterisk.org
Fri Mar 15 13:05:47 CDT 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/2392/#review8060
-----------------------------------------------------------

Ship it!


- Joshua


On March 15, 2013, 12:29 p.m., Mark Michelson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/2392/
> -----------------------------------------------------------
> 
> (Updated March 15, 2013, 12:29 p.m.)
> 
> 
> Review request for Asterisk Developers and Joshua Colp.
> 
> 
> Summary
> -------
> 
> I noticed after the NAT merge that I encountered an issue when trying to hang up calls.
> 
> If the called party hung up, Asterisk would respond with a 403 Forbidden. The reason for this was that endpoint lookup was being done on the incoming BYE. Since Asterisk did not include a user name in the To header of the initial INVITE, the from header of the BYE therefore also did not have a user name in it. The lack of a user name meant that res_sip_endpoint_identifier_user could not recognize the endpoint and thus the request was rejected.
> 
> The solution here is to not do endpoint lookups for in-dialog requests if possible. A new API call, ast_sip_dialog_set_endpoint(), a sister function to ast_sip_dialog_set_serializer() has been added. This makes the distributor able to distinguish what endpoint the request is from in-dialog and place this endpoint in the request data. The endpoint lookup module will then skip endpoint lookup if there is an endpoint already in the request data.
> 
> 
> Diffs
> -----
> 
>   /team/group/pimp_my_sip/include/asterisk/res_sip.h 383227 
>   /team/group/pimp_my_sip/res/res_sip.exports.in 383227 
>   /team/group/pimp_my_sip/res/res_sip/sip_distributor.c 383227 
>   /team/group/pimp_my_sip/res/res_sip_session.c 383227 
> 
> Diff: https://reviewboard.asterisk.org/r/2392/diff
> 
> 
> Testing
> -------
> 
> I have ensured that basic calls still function properly and now when the called party hangs up, everything performs smoothly.
> 
> 
> Thanks,
> 
> Mark
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20130315/7ce1c908/attachment.htm>


More information about the asterisk-dev mailing list