[OpenSER-Devel] [ openser-Bugs-2002156 ] "force_rport" should also add "received" parameter

SourceForge.net noreply at sourceforge.net
Fri Jul 11 15:22:26 CEST 2008


Bugs item #2002156, was opened at 2008-06-25 01:36
Message generated for change (Comment added) made by ibc_sf
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=2002156&group_id=139143

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: core
Group: ver 1.3.x
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Iaki Baz (ibc_sf)
Assigned to: Henning Westerholt (henningw)
Summary: "force_rport" should also add "received" parameter

Initial Comment:
Hi, I've realized that if OpenSer does "force_rport()" and the request source IP equals the top Via sent-by host part, then OpenSer adds "rport=$sp" but not "received=$si". For example:

-------
U OpenSER -> UAC
SIP/2.0 407 Proxy Authentication Required
Via: SIP/2.0/UDP 222.121.235.18;rport=5080;branch=z9hG4bKznzateye
-------

Well, adding "received" parameter is just mandatory in RFC 3261 if sent-by host part is a domain/hostname or an IP different of the real source IP (18.2 indicates it clearly), but it seems that RFC 3581 (rport) updates this behaviour:

--------
RFC 3581

 4.  Server Behavior
   ...
   In fact, the server MUST insert a "received" parameter
   containing the source IP address that the request came from, even if
   it is identical to the value of the "sent-by" component. 
--------

So I understand that OpenSer should add "received=$si" in case it adds "rport=$sp". Anyway I'm not 100% sure. In fact I've reported this as a possible bug to RFC 3581 authors and asked it in sip-implementors. I'll update this report with responses received there.


----------------------------------------------------------------------

>Comment By: Iaki Baz (ibc_sf)
Date: 2008-07-11 15:22

Message:
Logged In: YES 
user_id=1844020
Originator: YES

Hi Henning, I confirm that it adds now "received" when set "rport" value.
:)
Thanks a lot.

----------------------------------------------------------------------

Comment By: Henning Westerholt (henningw)
Date: 2008-07-11 14:31

Message:
Logged In: YES 
user_id=337916
Originator: NO

Hi Iaki,

i've commited a fix to the trunk. Now force_rport() also add a recieved
every time. Would be great if you can test it too, then this could be
closed.

Cheers,

Henning

----------------------------------------------------------------------

Comment By: Iaki Baz (ibc_sf)
Date: 2008-06-28 12:48

Message:
Logged In: YES 
user_id=1844020
Originator: YES

After getting replies from different sources I confirm that this is an
issue in OpenSer. A RFC3581 compliant device MUST add "received" parameter
(even if not necessary) in case it handles "rport" parameter in a
request/response.

So, in the example above:

 -------
 U OpenSER -> UAC
 SIP/2.0 407 Proxy Authentication Required
 Via: SIP/2.0/UDP 222.121.235.18;rport=5080;branch=z9hG4bKznzateye
 -------

It should be:

 -------
 U OpenSER -> UAC
 SIP/2.0 407 Proxy Authentication Required
 Via: SIP/2.0/UDP
222.121.235.18;received=222.121.235.18;rport=5080;branch=z9hG4bKznzateye
 -------


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=2002156&group_id=139143



More information about the Devel mailing list