Re: [regext] draft-ietf-regext-epp-fees-02.txt: currency error handling, command wildcard

"Gould, James" <jgould@verisign.com> Tue, 28 March 2017 18:10 UTC

Return-Path: <jgould@verisign.com>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AC3C0129771 for <regext@ietfa.amsl.com>; Tue, 28 Mar 2017 11:10:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.002
X-Spam-Level:
X-Spam-Status: No, score=-2.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=verisign.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zO_-Nin4bzK7 for <regext@ietfa.amsl.com>; Tue, 28 Mar 2017 11:10:35 -0700 (PDT)
Received: from mail1.verisign.com (mail1.verisign.com [72.13.63.30]) (using TLSv1.2 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5BDB71297B8 for <regext@ietf.org>; Tue, 28 Mar 2017 11:10:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=verisign.com; l=11426; q=dns/txt; s=VRSN; t=1490724635; h=from:to:date:message-id:content-id: content-transfer-encoding:mime-version:subject; bh=ulJ+3MyqnqEHWJIjVGrOnLqwXSmeUbXKg1Or6REQx/U=; b=SrHtpaLn+BDepSYL+0Hw2FEaKxz1vvNj0xL5dvVsM9m9EI3w0ObhtvPs y30gQVDPw27SHifP9j6d2VHwTPCS/mLr5cLcgCE1zZ8J0EetFiSzaWhai Rlmtsr2fAyhToNU9uNf6jr+ZQcuBtG0k5GcFOGBi34e6ywvUpN3RJW7r2 ZkiQ+g1SFy8aeYQnDP5d0haSELu7RxhxtjYnDhSij6bmK/yUZtyaTlBss xwx7lZaryV1lUE/Z8LYWF0T7EQsmkkrHkdo590SRx8fhibY5cumCHn2rP ZC/8RHXsBfskjud6DWLm8zABnLaf5lfxiyrjjcRr/A9QnW+KfAtGBr8Hl g==;
X-IronPort-AV: E=Sophos;i="5.36,237,1486425600"; d="scan'208";a="2347103"
IronPort-PHdr: 9a23:i/+pNhBkqXqmtfPjjAuCUyQJP3N1i/DPJgcQr6AfoPdwSP36osmwAkXT6L1XgUPTWs2DsrQf2raQ6/iocFdDyK7JiGoFfp1IWk1NouQttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZrKeTpAI7SiNm82/yv95HJbQhFgDWwbaluIBmqsA7cqtQYjYx+J6gr1xDHuGFIe+NYxWNpIVKcgRPx7dqu8ZBg7ipdpesv+9ZPXqvmcas4S6dYDCk9PGAu+MLrrxjDQhCR6XYaT24bjwBHAwnB7BH9Q5fxri73vfdz1SWGIcH7S60/VC+85Kl3VhDnlCYHNyY48G7JjMxwkLlbqw+lqxBm3oLYfJ2ZOP94c6jAf90VWHBBU95RWSJfH428c4UBAekPMuZZs4bzqFQBoACiBQa3AePj1iNEi2X00KA8zu8vERvG3AslH98WvnjardL1NLoWUe+o1KXD0DHNYOlT2Tjj84jEfA0qrPaOXbJ/dsrR1E0vGB7eg1WOt4PlJTKV1v8Ms2iU6epsT/6gi2kiqwxopDWk28kiio7Mho0Py1DE8z10wJgrKt2iSU57et+kEJRWtyGbMYt5XtkuTH1vuCY/0rEGuIC0fDQEyJg9wB7fcfOHfo6V6RzgTOacOSp0iG5/dL6ihRu//1KsxvD8W8S6ylpGsCVIn9bUunwQyxDf8NWLR/lz80u7xDqC1x7f5vtLLE0yiKHVMYQuwqQqmZoWqUnDGyj2l1jog6KObUUk//So6/zgYrX7up+QL490hR/6MqQpgsGwGv44Mg4TU2if9uW80afs/Uz9QLVNk/02jrXVvI3AKcQFuKG5GQ5V0p0i6xawCTeqysgXnX4CLF5deRKHiZbmO03WLfzlEfuzmUmgnTVlyvzcI7HsApvAImLdnLrucrtx80tcxxAyzdBb6ZJUELYBIPfrV0/zu9zYCQI5MwipzOv8FtVyyJkeWWOUAq+YP6PSt0WE6f4oI+mJfIMVoiryK+A55/7yin80gUUdcrem3ZQJZ3G4Au9rI0SHbnrwjNcNC2AKvhAxTObykl2NTSZTZ2quX6I7/jw7EpypDZ/ZSo+wh7yBwD23HptRZmBeEV2MHnLoeJ+FW/cIci6dPshhkjkcX7i7V4AhzQ2utBP9y7d/MOTU+ioYtZf529hu/eHeixYy9SZoD8uDyGyNTGd0nmIQRz8uxqxwvFJywE+Z0adkm/xYCcBT5/RRXwc4Np7cyOh6C9PsVQLbZdqJR1GmTci8Dj4sU90ww8UCbFp6G9Wn3Vj/2H+IBLME35+MAJ856OqI3Xv2I8Vw0V7J06Uog1U3BMBIMDvizpJ/8A3aHMbilF+Fmu7+SaQb2SfWskyE13aDlEJeURZoF6nICzRXTEbMq9Tw/E+KdbKzFbIqKE5vyNWJKqZQIonzgE0ASPD/ftLZe0q+nm6xAVCDwbbaKMLwdmoQzDmVXFIJnA0D4V6HOBQwQCC7rDSNIiZpEAelTETx9eU64FGyS0IvhUnebUJmyr650gAYn/2HSvwVmLkDvXFy+H1PAF+h0oeOWJK7rA17cfAZOItl7Q==
X-IPAS-Result: A2HkAADlpdpY//SZrQpaAxkBAQEBAQEBAQEBAQcBAQEBARQBAQEBAQEBAQEBAQcBAQEBAYQKgQsHg1uKD5ExH4gXjTWBSzwHHwuFLkoCGoNIGAEBAQEBAQEBAQEBAoEQgjMiAQwsGiELAQEBAQEBJgEBAQEBAQEBAQEBAR0CCDYSAQEYAQECAwEBIRETJxcCBAEIDQEDBAEBAwIfBAMCBBQLBgsUAQgKBAESiW8DI60SgiaDPoNxDYMRAQEBAQEBAQEBAQEBAQEBAQEBAQEeBYEGhUSCBAiCYoJRgVUQAgEFHQULCgsMAg2CBTougjEFj2GGL4YWNAYBhnuHG4Y0VIRWig2KSySIex+BNQhZFUERAYRGHRmBSnUBiESBDQEBAQ
Received: from brn1wnexcas01.vcorp.ad.vrsn.com (brn1wnexcas01 [10.173.152.205]) by brn1lxmailout01.verisign.com (8.13.8/8.13.8) with ESMTP id v2SIAX3p030986 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Tue, 28 Mar 2017 14:10:33 -0400
Received: from BRN1WNEXMBX01.vcorp.ad.vrsn.com ([::1]) by brn1wnexcas01.vcorp.ad.vrsn.com ([::1]) with mapi id 14.03.0301.000; Tue, 28 Mar 2017 14:10:33 -0400
From: "Gould, James" <jgould@verisign.com>
To: Jody Kolker <jkolker@godaddy.com>, Thomas Corte <Thomas.Corte@knipp.de>, Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>, regext <regext@ietf.org>
Thread-Topic: [EXTERNAL] RE: Re: [regext] draft-ietf-regext-epp-fees-02.txt: currency error handling, command wildcard
Thread-Index: AQHSp+6XFlPb5gLBdUeBBPa+pDJTqw==
Date: Tue, 28 Mar 2017 18:10:32 +0000
Message-ID: <4E86D777-B3D0-4015-8FE1-56B4E5E39E1F@verisign.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.1f.0.170216
x-originating-ip: [10.173.152.4]
Content-Type: text/plain; charset="utf-8"
Content-ID: <75BC05C67FDADB4C9839788611C924CB@verisign.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/raUmjhOn2t24kGkF9sE42FeUiII>
Subject: Re: [regext] draft-ietf-regext-epp-fees-02.txt: currency error handling, command wildcard
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>, <mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>, <mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Mar 2017 18:10:40 -0000

Jody, 

Yes, the fee information should be returned for a reserved domain if pricing information does exist.  
  
—
 
JG



James Gould
Distinguished Engineer
jgould@Verisign.com

703-948-3271
12061 Bluemont Way
Reston, VA 20190

VerisignInc.com <http://verisigninc.com/> 

On 3/28/17, 10:28 AM, "Jody Kolker" <jkolker@godaddy.com> wrote:

    Thanks James.
    
    In the example listed below, reserved.domain is unavailable and apparently does not have any pricing information for the domain.  However, if fee information were available for the reserved domain, I would expect that fee information to be returned in this command even though the domain is not available for registration. 
    
    Thanks,
    Jody Kolker
    319-294-3933 (office)
    319-329-9805 (mobile) Please contact my direct supervisor Charles Beadnall (cbeadnall@godaddy.com) with any feedback.
    
    This email message and any attachments hereto is intended for use only by the addressee(s) named herein and may contain confidential information. If you have received this email in error, please immediately notify the sender and permanently delete the original and any copy of this message and its attachments.
    
    
    -----Original Message-----
    From: regext [mailto:regext-bounces@ietf.org] On Behalf Of Gould, James
    Sent: Tuesday, March 28, 2017 8:09 AM
    To: Thomas Corte <Thomas.Corte@knipp.de>; Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>; regext <regext@ietf.org>
    Subject: Re: [regext] draft-ietf-regext-epp-fees-02.txt: currency error handling, command wildcard
    
    I agree that the entire check command should not fail due to passing of an incorrect domain name, currency, command, period, or phase, but instead the extension should return the fee as unable for the specific domain name with a reason.  This is similar to how the availability check works, where if an invalid domain name is passed in the list of domain names, the availability check returns successfully but with the avail=”false” for the invalid domain name.  The check command should return a success with the appropriate availability (object or fee) indicated in the response for each object.    
    
    I had an action item from the working session yesterday to describe the proposal for the extension to the check response that matches Option C discussed at IETF-95.  The “more complex option” outlined in the list message https://www.ietf.org/mail-archive/web/eppext/current/msg00883.html provides an example of the extension to the check command and response for what was called Option C.  Option C included a single currency and a list of commands that is applied to all the domains in the availability check.  In the case of an invalid currency, the <fee:cd avail=”false”> with a <fee:reason>Invalid currency</fee:reason> could be returned for each of the domain names in the check instead of returning a failure to the availability check.  In this case Option C truly is an extension of the check with a single set of requested fee information.  
    
    C: <?xml version="1.0" encoding="utf-8" standalone="no"?>
    C: <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    C:   <command>
    C:     <check>
    C:       <domain:check
    C:         xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
    C:         <domain:name>domain.example</domain:name>
    C:         <domain:name>reserved.example</domain:name>
    C:       </domain:check>
    C:     </check>
    C:     <extension>
    C:       <fee:check
    C:         xmlns:fee="urn:ietf:params:xml:ns:fee-0.9">
    C:         <fee:currency>USD</fee:currency>
    C:         <fee:command name="create"/>
    C:         <fee:command phase="open" name="renew">
    C:           <fee:period unit="y">1</fee:period>
    C:         </fee:command>
    C:         <fee:command phase="open" name="create"/>
    C:         <fee:command phase="claims" subphase="landrush" name="create"/>
    C:         </fee:command>
    C:       </fee:check>
    C:     </extension>
    C:     <clTRID>ABC-12345</clTRID>
    C:   </command>
    C: </epp>
    
    
    S: <?xml version="1.0" encoding="utf-8" standalone="no"?>
    S: <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
    S:   <response>
    S:     <result code="1000">
    S:       <msg>Command completed successfully</msg>
    S:     </result>
    S:     <resData>
    S:       <domain:chkData
    S:         xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
    S:         <domain:cd>
    S:           <domain:name avail="1">domain.example</domain:name>
    S:         </domain:cd>
    S:         <domain:cd>
    S:           <domain:name avail="0">reserved.example</domain:name>
    S:           <domain:reason>Reserved domain</domain:reason>
    S:         </domain:cd>
    S:       </domain:chkData>
    S:     </resData>
    S:     <extension>
    S:       <fee:chkData
    S:         xmlns:fee="urn:ietf:params:xml:ns:fee-0.9">
    S:         <fee:currency>USD</fee:currency>
    S:         <fee:cd avail="1">
    S:           <fee:objID>domain.example</fee:objID>
    S:           <fee:command phase="sunrise" name="create">
    S:             <fee:period unit="y">1</fee:period>
    S:             <fee:fee description="Application Fee"
    S:               refundable="0">5.00</fee:fee>
    S:             <fee:fee description="Registration Fee"
    S:               refundable="1"
    S:               grace-period="P5D">5.00</fee:fee>
    S:           </fee:command>
    S:           <fee:command phase="open" name="renew">
    S:             <fee:period unit="y">1</fee:period>
    S:             <fee:fee description="Renewal Fee"
    S:               refundable="1"
    S:               grace-period="P5D">5.00</fee:fee>
    S:           </fee:command>
    S:           <fee:command phase="open" name="create">
    S:             <fee:period unit="y">1</fee:period>
    S:             <fee:fee description="Registration Fee"
    S:               refundable="1"
    S:               grace-period="P5D">5.00</fee:fee>
    S:           </fee:command>
    S:           <fee:command phase="claims" subphase="landrush" name="create">
    S:             <fee:period unit="y">1</fee:period>
    S:             <fee:fee description="Registration Fee"
    S:               refundable="1"
    S:               grace-period="P5D">10.00</fee:fee>
    S:           </fee:command>
    S:         </fee:cd>
    S:         <fee:cd avail="0">
    S:           <fee:objID>reserved.example</fee:objID>
    S:           <fee:reason>Reserved domain</fee:currency>
    S:         </fee:cd>
    S:       </fee:chkData>
    S:     </extension>
    S:     <trID>
    S:       <clTRID>ABC-12345</clTRID>
    S:       <svTRID>54322-XYZ</svTRID>
    S:     </trID>
    S:   </response>
    S: </epp>
    
    
      
    —
     
    JG
    
    
    
    James Gould
    Distinguished Engineer
    jgould@Verisign.com
    
    703-948-3271
    12061 Bluemont Way
    Reston, VA 20190
    
    VerisignInc.com <http://verisigninc.com/> 
    
    On 3/28/17, 5:55 AM, "regext on behalf of Thomas Corte" <regext-bounces@ietf.org on behalf of Thomas.Corte@knipp.de> wrote:
    
        However, for wrong currencies detected within some <fee:object> elements
        of a <fee:check> extension, I'm not sure whether letting the entire
        check command fail with a 2306 error is the best approach.
        
        Instead, the server could still return useful results for other
        <fee:object> elements in the command (which may have contained a correct
        currency), or even return additional information in the <reason>
        elements returned within the <fee:command avail="false"> elements
        returned for all nested <fee:command> affected by the wrong currency.
        I think the draft should be clarified regarding when to create an EPP
        error result as opposed to <fee:command avail="false"> results in the
        response to a <domain:check> command with fee extension.
        
        
    
    _______________________________________________
    regext mailing list
    regext@ietf.org
    https://www.ietf.org/mailman/listinfo/regext