[sr-dev] git:alexh/master: core modules/tm modules/sl: Make adding path and flags to redirected contacts optional

Alex Hermann alex at speakup.nl
Mon Aug 8 11:38:55 CEST 2011


On Monday 08 August 2011, Klaus Darilion wrote:
> Am 08.08.2011 11:18, schrieb Alex Hermann:
> > On Monday 08 August 2011, Alex Hermann wrote:
> >> Commit: 5c0d3f66e240686c4eda3f73928a64de266bb37e
> >> Commit: 0ef0618e2273dfd717014d4caa484f7f20f0a2c1
> >> core/dset: Create contacts with path vector as Route header
> >> 
> >> Commit: 74af2df4b37cae1b72c964eed0d1d80cc499f64e
> >> core/dset: Create contacts with flags as header parameter
> >> 
> >> core modules/tm modules/sl: Make adding path and flags to redirected
> >> contacts optional
> >> 
> >> Commit: e430827e3501181992596dd950ea0e36b41c084b
> >> modules_k/uac_redirect: Parse Contact's "flags" header parameter into
> >> branch flags.
> >> 
> >> Commit: 54e95bd7a9411f89a52774de0e457c0baa4556ef
> >> modules_k/uac_redirect: Make using the flags Contact-header-parameter
> >> configurable
> > 
> > The above set of commits make it possible to make a redirecting registrar
> > with Path support and forwarding branch flags. Not sure if this is
> > usefull at all for others. If so, please let me know and i'll commit it
> > to master.
> 
> What is a "redirecting registrar with Path support"?

A registrar receives an invite from the proxy with the aor in the ruri.
The registrar replies with a 302 with all the registered contacts for that 
aor. This is already possible ofcourse, but this set of patches enhance the 
Contact with a Route header containing the Path vector (if present) and a 
header parameter with the branch flags.

Now the proxy can honor the Path by routing using the added Route header and 
for example NAT support can be done because the proxy now had the branch flags 
of each contact.

Example:
 
hosta: bflags: 2 Path: 
sip:192.168.1.2:5060;lr;received="sip:192.168.1.18:2048;transport;udp";nat

hostb: bflags: 2 Path:
sip:192.168.1.2:5060;lr;received;"sip:192.168.1.18:1144;transport;udp";nat



Results in the following contact header in the 302:

Contact: 
<sip:hosta at 172.28.4.223:2048;line=b5psbzj0?Route=sip:192.168.1.2:5060%3blr%3breceived%3d%22sip:192.168.1.18:2048%3btransport%3dudp%22%3bnat>;q=0.3;flags=2, 
<sip:hostb at 172.28.4.40:2048?Route=sip:192.168.1.2:5060%3blr%3breceived%3d%22sip:192.168.1.18:1144%3btransport%3dudp%22%3bnat>;q=0;flags=2.

-- 
Greetings,

Alex Hermann




More information about the sr-dev mailing list