Hi Bogdan:
I did not use forward(), but I load sl module.
And I did use sl_send_reply() to reply
483 and 513 message and sl_reply_error().
The attached file is my openser config file.
I use this config file to run openser.
The under RFC3665 section 3.8 condition,
I got two Via headers as I mentioned before.
So, according to my config file,
Openser is a stateless proxy server under
RFC3665 section 3.8's condition?
Thank you.
Best Regards,
Fangyu Ling
----- Original Message -----
From: "Bogdan-Andrei Iancu" <bogdan(a)voice-system.ro>
To: <fancy(a)cht.com.tw>
Cc: <klaus.mailinglists(a)pernau.at>at>; <users(a)openser.org>
Sent: Wednesday, July 04, 2007 2:53 PM
Subject: Re: [OpenSER-Users] The Via Header of CANCEL Message
Hi Fangyu ,
My opinion is that the RFC3665 does not cover the stateless part.
OpenSER can be both a stateless ans stateful proxy, it is just a matter
of configuration (what functions are you using). You can get pure
stateless or stateful cfg, or a mixed one, depending of you.
If you use the TM function for relaying and replying you will get a pure
stateful proxy. For stateless functions, see the forward() or sl module.
regards,
bogdan
fancy wrote:
> Hi Bogdan:
>
> RFC3665 didn't mention any stateful or stateless
> within all the document.
> So I think it is just not covering it.
>
> By the way, is openser a stateless proxy server?
> I think it is a stateful proxy server!
> Can I config it to be a pure stateless or stateful proxy server?
>
> Thank you.
>
> Best Regards,
> Fangyu Ling
>
>
>
>> Klaus,
>>
>> CANCEL is hop-by-hop only in stateful processing and in this case, yes,
>> it has only on VIA. But if you have stateless processing, CANCEL is
>> end-2-end and it will have multiple VIAs...
>>
>> Does 3665 obsoletes stateless SIP or it is just not covering it???
>>
>> regards,
>> bogdan
>>
>> Klaus Darilion wrote:
>>
>>> Looks like it is defined clearly and openser is not 100% standard conform.
>>>
>>> regards
>>> klaus
>>>
>>> fancy wrote:
>>>
>>>
>>>> Hi Klaus:
>>>> RFC 3665 page 54 line 4:
>>>>
> Sorry it's RFC 3261 page 54 line 4:
>
>>>> A CANCEL constructed by a
>>>> client MUST have only a single Via header field value matching the
>>>> top Via value in the request being cancelled.
>>>>
>>>> and RFC 3665 at page 53:
>>>>
> Sorry it's RFC 3261 at page 53:
>
>>>> CANCEL is referred to as a "hop-by-hop" request, since it
is
>>>> responded to at each stateful proxy hop.
>>>>
>>>> and RFC 3665 at page 21:
>>>>
> Sorry it's RFC 3261 at page 21:
>
>>>> Client: A client is any network element that sends SIP requests
>>>> and receives SIP responses. Clients may or may not interact
>>>> directly with a human user. User agent clients and proxies are
>>>> clients.
>>>>
>>>> So, for my opinion, the role of proxy in this case of RFC 3665 section
3.8 is a client when it sends CANCEL message to Bob.
>>>>
>>>> If I misunderstand any RFC meanings, please correct me.
>>>> Thank you very much.
>>>>
>>>> Best Regards,
>>>> Fangyu Ling
>>>>
>>>>
>>>>
>>>>
>>>>> fancy wrote:
>>>>>
>>>>>
>>>>>> According to RFC 3665 section 3.8 and RFC 3261 section 9,
>>>>>> there is only one via header in CANCEL message
>>>>>> (message F11, F13 at page 72 of RFC 3665).
>>>>>>
>>>>>>
>>>>> Hi!
>>>>>
>>>>> I could find it in RFC 3665, but not in 3261. Where exactly in RFC
3261
>>>>> is mentioned that the CANCEL has only 1 Via header?
>>>>>
>>>>> Further, the example has only one Via header - but I could not find
any
>>>>> definition if this is a MUST or not.
>>>>>
>>>>>
>>>>>
>>>>>> How can I remove the 2nd via header?