RE: [ietf-provreg] EPP to Draft: Next Steps

"Michael Young" <myoung@ca.afilias.info> Tue, 20 September 2005 17:57 UTC

Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1EHmNP-00034u-8t for provreg-archive@megatron.ietf.org; Tue, 20 Sep 2005 13:57:57 -0400
Received: from ietf-mx.ietf.org (ietf-mx [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA19441 for <provreg-archive@ietf.org>; Tue, 20 Sep 2005 13:57:53 -0400 (EDT)
Received: from nic.cafax.se ([192.71.228.17]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1EHmTE-00052R-7h for provreg-archive@ietf.org; Tue, 20 Sep 2005 14:03:59 -0400
Received: from nic.cafax.se (localhost [127.0.0.1]) by nic.cafax.se (8.12.11/8.12.11) with ESMTP id j8KHpkSU023720 for <ietf-provreg-outgoing@nic.cafax.se>; Tue, 20 Sep 2005 19:51:46 +0200 (MEST)
Received: (from majordom@localhost) by nic.cafax.se (8.12.11/8.12.11/Submit) id j8KHpkK8007607 for ietf-provreg-outgoing; Tue, 20 Sep 2005 19:51:46 +0200 (MEST)
X-Authentication-Warning: nic.cafax.se: majordom set sender to owner-ietf-provreg@cafax.se using -f
Received: from mail.libertyrms.com (vgateway.libertyrms.info [207.219.45.62] (may be forged)) by nic.cafax.se (8.12.11/8.12.11) with ESMTP id j8KHpjre016604 for <ietf-provreg@cafax.se>; Tue, 20 Sep 2005 19:51:45 +0200 (MEST)
Received: from roaming7.int.libertyrms.com ([10.1.3.237] helo=DUN911) by mail.libertyrms.com with esmtp (Exim 4.22) id 1EHmHP-0003aR-SU; Tue, 20 Sep 2005 13:51:43 -0400
From: Michael Young <myoung@ca.afilias.info>
To: 'James Gould' <jgould@verisign.com>, "'Hollenbeck, Scott'" <shollenbeck@verisign.com>, 'Patrick Mevzek' <provreg@contact.dotandco.com>, ietf-provreg@cafax.se
Subject: RE: [ietf-provreg] EPP to Draft: Next Steps
Date: Tue, 20 Sep 2005 13:51:35 -0400
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Office Outlook, Build 11.0.5510
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
In-Reply-To: <BF55C031.B0AD%jgould@verisign.com>
Thread-Index: AcW+CcPdEtfQiHCsQeW6kdRgt9gccAAAO6/w
Message-Id: <E1EHmHP-0003aR-SU@mail.libertyrms.com>
X-SA-Exim-Mail-From: myoung@ca.afilias.info
X-SA-Exim-Scanned: No; SAEximRunCond expanded to false
Sender: owner-ietf-provreg@cafax.se
Precedence: bulk
X-Spam-Score: 2.2 (++)
X-Scan-Signature: 86f85b2f88b0d50615aed44a7f9e33c7
Content-Transfer-Encoding: 7bit

Well I am rather torn on the subject, on one hand I agree with James and
Janusz that it does entail more effort and is it worth it?  On the other
hand Patrick's argument that the change could break existing server/client
behavior hasn't been adequately refuted in my opinion.  

So Scott I guess I would say that the "safest" choice is to increment the
version number.  The changes required for existing server and client
implementations are trivial to conform with this version change.  As Janusz
stated, the changes in the documents are going to lead to server changes for
some implementers anyways.  

The biggest thing to avoid for everyone was having to run a dual protocol
server but I don't see that this would be necessary with this version
increment, given the nature of the changes.


Michael Young 
-----Original Message-----
From: owner-ietf-provreg@cafax.se [mailto:owner-ietf-provreg@cafax.se] On
Behalf Of James Gould
Sent: Tuesday, September 20, 2005 1:34 PM
To: Hollenbeck, Scott; Patrick Mevzek; ietf-provreg@cafax.se
Subject: Re: [ietf-provreg] EPP to Draft: Next Steps

In reviewing this thread, I don't believe there is a need for a protocol
version number change considering the lack of severity of this issue and the
impact of a version number change on existing implementations.  Bumping the
protocol version should be reserved for changes that require XML schema
updates.  

Technically the server should return an error with an empty update according
to the current specification, but in reality there is no real harm in the
server accepting an empty update since the net effect is that no change will
occur.  I don't know any client that would intentionally send an empty
update with the expectation of an error response.  The only time an empty
update is utilized is in support of new extension operations like the
restore request in RFC 3915.  Our implementation does allow for an empty
update to conform to the extension specifications, so the new text will
match our implementation.

My vote is to leave the protocol version and schemas as is and change the
specification text as proposed.

-- 

JG 

James F. Gould
VeriSign Naming and Directory Services
jgould@verisign.com

This message is intended for the use of the individual or entity to which it
is addressed, and may contain information that is privileged, confidential
and exempt from disclosure under applicable law. Any unauthorized use,
distribution, or disclosure is strictly prohibited. If you have received
this message in error, please notify sender immediately and destroy/delete
the original transmission


> From: "Hollenbeck, Scott" <shollenbeck@verisign.com>
> Date: Tue, 20 Sep 2005 12:32:16 -0400
> To: Patrick Mevzek <provreg@contact.dotandco.com>, 
> <ietf-provreg@cafax.se>
> Subject: RE: [ietf-provreg] EPP to Draft: Next Steps
> 
>> -----Original Message-----
>> From: owner-ietf-provreg@cafax.se
>> [mailto:owner-ietf-provreg@cafax.se] On Behalf Of Patrick Mevzek
>> Sent: Tuesday, September 20, 2005 10:34 AM
>> To: ietf-provreg@cafax.se
>> Subject: Re: [ietf-provreg] EPP to Draft: Next Steps
>> 
>> Hollenbeck, Scott <shollenbeck@verisign.com> 2005-09-20 16:14
>>>> There are minor incompatibilites between the two (among
>> which how to
>>>> fill <domain:update> in case of an extension), so it
>> seems worthwile
>>>> to me to be able to clearly separates between the two, as some 
>>>> servers will implement one version, and some will implement the 
>>>> other.
>>> 
>>> Given that the schemas have not changed, and the version numbers 
>>> identify the namespaces and schemas, I don't see the need
>> to increment
>>> the version numbers.  Anything that was working a certain way before 
>>> should continue to work the same way with the proposed text changes.
>> 
>> I believe not, or there is something I do not understand, so please 
>> correct me.
>> 
>> The current RFC, mandates something in domain:update, either add, rem 
>> or chg.
>> (btw the schema does not seem to reflect that if I read it correctly, 
>> as all three elements are in a sequence with minOccurs=0) For an 
>> extension, there is thus the need of an empty domain:chg with true 
>> changes in the extension part.
> 
> All having a minOccurs=0 attribute means that all are optional.  This 
> is part of the error in 3731.  The schema correctly says they don't 
> need to be there.  The text does.  The text is wrong.
> 
> If a client send an empty element and an extension element as 
> described in the old text, the server should do nothing with the empty 
> element because the "real" update is described in the extension.  
> That's still the case with the new text, except that the new text now 
> accurately reflects what's in the schema.  It might indeed cause a 
> problem for a server written to the old text.
> 
>> Your third point in 3731bis states:
>> 3.  Changed text in Section 3.2.1.4 from "At least one <domain:add>,
>>     <domain:rem>, or <domain:chg> element MUST be provided." to "At
>>     least one <domain:add>, <domain:rem>, or <domain:chg> element
>>     MUST be provided if the command is not being extended.  All of
>>     these elements MAY be omitted if an <update> extension is
>>     present.".
>> 
>> This means to me that an empty domain:chg is not needed anymore in 
>> domain:update if there is an extension in use during the 
>> domain:update
> 
> Correct.  Sending one is a no-op; it's not needed.
> 
>> As examples, see RFC3915 :
>>    C:    <update>
>>    C:      <domain:update
>>    C:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
>>    C:       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
>>    C:       domain-1.0.xsd">
>>    C:        <domain:name>example.com</domain:name>
>>    C:        <domain:chg/>
>>    C:      </domain:update>
>>    C:    </update>
>>    C:    <extension>
>> [..]
>> 
>> and compare it to draft-hollenbeck-epp-secdns-08.txt :
>>    C:    <update>
>>    C:      <domain:update
>>    C:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
>>    C:       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
>>    C:       domain-1.0.xsd">
>>    C:        <domain:name>example.com</domain:name>
>>    C:      </domain:update>
>>    C:    </update>
>>    C:    <extension>
>> [..]
>> 
>> 
>> My current understanding is that RFC3915 is indeed correct related to 
>> the current RFC3731, and not secdns-08, but after the changes in 
>> rfc3731bis, secdns-08 is correct, and the empty domain:chg in rfc3915 
>> can be removed.
>> 
>> However in the mean time, a server using rfc3731 and enforcing the
>> rule:
>> "At least one <domain:add>,
>>     <domain:rem>, or <domain:chg> element MUST be provided."
>> will reject a change as done in the secdns-08 example.
> 
> It shouldn't necessarily reject the change.  There's an error in 3731 
> because the schema allows the element to be omitted and the text 
> doesn't.  This is clearly an inconsistency and I'll admit that a 
> version change might help isolate the inconsistency.
> 
>> So a client connecting to a RFC3731 or RFC3731bis server should act 
>> in two different ways, hence my request to be able to separate 
>> automatically those two cases.
> 
> Depends on if you implemented to the text or to the schema.  A server 
> implemented to the schema is unaffected.  It WILL, however, be 
> affected if we change the version number.
> 
> My barometer for version change has always been schema change.  Change 
> the schema, change the version number.  This situation presents a bit 
> of a problem, though, because the text change can definitely have an 
> impact on server software that deals with extensions.
> 
> I don't know which solution is appropriate in this case, so I'll ask:
> what would be the impact to existing extension implementations if the 
> domain, host, and contact version numbers were incremented?  What 
> would other implementers prefer to do?
> 
> -Scott-
> 
>