draft-ietf-regext-epp-rdap-status-mapping-01.txt | draft-ietf-regext-epp-rdap-status-mapping-02.txt | |||
---|---|---|---|---|
Network Working Group J. Gould | Network Working Group J. Gould | |||
Internet-Draft VeriSign, Inc. | Internet-Draft VeriSign, Inc. | |||
Intended status: Standards Track July 5, 2016 | Intended status: Standards Track October 10, 2016 | |||
Expires: January 6, 2017 | Expires: April 13, 2017 | |||
Extensible Provisioning Protocol (EPP) and Registration Data Access | Extensible Provisioning Protocol (EPP) and Registration Data Access | |||
Protocol (RDAP) Status Mapping | Protocol (RDAP) Status Mapping | |||
draft-ietf-regext-epp-rdap-status-mapping-01 | draft-ietf-regext-epp-rdap-status-mapping-02 | |||
Abstract | Abstract | |||
This document describes the mapping of the Extensible Provisioning | This document describes the mapping of the Extensible Provisioning | |||
Protocol (EPP) statuses with the statuses registered for use in the | Protocol (EPP) statuses with the statuses registered for use in the | |||
Registration Data Access Protocol (RDAP). This document identifies | Registration Data Access Protocol (RDAP). This document identifies | |||
gaps in the mapping, and registers RDAP statuses to fill the gaps to | gaps in the mapping, and registers RDAP statuses to fill the gaps to | |||
ensure that all of the EPP RFC statuses are supported in RDAP. | ensure that all of the EPP RFC statuses are supported in RDAP. | |||
Status of This Memo | Status of This Memo | |||
skipping to change at page 1, line 35 ¶ | skipping to change at page 1, line 35 ¶ | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on January 6, 2017. | This Internet-Draft will expire on April 13, 2017. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2016 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 20 ¶ | skipping to change at page 2, line 20 ¶ | |||
1.1. Conventions Used in This Document . . . . . . . . . . . . 2 | 1.1. Conventions Used in This Document . . . . . . . . . . . . 2 | |||
2. EPP to RDAP Status Mapping . . . . . . . . . . . . . . . . . 3 | 2. EPP to RDAP Status Mapping . . . . . . . . . . . . . . . . . 3 | |||
3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | |||
3.1. JSON Values Registry . . . . . . . . . . . . . . . . . . 5 | 3.1. JSON Values Registry . . . . . . . . . . . . . . . . . . 5 | |||
4. Security Considerations . . . . . . . . . . . . . . . . . . . 9 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 9 | |||
5. Normative References . . . . . . . . . . . . . . . . . . . . 9 | 5. Normative References . . . . . . . . . . . . . . . . . . . . 9 | |||
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 10 | Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 10 | |||
Appendix B. Change History . . . . . . . . . . . . . . . . . . . 10 | Appendix B. Change History . . . . . . . . . . . . . . . . . . . 10 | |||
B.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 10 | B.1. Change from 00 to 01 . . . . . . . . . . . . . . . . . . 10 | |||
B.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 10 | B.2. Change from 01 to 02 . . . . . . . . . . . . . . . . . . 10 | |||
B.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 11 | B.3. Change from 02 to 03 . . . . . . . . . . . . . . . . . . 10 | |||
B.4. Change from 03 to REGEXT 00 . . . . . . . . . . . . . . . 11 | B.4. Change from 03 to REGEXT 00 . . . . . . . . . . . . . . . 10 | |||
B.5. Change from REGEXT 00 to REGEXT 01 . . . . . . . . . . . 11 | B.5. Change from REGEXT 00 to REGEXT 01 . . . . . . . . . . . 10 | |||
B.6. Change from REGEXT 01 to REGEXT 02 . . . . . . . . . . . 11 | ||||
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 11 | Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
1. Introduction | 1. Introduction | |||
This document maps the statuses defined in the Extensible | This document maps the statuses defined in the Extensible | |||
Provisioning Protocol (EPP) RFCs to the list of statuses registered | Provisioning Protocol (EPP) RFCs to the list of statuses registered | |||
for use in the Registration Data Access Protocol (RDAP), in the RDAP | for use in the Registration Data Access Protocol (RDAP), in the RDAP | |||
JSON Values Registry [rdap-json-values]. | JSON Values Registry [rdap-json-values]. | |||
The RDAP JSON Values Registry is described in section 10.2 of | The RDAP JSON Values Registry is described in section 10.2 of | |||
skipping to change at page 3, line 42 ¶ | skipping to change at page 3, line 42 ¶ | |||
serverRenewProhibited = | serverRenewProhibited = | |||
serverTransferProhibited = | serverTransferProhibited = | |||
serverUpdateProhibited = | serverUpdateProhibited = | |||
serverHold = | serverHold = | |||
transferPeriod = | transferPeriod = | |||
The RDAP JSON Values Registry [rdap-json-values] does have a set of | The RDAP JSON Values Registry [rdap-json-values] does have a set of | |||
prohibited statuses including "renew prohibited", "update | prohibited statuses including "renew prohibited", "update | |||
prohibited", "transfer prohibited", and "delete prohibited", but | prohibited", "transfer prohibited", and "delete prohibited", but | |||
these statuses do not directly map to the EPP prohibited statuses. | these statuses do not directly map to the EPP prohibited statuses. | |||
The EPP prohibited statuses reflect both what is prohibited ("renew", | EPP provides status codes that allow distinguishing the case that an | |||
"update", "transfer", "delete") and who set ("client" or "server") | action is prohibited because of server policy from the case that an | |||
and can clear the status. In the DNR, the client and server | action is prohibited because of a client request. The ability to | |||
prohibited statuses are separate and RDAP MUST support the same | make this distinction needs to be preserved in RDAP. | |||
separation. | ||||
Each of the EPP status values that don't map directly to an RDAP | Each of the EPP status values that don't map directly to an RDAP | |||
status value is described below. Each EPP status value includes a | status value is described below. Each EPP status value includes a | |||
proposed new RDAP status value and a description of the value. The | proposed new RDAP status value and a description of the value. The | |||
RDAP status value is derived from the EPP status value by converting | RDAP status value is derived from the EPP status value by converting | |||
the EPP camel case representation to lower case with a space | the EPP camel case representation to lower case with a space | |||
character inserted between word boundaries. | character inserted between word boundaries. | |||
addPeriod = add period; For DNR that indicates if the object is | addPeriod = add period; If the object is deleted by the client | |||
deleted by the registrar during this period, the registry | during this period, the server provides a credit to the client | |||
provides a credit to the registrar for the cost of the | for the cost of the registration. | |||
registration. | autoRenewPeriod = auto renew period; If the object is deleted by the | |||
autoRenewPeriod = auto renew period; For DNR that indicates if the | client during this period, the server provides a credit to the | |||
object is deleted by the registrar during this period, the | client for the cost of the auto renewal. | |||
registry provides a credit to the registrar for the cost of the | clientDeleteProhibited = client delete prohibited; The client | |||
auto renewal. | requested that requests to delete the object MUST be rejected. | |||
clientDeleteProhibited = client delete prohibited; For DNR that | clientHold = client hold; The client requested that the DNS | |||
indicates the client requested that requests to delete the object | delegation information MUST NOT be published for the object. | |||
MUST be rejected. | clientRenewProhibited = client renew prohibited; The client | |||
clientHold = client hold; For DNR that indicates the client | requested that requests to renew the object MUST be rejected. | |||
requested that the DNS delegation information MUST NOT be | clientTransferProhibited = client transfer prohibited; The client | |||
published for the object. | requested that requests to transfer the object MUST be rejected. | |||
clientRenewProhibited = client renew prohibited; For DNR that | clientUpdateProhibited = client update prohibited; The client | |||
indicates the client requested that requests to renew the object | requested that requests to update the object (other than to | |||
MUST be rejected. | remove this status) MUST be rejected. | |||
clientTransferProhibited = client transfer prohibited; For DNR that | pendingRestore = pending restore; An object is in the process of | |||
indicates the client requested that requests to transfer the | being restored after being in the redemption period state. | |||
object MUST be rejected. | redemptionPeriod = redemption period; A delete has been received, | |||
clientUpdateProhibited = client update prohibited; For DNR that | but the object has not yet been purged because an opportunity | |||
indicates the client requested that requests to update the object | exists to restore the object and abort the deletion process. | |||
(other than to remove this status) MUST be rejected. | renewPeriod = renew period; If the object is deleted by the client | |||
pendingRestore = pending restore; For DNR that indicates a object is | during this period, the server provides a credit to the client | |||
in the process of being restored after being in the | for the cost of the renewal. | |||
redemptionPeriod state. | serverDeleteProhibited = server delete prohibited; The server set | |||
redemptionPeriod = redemption period; For DNR that indicates a | the status so that requests to delete the object MUST be | |||
delete has been received, but the object has not yet been purged | rejected. | |||
because an opportunity exists to restore the object and abort the | serverRenewProhibited = server renew prohibited; The server set the | |||
deletion process. | status so that requests to renew the object MUST be rejected. | |||
renewPeriod = renew period; For DNR that indicates if the object is | serverTransferProhibited = server transfer prohibited; The server | |||
deleted by the registrar during this period, the registry | set the status so that requests to transfer the object MUST be | |||
provides a credit to the registrar for the cost of the renewal. | rejected. | |||
serverDeleteProhibited = server delete prohibited; For DNR that | serverUpdateProhibited = server update prohibited; The server set | |||
indicates the server set the status so that requests to delete | the status so that requests to update the object (other than to | |||
the object MUST be rejected. | remove this status) MUST be rejected. | |||
serverRenewProhibited = server renew prohibited; For DNR that | serverHold = server hold; The server set the status so that DNS | |||
indicates the server set the status so that requests to renew the | delegation information MUST NOT be published for the object. | |||
object MUST be rejected. | transferPeriod = transfer period; If the object is deleted by the | |||
serverTransferProhibited = server transfer prohibited; For DNR that | client during this period, the server provides a credit to the | |||
indicates the server set the status so that requests to transfer | client for the cost of the transfer. | |||
the object MUST be rejected. | ||||
serverUpdateProhibited = server update prohibited; For DNR that | ||||
indicates the server set the status so that requests to update | ||||
the object (other than to remove this status) MUST be rejected. | ||||
serverHold = server hold; For DNR that indicates the server set the | ||||
status so that DNS delegation information MUST NOT be published | ||||
for the object. | ||||
transferPeriod = transfer period; For DNR that indicates if the | ||||
domain name is deleted by the registrar during this period, the | ||||
registry provides a credit to the registrar for the cost of the | ||||
transfer. | ||||
The resulting mapping after registering the new RDAP statuses is: | The resulting mapping after registering the new RDAP statuses is: | |||
addPeriod = add period | addPeriod = add period | |||
autoRenewPeriod = auto renew period | autoRenewPeriod = auto renew period | |||
clientDeleteProhibited = client delete prohibited | clientDeleteProhibited = client delete prohibited | |||
clientHold = client hold | clientHold = client hold | |||
clientRenewProhibited = client renew prohibited | clientRenewProhibited = client renew prohibited | |||
clientTransferProhibited = client transfer prohibited | clientTransferProhibited = client transfer prohibited | |||
clientUpdateProhibited = client update prohibited | clientUpdateProhibited = client update prohibited | |||
skipping to change at page 6, line 4 ¶ | skipping to change at page 5, line 35 ¶ | |||
3. IANA Considerations | 3. IANA Considerations | |||
3.1. JSON Values Registry | 3.1. JSON Values Registry | |||
The following values should be registered by the IANA in the RDAP | The following values should be registered by the IANA in the RDAP | |||
JSON Values Registry described in [RFC7483]: | JSON Values Registry described in [RFC7483]: | |||
Value: add period | Value: add period | |||
Type: status | Type: status | |||
Description: For DNR that indicates if the object is deleted by the | ||||
registrar during this period, the registry provides a credit to the | Description: If the object is deleted by the client during this | |||
registrar for the cost of the registration. | period, the server provides a credit to the client for the cost of | |||
the registration. | ||||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: auto renew period | Value: auto renew period | |||
Type: status | Type: status | |||
Description: For DNR that indicates if the object is deleted by the | Description: If the object is deleted by the client during this | |||
registrar during this period, the registry provides a credit to the | period, the server provides a credit to the client for the cost of | |||
registrar for the cost of the auto renewal. | the auto renewal. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: client delete prohibited | Value: client delete prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the client requested that | Description: The client requested that requests to delete the object | |||
requests to delete the object MUST be rejected. | MUST be rejected. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: client hold | Value: client hold | |||
Type: status | Type: status | |||
Description: For DNR that indicates the client requested that the DNS | Description: The client requested that the DNS delegation information | |||
delegation information MUST NOT be published for the object. | MUST NOT be published for the object. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: client renew prohibited | Value: client renew prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the client requested that | Description: The client requested that requests to renew the object | |||
requests to renew the object MUST be rejected. | MUST be rejected. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: client transfer prohibited | Value: client transfer prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the client requested that | Description: The client requested that requests to transfer the | |||
requests to transfer the object MUST be rejected. | object MUST be rejected. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: client update prohibited | Value: client update prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the client requested that | Description: The client requested that requests to update the object | |||
requests to update the object (other than to remove this status) MUST | (other than to remove this status) MUST be rejected. | |||
be rejected. | ||||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: pending restore | Value: pending restore | |||
Type: status | Type: status | |||
Description: For DNR that indicates a object is in the process of | Description: An object is in the process of being restored after | |||
being restored after being in the redemptionPeriod state. | being in the redemption period state. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: redemption period | Value: redemption period | |||
Type: status | Type: status | |||
Description: For DNR that indicates a delete has been received, but | Description: A delete has been received, but the object has not yet | |||
the object has not yet been purged because an opportunity exists to | been purged because an opportunity exists to restore the object and | |||
restore the object and abort the deletion process. | abort the deletion process. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: renew period | Value: renew period | |||
Type: status | Type: status | |||
Description: For DNR that indicates if the object is deleted by the | Description: If the object is deleted by the client during this | |||
registrar during this period, the registry provides a credit to the | period, the server provides a credit to the client for the cost of | |||
registrar for the cost of the renewal. | the renewal. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: server delete prohibited | Value: server delete prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the server set the status so that | Description: The server set the status so that requests to delete the | |||
requests to delete the object MUST be rejected. | object MUST be rejected. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: server renew prohibited | Value: server renew prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the server set the status so that | Description: The server set the status so that requests to renew the | |||
requests to renew the object MUST be rejected. | object MUST be rejected. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: server transfer prohibited | Value: server transfer prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the server set the status so that | Description: The server set the status so that requests to transfer | |||
requests to transfer the object MUST be rejected. | the object MUST be rejected. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: server update prohibited | Value: server update prohibited | |||
Type: status | Type: status | |||
Description: For DNR that indicates the server set the status so that | Description: The server set the status so that requests to update the | |||
requests to update the object (other than to remove this status) MUST | object (other than to remove this status) MUST be rejected. | |||
be rejected. | ||||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: server hold | Value: server hold | |||
Type: status | Type: status | |||
Description: For DNR that indicates the server set the status so that | Description: The server set the status so that DNS delegation | |||
DNS delegation information MUST NOT be published for the object. | information MUST NOT be published for the object. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
Value: transfer period | Value: transfer period | |||
Type: status | Type: status | |||
Description: For DNR that indicates if the domain name is deleted by | Description: If the object is deleted by the client during this | |||
the registrar during this period, the registry provides a credit to | period, the server provides a credit to the client for the cost of | |||
the registrar for the cost of the transfer. | the transfer. | |||
Registrant Name: IESG | Registrant Name: IESG | |||
Registrant Contact Information: iesg@ietf.org | Registrant Contact Information: iesg@ietf.org | |||
4. Security Considerations | 4. Security Considerations | |||
The status values described in this document can be subject to | The status values described in this document can be subject to | |||
server-side information disclosure policies that restrict display of | server-side information disclosure policies that restrict display of | |||
the values to authorized clients. Implementers may wish to review | the values to authorized clients. Implementers may wish to review | |||
skipping to change at page 10, line 35 ¶ | skipping to change at page 10, line 17 ¶ | |||
2015. | 2015. | |||
[rdap-json-values] | [rdap-json-values] | |||
"RDAP JSON Values Registry", | "RDAP JSON Values Registry", | |||
<https://www.iana.org/assignments/rdap-json-values/rdap- | <https://www.iana.org/assignments/rdap-json-values/rdap- | |||
json-values.xhtml>. | json-values.xhtml>. | |||
Appendix A. Acknowledgements | Appendix A. Acknowledgements | |||
Suggestions that have been incorporated into this document were | Suggestions that have been incorporated into this document were | |||
provided by Andrew Newton, Scott Hollenbeck, Jim Galvin, and Gustavo | provided by Andrew Newton, Scott Hollenbeck, Jim Galvin, Gustavo | |||
Lozano. | Lozano, and Robert Sparks. | |||
Appendix B. Change History | Appendix B. Change History | |||
B.1. Change from 00 to 01 | B.1. Change from 00 to 01 | |||
1. Changed the mapping of "linked" to "associated" and removed the | 1. Changed the mapping of "linked" to "associated" and removed the | |||
registration of "linked", based on feedback from Andrew Newton on | registration of "linked", based on feedback from Andrew Newton on | |||
the weirds mailing list. | the weirds mailing list. | |||
B.2. Change from 01 to 02 | B.2. Change from 01 to 02 | |||
skipping to change at page 11, line 24 ¶ | skipping to change at page 11, line 5 ¶ | |||
B.5. Change from REGEXT 00 to REGEXT 01 | B.5. Change from REGEXT 00 to REGEXT 01 | |||
1. Updated based on regext mailing feedback from Scott Hollenbeck | 1. Updated based on regext mailing feedback from Scott Hollenbeck | |||
that included updating the registrant for the registration of the | that included updating the registrant for the registration of the | |||
new statuses to IESG and iesg@ietf.org, and revising the security | new statuses to IESG and iesg@ietf.org, and revising the security | |||
section. Changed to standards track based on suggestion by Jim | section. Changed to standards track based on suggestion by Jim | |||
Galvin and support from Gustavo Lozano on the regext mailing | Galvin and support from Gustavo Lozano on the regext mailing | |||
list. | list. | |||
B.6. Change from REGEXT 01 to REGEXT 02 | ||||
1. Updated the text associated with distinguishing client and server | ||||
prohibited statuses in RDAP based on feedback by Robert Sparks on | ||||
the regext mailing list. | ||||
2. Removed the "For DNR that indicates" text from the description of | ||||
the statuses based on feedback by Robert Sparks on the regext | ||||
mailing list. | ||||
3. Made a few editorial changes to the status descriptions including | ||||
referring to "redemption period" instead of "redemptionPeriod" | ||||
and referring to "object" instead of "domain name". | ||||
4. Changed all references of "registrar" to "client" and "registry" | ||||
to "server" in the status descriptions to be consistent. | ||||
Author's Address | Author's Address | |||
James Gould | James Gould | |||
VeriSign, Inc. | VeriSign, Inc. | |||
12061 Bluemont Way | 12061 Bluemont Way | |||
Reston, VA 20190 | Reston, VA 20190 | |||
US | US | |||
Email: jgould@verisign.com | Email: jgould@verisign.com | |||
URI: http://www.verisigninc.com | URI: http://www.verisigninc.com | |||
End of changes. 28 change blocks. | ||||
108 lines changed or deleted | 109 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |