[asterisk-dev] [Code Review] Properly route responses according to the Via headers in the request

Matthew Nicholson mnicholson at digium.com
Wed Dec 22 19:51:04 UTC 2010


On Wed, 2010-12-22 at 20:35 +0100, Alex Hermann wrote:
> On Wednesday 22 December 2010, Matthew Nicholson wrote:
>  
> > This patch makes asterisk respect the Via headers in a request when
> > responding to the request. Without this patch, the request is always
> > routed back to the address the initial request was received from (unless
> > nat=yes).  This can cause problems if the initial request comes through
> > a proxy and additional requests (such as INFO dtmf tones) come from a
> > different proxy.
> 
> New version looks much better. One question remains though. You set the port 
> to the port in the Via, but if rport is present, it should be set to the 
> port from which the request originated. I tried to find other code in 
> chan_sip which overrides the port in case of rport, but couldn't find it. 
> Maybe rport handling should be included in your process_via function.
> 

This can probably be supported simply by not modifying the port when
p->recv is copied.  I'll update the patch.

-- 
Matthew Nicholson
Digium, Inc. | Software Developer




More information about the asterisk-dev mailing list