[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