Subject: RE: [Sip] Error (nit) in RFC 3261

From: "Michael Hammer \(mhammer\)" <[email-masked]>
Date: Tue, 13 Jun 2006 09:56:47 -0400

FTI, p. 162 indicates that Expires is optional for Reg.

p. 59 indicates that the usage of Expires header that Paul is suggestiong:

Look in "expires" para:  "If this parameter is not provided, the value of the Expires header field is used instead."

Mike

> -----Original Message-----
> From: Paul Kyzivat (pkyzivat) 
> Sent: Tuesday, June 13, 2006 9:52 AM
> To: Francois Audet
> Cc: [email-masked]; Keith Drage; Dean Willis
> Subject: Re: [Sip] Error (nit) in RFC 3261
> 
> 
> 
> Francois Audet wrote:
> > I spotted an error in RFC 3261.
> > 
> > The Registration response (200) in section 24.1 on p. 214 
> uses and Expires Header.
> > 
> > Section 10.3, point 8 (on p. 66) states that the 200 MUST use an 
> > expires parameter, not an Expire Header (one for each contact).
> > 
> > This is clearly an error.
> 
> If/when 3261 gets  updated, can we please do something clean? 
> Specifically, say that in a REGISTER request or response the 
> Expires header serves as a default value for any Contact that 
> doesn't have an expires parameter.
> 
> 	Paul
> 
> > Also, the text says that the 200 SHOULD have a Date header, but the 
> > example on p. 214 doesn't have one. This is not really an 
> error and it 
> > seems to be widespread omission (RFC 3265, outbound, etc.).
> > 
> > Not sure what is the process for putting this in the Errata.
> > 
> > ----
> > François AUDET, Nortel Networks
> > mailto:[email-masked]
> > 
> > _______________________________________________
> > Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
> > This list is for NEW development of the core SIP Protocol Use 
> > [email-masked] for questions on current sip Use 
> > [email-masked] for new developments on the application of sip
> > 
> 
> _______________________________________________
> Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
> This list is for NEW development of the core SIP Protocol Use 
> [email-masked] for questions on current sip 
> Use [email-masked] for new developments on the application of sip
> 

_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: Paul Kyzivat <[email-masked]>
Date: Wed, 14 Jun 2006 09:26:40 -0400

The relationship of the Expires header to the expires parameter is a 
mixed bag:

- 8.3 on 3xx specifies Expires as default for expires in 3xx responses

- same in 10.2 on REGISTER

- 10.2.2 on removing bindings requires use of expires=0, no mention of 
allowing Expires:0

- 10.2.4 allows both

- 10.3#6 on removing bindings again only allows expires=0

- 10.3#7 allows both

- 10.3#8 on the contacts in the REGISTER response requires an explicit 
expires parameter in each Contact. No mention of using Expires as a default.

- 20.10 (definition of Contact header) defines the expires parameter but 
doesn't mention relationship to Expires header.

- 20.19 (definition of Expires header) says meaning is method dependent 
but doesn't mention relationship to expires parameter.

- 21.3.3 (def of 302 response) mentions both

It seems that as written, Expires acts a default for expires in 
REGISTER, *except* when trying to remove a binding.

In responses to REGISTER, the UAC is required to take Expires as a 
default for a missing expires, but the UAS is required to use an expires 
parameter, so the default should never apply.

It would be good to make this all consistent. I see no reason not to 
permit use of Expires:0 and no expires parameter when:
- removing a binding
- in a 3xx response to REGISTER

	Paul