1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
---|
2 | <!-- Generated by rfcdiff 1.38: rfcdiff --> |
---|
3 | <!-- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional" > --> |
---|
4 | <html> |
---|
5 | <head> |
---|
6 | <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> |
---|
7 | <meta http-equiv="Content-Style-Type" content="text/css" /> |
---|
8 | <title>Diff: p4-conditional.unpg.txt - rfc7232-to-be.unpg.txt</title> |
---|
9 | <style type="text/css"> |
---|
10 | body { margin: 0.4ex; margin-right: auto; } |
---|
11 | tr { } |
---|
12 | td { white-space: pre; font-family: monospace; vertical-align: top; font-size: 0.86em;} |
---|
13 | th { font-size: 0.86em; } |
---|
14 | .small { font-size: 0.6em; font-style: italic; font-family: Verdana, Helvetica, sans-serif; } |
---|
15 | .left { background-color: #EEE; } |
---|
16 | .right { background-color: #FFF; } |
---|
17 | .diff { background-color: #CCF; } |
---|
18 | .lblock { background-color: #BFB; } |
---|
19 | .rblock { background-color: #FF8; } |
---|
20 | .insert { background-color: #8FF; } |
---|
21 | .delete { background-color: #ACF; } |
---|
22 | .void { background-color: #FFB; } |
---|
23 | .cont { background-color: #EEE; } |
---|
24 | .linebr { background-color: #AAA; } |
---|
25 | .lineno { color: red; background-color: #FFF; font-size: 0.7em; text-align: right; padding: 0 2px; } |
---|
26 | .elipsis{ background-color: #AAA; } |
---|
27 | .left .cont { background-color: #DDD; } |
---|
28 | .right .cont { background-color: #EEE; } |
---|
29 | .lblock .cont { background-color: #9D9; } |
---|
30 | .rblock .cont { background-color: #DD6; } |
---|
31 | .insert .cont { background-color: #0DD; } |
---|
32 | .delete .cont { background-color: #8AD; } |
---|
33 | .stats, .stats td, .stats th { background-color: #EEE; padding: 2px 0; } |
---|
34 | </style> |
---|
35 | </head> |
---|
36 | <body > |
---|
37 | <table border="0" cellpadding="0" cellspacing="0"> |
---|
38 | <tr bgcolor="orange"><th></th><th> p4-conditional.unpg.txt </th><th> </th><th> rfc7232-to-be.unpg.txt </th><th></th></tr> |
---|
39 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
40 | <tr><td><a name="diff0001" /></td></tr> |
---|
41 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">HTTPbis Working Group</span> R. Fielding, Ed.</td><td> </td><td class="rblock"><span class="insert">Internet Engineering Task Force (IETF)</span> R. Fielding, Ed.</td><td class="lineno" valign="top"></td></tr> |
---|
42 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Internet-Draft</span> Adobe</td><td> </td><td class="rblock"><span class="insert">Request for Comments: 7232</span> Adobe</td><td class="lineno" valign="top"></td></tr> |
---|
43 | <tr><td class="lineno" valign="top"></td><td class="lblock">Obsoletes: 2616 <span class="delete">(if approved)</span> J. Reschke, Ed.</td><td> </td><td class="rblock">Obsoletes: 2616 J. Reschke, Ed.</td><td class="lineno" valign="top"></td></tr> |
---|
44 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Intended status:</span> Standards Track greenbytes</td><td> </td><td class="rblock"><span class="insert">Category:</span> Standards Track greenbytes</td><td class="lineno" valign="top"></td></tr> |
---|
45 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Expires: November 16, 2014</span> May <span class="delete">15,</span> 2014</td><td> </td><td class="rblock"><span class="insert">ISSN: 2070-1721</span> May 2014</td><td class="lineno" valign="top"></td></tr> |
---|
46 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
47 | <tr><td class="lineno" valign="top"></td><td class="left"> Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests</td><td> </td><td class="right"> Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests</td><td class="lineno" valign="top"></td></tr> |
---|
48 | <tr><td><a name="diff0002" /></td></tr> |
---|
49 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> draft-ietf-httpbis-p4-conditional-latest</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
50 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
51 | <tr><td class="lineno" valign="top"></td><td class="left">Abstract</td><td> </td><td class="right">Abstract</td><td class="lineno" valign="top"></td></tr> |
---|
52 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
53 | <tr><td class="lineno" valign="top"></td><td class="left"> The Hypertext Transfer Protocol (HTTP) is a stateless application-</td><td> </td><td class="right"> The Hypertext Transfer Protocol (HTTP) is a stateless application-</td><td class="lineno" valign="top"></td></tr> |
---|
54 | <tr><td class="lineno" valign="top"></td><td class="left"> level protocol for distributed, collaborative, hypertext information</td><td> </td><td class="right"> level protocol for distributed, collaborative, hypertext information</td><td class="lineno" valign="top"></td></tr> |
---|
55 | <tr><td class="lineno" valign="top"></td><td class="left"> systems. This document defines HTTP/1.1 conditional requests,</td><td> </td><td class="right"> systems. This document defines HTTP/1.1 conditional requests,</td><td class="lineno" valign="top"></td></tr> |
---|
56 | <tr><td class="lineno" valign="top"></td><td class="left"> including metadata header fields for indicating state changes,</td><td> </td><td class="right"> including metadata header fields for indicating state changes,</td><td class="lineno" valign="top"></td></tr> |
---|
57 | <tr><td class="lineno" valign="top"></td><td class="left"> request header fields for making preconditions on such state, and</td><td> </td><td class="right"> request header fields for making preconditions on such state, and</td><td class="lineno" valign="top"></td></tr> |
---|
58 | <tr><td class="lineno" valign="top"></td><td class="left"> rules for constructing the responses to a conditional request when</td><td> </td><td class="right"> rules for constructing the responses to a conditional request when</td><td class="lineno" valign="top"></td></tr> |
---|
59 | <tr><td class="lineno" valign="top"></td><td class="left"> one or more preconditions evaluate to false.</td><td> </td><td class="right"> one or more preconditions evaluate to false.</td><td class="lineno" valign="top"></td></tr> |
---|
60 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
61 | <tr><td><a name="diff0003" /></td></tr> |
---|
62 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">Editorial Note (To be removed by RFC Editor)</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
63 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
64 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Discussion of this draft takes place on the HTTPBIS working group</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
65 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> mailing list (ietf-http-wg@w3.org), which is archived at</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
66 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <http://lists.w3.org/Archives/Public/ietf-http-wg/>.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
67 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
68 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> The current issues list is at</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
69 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <http://tools.ietf.org/wg/httpbis/trac/report/3> and related</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
70 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> documents (including fancy diffs) can be found at</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
71 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> <http://tools.ietf.org/wg/httpbis/>.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
72 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"></span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
73 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> _This is a temporary document for the purpose of tracking the</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
74 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> editorial changes made during the AUTH48 (RFC publication) phase._</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
75 | <tr><td class="lineno" valign="top"></td><td class="lblock"> </td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
76 | <tr><td class="lineno" valign="top"></td><td class="left">Status of This Memo</td><td> </td><td class="right">Status of This Memo</td><td class="lineno" valign="top"></td></tr> |
---|
77 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
78 | <tr><td><a name="diff0004" /></td></tr> |
---|
79 | <tr><td class="lineno" valign="top"></td><td class="lblock"> This <span class="delete">Internet-Draft</span> is <span class="delete">submitted in full conformance with the</span></td><td> </td><td class="rblock"> This is <span class="insert">an Internet Standards Track document.</span></td><td class="lineno" valign="top"></td></tr> |
---|
80 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> provisions of BCP 78 and BCP 79.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
81 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
82 | <tr><td><a name="diff0005" /></td></tr> |
---|
83 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">Internet-Drafts are working documents</span> of the Internet Engineering</td><td> </td><td class="rblock"> <span class="insert">This document is a product</span> of the Internet Engineering Task Force</td><td class="lineno" valign="top"></td></tr> |
---|
84 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Task Force (IETF). <span class="delete">Note that other groups may also distribute</span></td><td> </td><td class="rblock"> (IETF). <span class="insert">It represents the consensus</span> of <span class="insert">the IETF community. It has</span></td><td class="lineno" valign="top"></td></tr> |
---|
85 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> working documents as Internet-Drafts. The list</span> of <span class="delete">current Internet-</span></td><td> </td><td class="rblock"><span class="insert"> received public review and has been approved for publication by the</span></td><td class="lineno" valign="top"></td></tr> |
---|
86 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> Drafts</span> is <span class="delete">at http://datatracker.ietf.org/drafts/current/.</span></td><td> </td><td class="rblock"><span class="insert"> Internet Engineering Steering Group (IESG). Further information on</span></td><td class="lineno" valign="top"></td></tr> |
---|
87 | <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> Internet Standards</span> is <span class="insert">available in Section 2 of RFC 5741.</span></td><td class="lineno" valign="top"></td></tr> |
---|
88 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
89 | <tr><td><a name="diff0006" /></td></tr> |
---|
90 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">Internet-Drafts are draft documents valid for a maximum</span> of <span class="delete">six months</span></td><td> </td><td class="rblock"> <span class="insert">Information about the current status</span> of <span class="insert">this document, any errata,</span></td><td class="lineno" valign="top"></td></tr> |
---|
91 | <tr><td class="lineno" valign="top"></td><td class="lblock"> and may be <span class="delete">updated, replaced, or obsoleted by other documents</span> at <span class="delete">any</span></td><td> </td><td class="rblock"> and <span class="insert">how to provide feedback on it</span> may be <span class="insert">obtained</span> at</td><td class="lineno" valign="top"></td></tr> |
---|
92 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> time. It is inappropriate to use Internet-Drafts as reference</span></td><td> </td><td class="rblock"> <span class="insert">http://www.rfc-editor.org/info/rfc7232.</span></td><td class="lineno" valign="top"></td></tr> |
---|
93 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> material or to cite them other than as "work in progress."</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
94 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> This Internet-Draft will expire on November 16, 2014.</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
95 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
96 | <tr><td class="lineno" valign="top"></td><td class="left">Copyright Notice</td><td> </td><td class="right">Copyright Notice</td><td class="lineno" valign="top"></td></tr> |
---|
97 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
98 | <tr><td class="lineno" valign="top"></td><td class="left"> Copyright (c) 2014 IETF Trust and the persons identified as the</td><td> </td><td class="right"> Copyright (c) 2014 IETF Trust and the persons identified as the</td><td class="lineno" valign="top"></td></tr> |
---|
99 | <tr><td class="lineno" valign="top"></td><td class="left"> document authors. All rights reserved.</td><td> </td><td class="right"> document authors. All rights reserved.</td><td class="lineno" valign="top"></td></tr> |
---|
100 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
101 | <tr><td class="lineno" valign="top"></td><td class="left"> This document is subject to BCP 78 and the IETF Trust's Legal</td><td> </td><td class="right"> This document is subject to BCP 78 and the IETF Trust's Legal</td><td class="lineno" valign="top"></td></tr> |
---|
102 | <tr><td class="lineno" valign="top"></td><td class="left"> Provisions Relating to IETF Documents</td><td> </td><td class="right"> Provisions Relating to IETF Documents</td><td class="lineno" valign="top"></td></tr> |
---|
103 | <tr><td class="lineno" valign="top"></td><td class="left"> (http://trustee.ietf.org/license-info) in effect on the date of</td><td> </td><td class="right"> (http://trustee.ietf.org/license-info) in effect on the date of</td><td class="lineno" valign="top"></td></tr> |
---|
104 | <tr><td class="lineno" valign="top"></td><td class="left"> publication of this document. Please review these documents</td><td> </td><td class="right"> publication of this document. Please review these documents</td><td class="lineno" valign="top"></td></tr> |
---|
105 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
106 | <tr bgcolor="gray" ><td></td><th><a name="part-l2" /><small>skipping to change at</small><em> page 5, line 13</em></th><th> </th><th><a name="part-r2" /><small>skipping to change at</small><em> page 5, line 13</em></th><td></td></tr> |
---|
107 | <tr><td class="lineno" valign="top"></td><td class="left"> documents. Appendix C shows the collected grammar with all list</td><td> </td><td class="right"> documents. Appendix C shows the collected grammar with all list</td><td class="lineno" valign="top"></td></tr> |
---|
108 | <tr><td class="lineno" valign="top"></td><td class="left"> operators expanded to standard ABNF notation.</td><td> </td><td class="right"> operators expanded to standard ABNF notation.</td><td class="lineno" valign="top"></td></tr> |
---|
109 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
110 | <tr><td class="lineno" valign="top"></td><td class="left">2. Validators</td><td> </td><td class="right">2. Validators</td><td class="lineno" valign="top"></td></tr> |
---|
111 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
112 | <tr><td class="lineno" valign="top"></td><td class="left"> This specification defines two forms of metadata that are commonly</td><td> </td><td class="right"> This specification defines two forms of metadata that are commonly</td><td class="lineno" valign="top"></td></tr> |
---|
113 | <tr><td class="lineno" valign="top"></td><td class="left"> used to observe resource state and test for preconditions:</td><td> </td><td class="right"> used to observe resource state and test for preconditions:</td><td class="lineno" valign="top"></td></tr> |
---|
114 | <tr><td class="lineno" valign="top"></td><td class="left"> modification dates (Section 2.2) and opaque entity tags</td><td> </td><td class="right"> modification dates (Section 2.2) and opaque entity tags</td><td class="lineno" valign="top"></td></tr> |
---|
115 | <tr><td class="lineno" valign="top"></td><td class="left"> (Section 2.3). Additional metadata that reflects resource state has</td><td> </td><td class="right"> (Section 2.3). Additional metadata that reflects resource state has</td><td class="lineno" valign="top"></td></tr> |
---|
116 | <tr><td class="lineno" valign="top"></td><td class="left"> been defined by various extensions of HTTP, such as Web Distributed</td><td> </td><td class="right"> been defined by various extensions of HTTP, such as Web Distributed</td><td class="lineno" valign="top"></td></tr> |
---|
117 | <tr><td><a name="diff0007" /></td></tr> |
---|
118 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Authoring and Versioning (WebDAV<span class="delete">, [RFC4918])</span>, that are beyond the</td><td> </td><td class="rblock"> Authoring and Versioning (WebDAV<span class="insert">) [RFC4918]</span>, that are beyond the</td><td class="lineno" valign="top"></td></tr> |
---|
119 | <tr><td class="lineno" valign="top"></td><td class="left"> scope of this specification. A resource metadata value is referred</td><td> </td><td class="right"> scope of this specification. A resource metadata value is referred</td><td class="lineno" valign="top"></td></tr> |
---|
120 | <tr><td class="lineno" valign="top"></td><td class="left"> to as a "validator" when it is used within a precondition.</td><td> </td><td class="right"> to as a "validator" when it is used within a precondition.</td><td class="lineno" valign="top"></td></tr> |
---|
121 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
122 | <tr><td class="lineno" valign="top"></td><td class="left">2.1. Weak versus Strong</td><td> </td><td class="right">2.1. Weak versus Strong</td><td class="lineno" valign="top"></td></tr> |
---|
123 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
124 | <tr><td class="lineno" valign="top"></td><td class="left"> Validators come in two flavors: strong or weak. Weak validators are</td><td> </td><td class="right"> Validators come in two flavors: strong or weak. Weak validators are</td><td class="lineno" valign="top"></td></tr> |
---|
125 | <tr><td class="lineno" valign="top"></td><td class="left"> easy to generate but are far less useful for comparisons. Strong</td><td> </td><td class="right"> easy to generate but are far less useful for comparisons. Strong</td><td class="lineno" valign="top"></td></tr> |
---|
126 | <tr><td class="lineno" valign="top"></td><td class="left"> validators are ideal for comparisons but can be very difficult (and</td><td> </td><td class="right"> validators are ideal for comparisons but can be very difficult (and</td><td class="lineno" valign="top"></td></tr> |
---|
127 | <tr><td class="lineno" valign="top"></td><td class="left"> occasionally impossible) to generate efficiently. Rather than impose</td><td> </td><td class="right"> occasionally impossible) to generate efficiently. Rather than impose</td><td class="lineno" valign="top"></td></tr> |
---|
128 | <tr><td class="lineno" valign="top"></td><td class="left"> that all forms of resource adhere to the same strength of validator,</td><td> </td><td class="right"> that all forms of resource adhere to the same strength of validator,</td><td class="lineno" valign="top"></td></tr> |
---|
129 | <tr><td class="lineno" valign="top"></td><td class="left"> HTTP exposes the type of validator in use and imposes restrictions on</td><td> </td><td class="right"> HTTP exposes the type of validator in use and imposes restrictions on</td><td class="lineno" valign="top"></td></tr> |
---|
130 | <tr><td class="lineno" valign="top"></td><td class="left"> when weak validators can be used as preconditions.</td><td> </td><td class="right"> when weak validators can be used as preconditions.</td><td class="lineno" valign="top"></td></tr> |
---|
131 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
132 | <tr><td class="lineno" valign="top"></td><td class="left"> A "strong validator" is representation metadata that changes value</td><td> </td><td class="right"> A "strong validator" is representation metadata that changes value</td><td class="lineno" valign="top"></td></tr> |
---|
133 | <tr><td class="lineno" valign="top"></td><td class="left"> whenever a change occurs to the representation data that would be</td><td> </td><td class="right"> whenever a change occurs to the representation data that would be</td><td class="lineno" valign="top"></td></tr> |
---|
134 | <tr><td class="lineno" valign="top"></td><td class="left"> observable in the payload body of a 200 (OK) response to GET.</td><td> </td><td class="right"> observable in the payload body of a 200 (OK) response to GET.</td><td class="lineno" valign="top"></td></tr> |
---|
135 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
136 | <tr><td class="lineno" valign="top"></td><td class="left"> A strong validator might change for reasons other than a change to</td><td> </td><td class="right"> A strong validator might change for reasons other than a change to</td><td class="lineno" valign="top"></td></tr> |
---|
137 | <tr><td class="lineno" valign="top"></td><td class="left"> the representation data, such as when a semantically significant part</td><td> </td><td class="right"> the representation data, such as when a semantically significant part</td><td class="lineno" valign="top"></td></tr> |
---|
138 | <tr><td class="lineno" valign="top"></td><td class="left"> of the representation metadata is changed (e.g., Content-Type), but</td><td> </td><td class="right"> of the representation metadata is changed (e.g., Content-Type), but</td><td class="lineno" valign="top"></td></tr> |
---|
139 | <tr><td><a name="diff0008" /></td></tr> |
---|
140 | <tr><td class="lineno" valign="top"></td><td class="lblock"> it is in the best interests of the origin server to <span class="delete">only change</span> the</td><td> </td><td class="rblock"> it is in the best interests of the origin server to <span class="insert">change only</span> the</td><td class="lineno" valign="top"></td></tr> |
---|
141 | <tr><td class="lineno" valign="top"></td><td class="left"> value when it is necessary to invalidate the stored responses held by</td><td> </td><td class="right"> value when it is necessary to invalidate the stored responses held by</td><td class="lineno" valign="top"></td></tr> |
---|
142 | <tr><td class="lineno" valign="top"></td><td class="left"> remote caches and authoring tools.</td><td> </td><td class="right"> remote caches and authoring tools.</td><td class="lineno" valign="top"></td></tr> |
---|
143 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
144 | <tr><td class="lineno" valign="top"></td><td class="left"> Cache entries might persist for arbitrarily long periods, regardless</td><td> </td><td class="right"> Cache entries might persist for arbitrarily long periods, regardless</td><td class="lineno" valign="top"></td></tr> |
---|
145 | <tr><td class="lineno" valign="top"></td><td class="left"> of expiration times. Thus, a cache might attempt to validate an</td><td> </td><td class="right"> of expiration times. Thus, a cache might attempt to validate an</td><td class="lineno" valign="top"></td></tr> |
---|
146 | <tr><td class="lineno" valign="top"></td><td class="left"> entry using a validator that it obtained in the distant past. A</td><td> </td><td class="right"> entry using a validator that it obtained in the distant past. A</td><td class="lineno" valign="top"></td></tr> |
---|
147 | <tr><td class="lineno" valign="top"></td><td class="left"> strong validator is unique across all versions of all representations</td><td> </td><td class="right"> strong validator is unique across all versions of all representations</td><td class="lineno" valign="top"></td></tr> |
---|
148 | <tr><td class="lineno" valign="top"></td><td class="left"> associated with a particular resource over time. However, there is</td><td> </td><td class="right"> associated with a particular resource over time. However, there is</td><td class="lineno" valign="top"></td></tr> |
---|
149 | <tr><td class="lineno" valign="top"></td><td class="left"> no implication of uniqueness across representations of different</td><td> </td><td class="right"> no implication of uniqueness across representations of different</td><td class="lineno" valign="top"></td></tr> |
---|
150 | <tr><td class="lineno" valign="top"></td><td class="left"> resources (i.e., the same strong validator might be in use for</td><td> </td><td class="right"> resources (i.e., the same strong validator might be in use for</td><td class="lineno" valign="top"></td></tr> |
---|
151 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
152 | <tr bgcolor="gray" ><td></td><th><a name="part-l3" /><small>skipping to change at</small><em> page 8, line 25</em></th><th> </th><th><a name="part-r3" /><small>skipping to change at</small><em> page 8, line 25</em></th><td></td></tr> |
---|
153 | <tr><td class="lineno" valign="top"></td><td class="left"> o The validator is being compared by an origin server to the actual</td><td> </td><td class="right"> o The validator is being compared by an origin server to the actual</td><td class="lineno" valign="top"></td></tr> |
---|
154 | <tr><td class="lineno" valign="top"></td><td class="left"> current validator for the representation and,</td><td> </td><td class="right"> current validator for the representation and,</td><td class="lineno" valign="top"></td></tr> |
---|
155 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
156 | <tr><td class="lineno" valign="top"></td><td class="left"> o That origin server reliably knows that the associated</td><td> </td><td class="right"> o That origin server reliably knows that the associated</td><td class="lineno" valign="top"></td></tr> |
---|
157 | <tr><td class="lineno" valign="top"></td><td class="left"> representation did not change twice during the second covered by</td><td> </td><td class="right"> representation did not change twice during the second covered by</td><td class="lineno" valign="top"></td></tr> |
---|
158 | <tr><td class="lineno" valign="top"></td><td class="left"> the presented validator.</td><td> </td><td class="right"> the presented validator.</td><td class="lineno" valign="top"></td></tr> |
---|
159 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
160 | <tr><td class="lineno" valign="top"></td><td class="left"> or</td><td> </td><td class="right"> or</td><td class="lineno" valign="top"></td></tr> |
---|
161 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
162 | <tr><td class="lineno" valign="top"></td><td class="left"> o The validator is about to be used by a client in an If-Modified-</td><td> </td><td class="right"> o The validator is about to be used by a client in an If-Modified-</td><td class="lineno" valign="top"></td></tr> |
---|
163 | <tr><td><a name="diff0009" /></td></tr> |
---|
164 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">Since, If-Unmodified-Since,</span> or <span class="delete">If-Range</span> header field, because the</td><td> </td><td class="rblock"> <span class="insert">Since</span> or <span class="insert">If-Unmodified-Since</span> header field, because the client has</td><td class="lineno" valign="top"></td></tr> |
---|
165 | <tr><td class="lineno" valign="top"></td><td class="lblock"> client has a cache <span class="delete">entry</span> for the associated representation, and</td><td> </td><td class="rblock"> a cache <span class="insert">entry, or If-Range</span> for the associated representation, and</td><td class="lineno" valign="top"></td></tr> |
---|
166 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
167 | <tr><td class="lineno" valign="top"></td><td class="left"> o That cache entry includes a Date value, which gives the time when</td><td> </td><td class="right"> o That cache entry includes a Date value, which gives the time when</td><td class="lineno" valign="top"></td></tr> |
---|
168 | <tr><td class="lineno" valign="top"></td><td class="left"> the origin server sent the original response, and</td><td> </td><td class="right"> the origin server sent the original response, and</td><td class="lineno" valign="top"></td></tr> |
---|
169 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
170 | <tr><td class="lineno" valign="top"></td><td class="left"> o The presented Last-Modified time is at least 60 seconds before the</td><td> </td><td class="right"> o The presented Last-Modified time is at least 60 seconds before the</td><td class="lineno" valign="top"></td></tr> |
---|
171 | <tr><td class="lineno" valign="top"></td><td class="left"> Date value.</td><td> </td><td class="right"> Date value.</td><td class="lineno" valign="top"></td></tr> |
---|
172 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
173 | <tr><td class="lineno" valign="top"></td><td class="left"> or</td><td> </td><td class="right"> or</td><td class="lineno" valign="top"></td></tr> |
---|
174 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
175 | <tr><td class="lineno" valign="top"></td><td class="left"> o The validator is being compared by an intermediate cache to the</td><td> </td><td class="right"> o The validator is being compared by an intermediate cache to the</td><td class="lineno" valign="top"></td></tr> |
---|
176 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
177 | <tr bgcolor="gray" ><td></td><th><a name="part-l4" /><small>skipping to change at</small><em> page 13, line 51</em></th><th> </th><th><a name="part-r4" /><small>skipping to change at</small><em> page 13, line 51</em></th><td></td></tr> |
---|
178 | <tr><td class="lineno" valign="top"></td><td class="left"> An origin server that receives an If-Match header field MUST evaluate</td><td> </td><td class="right"> An origin server that receives an If-Match header field MUST evaluate</td><td class="lineno" valign="top"></td></tr> |
---|
179 | <tr><td class="lineno" valign="top"></td><td class="left"> the condition prior to performing the method (Section 5). If the</td><td> </td><td class="right"> the condition prior to performing the method (Section 5). If the</td><td class="lineno" valign="top"></td></tr> |
---|
180 | <tr><td class="lineno" valign="top"></td><td class="left"> field-value is "*", the condition is false if the origin server does</td><td> </td><td class="right"> field-value is "*", the condition is false if the origin server does</td><td class="lineno" valign="top"></td></tr> |
---|
181 | <tr><td class="lineno" valign="top"></td><td class="left"> not have a current representation for the target resource. If the</td><td> </td><td class="right"> not have a current representation for the target resource. If the</td><td class="lineno" valign="top"></td></tr> |
---|
182 | <tr><td class="lineno" valign="top"></td><td class="left"> field-value is a list of entity-tags, the condition is false if none</td><td> </td><td class="right"> field-value is a list of entity-tags, the condition is false if none</td><td class="lineno" valign="top"></td></tr> |
---|
183 | <tr><td class="lineno" valign="top"></td><td class="left"> of the listed tags match the entity-tag of the selected</td><td> </td><td class="right"> of the listed tags match the entity-tag of the selected</td><td class="lineno" valign="top"></td></tr> |
---|
184 | <tr><td class="lineno" valign="top"></td><td class="left"> representation.</td><td> </td><td class="right"> representation.</td><td class="lineno" valign="top"></td></tr> |
---|
185 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
186 | <tr><td class="lineno" valign="top"></td><td class="left"> An origin server MUST NOT perform the requested method if a received</td><td> </td><td class="right"> An origin server MUST NOT perform the requested method if a received</td><td class="lineno" valign="top"></td></tr> |
---|
187 | <tr><td class="lineno" valign="top"></td><td class="left"> If-Match condition evaluates to false; instead, the origin server</td><td> </td><td class="right"> If-Match condition evaluates to false; instead, the origin server</td><td class="lineno" valign="top"></td></tr> |
---|
188 | <tr><td><a name="diff0010" /></td></tr> |
---|
189 | <tr><td class="lineno" valign="top"></td><td class="lblock"> MUST respond with <span class="delete">either</span> a) the 412 (Precondition Failed) status code</td><td> </td><td class="rblock"> MUST respond with <span class="insert">either:</span> a) the 412 (Precondition Failed) status</td><td class="lineno" valign="top"></td></tr> |
---|
190 | <tr><td class="lineno" valign="top"></td><td class="lblock"> or b) one of the 2xx (Successful) status codes if the origin server</td><td> </td><td class="rblock"> code or b) one of the 2xx (Successful) status codes if the origin</td><td class="lineno" valign="top"></td></tr> |
---|
191 | <tr><td class="lineno" valign="top"></td><td class="lblock"> has verified that a state change is being requested and the final</td><td> </td><td class="rblock"> server has verified that a state change is being requested and the</td><td class="lineno" valign="top"></td></tr> |
---|
192 | <tr><td class="lineno" valign="top"></td><td class="lblock"> state is already reflected in the current state of the target</td><td> </td><td class="rblock"> final state is already reflected in the current state of the target</td><td class="lineno" valign="top"></td></tr> |
---|
193 | <tr><td class="lineno" valign="top"></td><td class="left"> resource (i.e., the change requested by the user agent has already</td><td> </td><td class="right"> resource (i.e., the change requested by the user agent has already</td><td class="lineno" valign="top"></td></tr> |
---|
194 | <tr><td class="lineno" valign="top"></td><td class="left"> succeeded, but the user agent might not be aware of it, perhaps</td><td> </td><td class="right"> succeeded, but the user agent might not be aware of it, perhaps</td><td class="lineno" valign="top"></td></tr> |
---|
195 | <tr><td class="lineno" valign="top"></td><td class="left"> because the prior response was lost or a compatible change was made</td><td> </td><td class="right"> because the prior response was lost or a compatible change was made</td><td class="lineno" valign="top"></td></tr> |
---|
196 | <tr><td class="lineno" valign="top"></td><td class="left"> by some other user agent). In the latter case, the origin server</td><td> </td><td class="right"> by some other user agent). In the latter case, the origin server</td><td class="lineno" valign="top"></td></tr> |
---|
197 | <tr><td class="lineno" valign="top"></td><td class="left"> MUST NOT send a validator header field in the response unless it can</td><td> </td><td class="right"> MUST NOT send a validator header field in the response unless it can</td><td class="lineno" valign="top"></td></tr> |
---|
198 | <tr><td class="lineno" valign="top"></td><td class="left"> verify that the request is a duplicate of an immediately prior change</td><td> </td><td class="right"> verify that the request is a duplicate of an immediately prior change</td><td class="lineno" valign="top"></td></tr> |
---|
199 | <tr><td class="lineno" valign="top"></td><td class="left"> made by the same user agent.</td><td> </td><td class="right"> made by the same user agent.</td><td class="lineno" valign="top"></td></tr> |
---|
200 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
201 | <tr><td class="lineno" valign="top"></td><td class="left"> The If-Match header field can be ignored by caches and intermediaries</td><td> </td><td class="right"> The If-Match header field can be ignored by caches and intermediaries</td><td class="lineno" valign="top"></td></tr> |
---|
202 | <tr><td class="lineno" valign="top"></td><td class="left"> because it is not applicable to a stored response.</td><td> </td><td class="right"> because it is not applicable to a stored response.</td><td class="lineno" valign="top"></td></tr> |
---|
203 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
204 | <tr bgcolor="gray" ><td></td><th><a name="part-l5" /><small>skipping to change at</small><em> page 15, line 43</em></th><th> </th><th><a name="part-r5" /><small>skipping to change at</small><em> page 15, line 43</em></th><td></td></tr> |
---|
205 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
206 | <tr><td class="lineno" valign="top"></td><td class="left"> If-Modified-Since = HTTP-date</td><td> </td><td class="right"> If-Modified-Since = HTTP-date</td><td class="lineno" valign="top"></td></tr> |
---|
207 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
208 | <tr><td class="lineno" valign="top"></td><td class="left"> An example of the field is:</td><td> </td><td class="right"> An example of the field is:</td><td class="lineno" valign="top"></td></tr> |
---|
209 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
210 | <tr><td class="lineno" valign="top"></td><td class="left"> If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT</td><td> </td><td class="right"> If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT</td><td class="lineno" valign="top"></td></tr> |
---|
211 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
212 | <tr><td class="lineno" valign="top"></td><td class="left"> A recipient MUST ignore If-Modified-Since if the request contains an</td><td> </td><td class="right"> A recipient MUST ignore If-Modified-Since if the request contains an</td><td class="lineno" valign="top"></td></tr> |
---|
213 | <tr><td class="lineno" valign="top"></td><td class="left"> If-None-Match header field; the condition in If-None-Match is</td><td> </td><td class="right"> If-None-Match header field; the condition in If-None-Match is</td><td class="lineno" valign="top"></td></tr> |
---|
214 | <tr><td class="lineno" valign="top"></td><td class="left"> considered to be a more accurate replacement for the condition in If-</td><td> </td><td class="right"> considered to be a more accurate replacement for the condition in If-</td><td class="lineno" valign="top"></td></tr> |
---|
215 | <tr><td><a name="diff0011" /></td></tr> |
---|
216 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Modified-Since<span class="delete">,</span> and the two are only combined for the sake of</td><td> </td><td class="rblock"> Modified-Since and the two are only combined for the sake of</td><td class="lineno" valign="top"></td></tr> |
---|
217 | <tr><td class="lineno" valign="top"></td><td class="left"> interoperating with older intermediaries that might not implement If-</td><td> </td><td class="right"> interoperating with older intermediaries that might not implement If-</td><td class="lineno" valign="top"></td></tr> |
---|
218 | <tr><td class="lineno" valign="top"></td><td class="left"> None-Match.</td><td> </td><td class="right"> None-Match.</td><td class="lineno" valign="top"></td></tr> |
---|
219 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
220 | <tr><td class="lineno" valign="top"></td><td class="left"> A recipient MUST ignore the If-Modified-Since header field if the</td><td> </td><td class="right"> A recipient MUST ignore the If-Modified-Since header field if the</td><td class="lineno" valign="top"></td></tr> |
---|
221 | <tr><td class="lineno" valign="top"></td><td class="left"> received field-value is not a valid HTTP-date, or if the request</td><td> </td><td class="right"> received field-value is not a valid HTTP-date, or if the request</td><td class="lineno" valign="top"></td></tr> |
---|
222 | <tr><td class="lineno" valign="top"></td><td class="left"> method is neither GET nor HEAD.</td><td> </td><td class="right"> method is neither GET nor HEAD.</td><td class="lineno" valign="top"></td></tr> |
---|
223 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
224 | <tr><td class="lineno" valign="top"></td><td class="left"> A recipient MUST interpret an If-Modified-Since field-value's</td><td> </td><td class="right"> A recipient MUST interpret an If-Modified-Since field-value's</td><td class="lineno" valign="top"></td></tr> |
---|
225 | <tr><td class="lineno" valign="top"></td><td class="left"> timestamp in terms of the origin server's clock.</td><td> </td><td class="right"> timestamp in terms of the origin server's clock.</td><td class="lineno" valign="top"></td></tr> |
---|
226 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
227 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
228 | <tr bgcolor="gray" ><td></td><th><a name="part-l6" /><small>skipping to change at</small><em> page 18, line 28</em></th><th> </th><th><a name="part-r6" /><small>skipping to change at</small><em> page 18, line 28</em></th><td></td></tr> |
---|
229 | <tr><td class="lineno" valign="top"></td><td class="left"> The 304 (Not Modified) status code indicates that a conditional GET</td><td> </td><td class="right"> The 304 (Not Modified) status code indicates that a conditional GET</td><td class="lineno" valign="top"></td></tr> |
---|
230 | <tr><td class="lineno" valign="top"></td><td class="left"> or HEAD request has been received and would have resulted in a 200</td><td> </td><td class="right"> or HEAD request has been received and would have resulted in a 200</td><td class="lineno" valign="top"></td></tr> |
---|
231 | <tr><td class="lineno" valign="top"></td><td class="left"> (OK) response if it were not for the fact that the condition</td><td> </td><td class="right"> (OK) response if it were not for the fact that the condition</td><td class="lineno" valign="top"></td></tr> |
---|
232 | <tr><td class="lineno" valign="top"></td><td class="left"> evaluated to false. In other words, there is no need for the server</td><td> </td><td class="right"> evaluated to false. In other words, there is no need for the server</td><td class="lineno" valign="top"></td></tr> |
---|
233 | <tr><td class="lineno" valign="top"></td><td class="left"> to transfer a representation of the target resource because the</td><td> </td><td class="right"> to transfer a representation of the target resource because the</td><td class="lineno" valign="top"></td></tr> |
---|
234 | <tr><td class="lineno" valign="top"></td><td class="left"> request indicates that the client, which made the request</td><td> </td><td class="right"> request indicates that the client, which made the request</td><td class="lineno" valign="top"></td></tr> |
---|
235 | <tr><td class="lineno" valign="top"></td><td class="left"> conditional, already has a valid representation; the server is</td><td> </td><td class="right"> conditional, already has a valid representation; the server is</td><td class="lineno" valign="top"></td></tr> |
---|
236 | <tr><td class="lineno" valign="top"></td><td class="left"> therefore redirecting the client to make use of that stored</td><td> </td><td class="right"> therefore redirecting the client to make use of that stored</td><td class="lineno" valign="top"></td></tr> |
---|
237 | <tr><td class="lineno" valign="top"></td><td class="left"> representation as if it were the payload of a 200 (OK) response.</td><td> </td><td class="right"> representation as if it were the payload of a 200 (OK) response.</td><td class="lineno" valign="top"></td></tr> |
---|
238 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
239 | <tr><td><a name="diff0012" /></td></tr> |
---|
240 | <tr><td class="lineno" valign="top"></td><td class="lblock"> The server generating a 304 response MUST generate any of the</td><td> </td><td class="rblock"> The server generating a 304 <span class="insert">(Not Modified)</span> response MUST generate any</td><td class="lineno" valign="top"></td></tr> |
---|
241 | <tr><td class="lineno" valign="top"></td><td class="lblock"> following header fields that would have been sent in a 200 (OK)</td><td> </td><td class="rblock"> of the following header fields that would have been sent in a 200</td><td class="lineno" valign="top"></td></tr> |
---|
242 | <tr><td class="lineno" valign="top"></td><td class="lblock"> response to the same request: Cache-Control, Content-Location, Date,</td><td> </td><td class="rblock"> (OK) response to the same request: Cache-Control, Content-Location,</td><td class="lineno" valign="top"></td></tr> |
---|
243 | <tr><td class="lineno" valign="top"></td><td class="lblock"> ETag, Expires, and Vary.</td><td> </td><td class="rblock"> Date, ETag, Expires, and Vary.</td><td class="lineno" valign="top"></td></tr> |
---|
244 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
245 | <tr><td><a name="diff0013" /></td></tr> |
---|
246 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Since the goal of a 304 response is to minimize information transfer</td><td> </td><td class="rblock"> Since the goal of a 304 <span class="insert">(Not Modified)</span> response is to minimize</td><td class="lineno" valign="top"></td></tr> |
---|
247 | <tr><td class="lineno" valign="top"></td><td class="lblock"> when the recipient already has one or more cached representations, a</td><td> </td><td class="rblock"> information transfer when the recipient already has one or more</td><td class="lineno" valign="top"></td></tr> |
---|
248 | <tr><td class="lineno" valign="top"></td><td class="lblock"> sender SHOULD NOT generate representation metadata other than the</td><td> </td><td class="rblock"> cached representations, a sender SHOULD NOT generate representation</td><td class="lineno" valign="top"></td></tr> |
---|
249 | <tr><td class="lineno" valign="top"></td><td class="lblock"> above listed fields unless said metadata exists for the purpose of</td><td> </td><td class="rblock"> metadata other than the above listed fields unless said metadata</td><td class="lineno" valign="top"></td></tr> |
---|
250 | <tr><td class="lineno" valign="top"></td><td class="lblock"> guiding cache updates (e.g., Last-Modified might be useful if the</td><td> </td><td class="rblock"> exists for the purpose of guiding cache updates (e.g., Last-Modified</td><td class="lineno" valign="top"></td></tr> |
---|
251 | <tr><td class="lineno" valign="top"></td><td class="lblock"> response does not have an ETag field).</td><td> </td><td class="rblock"> might be useful if the response does not have an ETag field).</td><td class="lineno" valign="top"></td></tr> |
---|
252 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
253 | <tr><td><a name="diff0014" /></td></tr> |
---|
254 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Requirements on a cache that receives a 304 response are defined in</td><td> </td><td class="rblock"> Requirements on a cache that receives a 304 <span class="insert">(Not Modified)</span> response</td><td class="lineno" valign="top"></td></tr> |
---|
255 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Section 4.3.4 of [RFC7234]. If the conditional request originated</td><td> </td><td class="rblock"> are defined in Section 4.3.4 of [RFC7234]. If the conditional</td><td class="lineno" valign="top"></td></tr> |
---|
256 | <tr><td class="lineno" valign="top"></td><td class="lblock"> with an outbound client, such as a user agent with its own cache</td><td> </td><td class="rblock"> request originated with an outbound client, such as a user agent with</td><td class="lineno" valign="top"></td></tr> |
---|
257 | <tr><td class="lineno" valign="top"></td><td class="lblock"> sending a conditional GET to a shared proxy, then the proxy SHOULD</td><td> </td><td class="rblock"> its own cache sending a conditional GET to a shared proxy, then the</td><td class="lineno" valign="top"></td></tr> |
---|
258 | <tr><td class="lineno" valign="top"></td><td class="lblock"> forward the 304 response to that client.</td><td> </td><td class="rblock"> proxy SHOULD forward the 304 <span class="insert">(Not Modified)</span> response to that client.</td><td class="lineno" valign="top"></td></tr> |
---|
259 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
260 | <tr><td><a name="diff0015" /></td></tr> |
---|
261 | <tr><td class="lineno" valign="top"></td><td class="lblock"> A 304 response cannot contain a message-body; it is always terminated</td><td> </td><td class="rblock"> A 304 <span class="insert">(Not Modified)</span> response cannot contain a message-body; it is</td><td class="lineno" valign="top"></td></tr> |
---|
262 | <tr><td class="lineno" valign="top"></td><td class="lblock"> by the first empty line after the header fields.</td><td> </td><td class="rblock"> always terminated by the first empty line after the header fields.</td><td class="lineno" valign="top"></td></tr> |
---|
263 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
264 | <tr><td class="lineno" valign="top"></td><td class="left">4.2. 412 Precondition Failed</td><td> </td><td class="right">4.2. 412 Precondition Failed</td><td class="lineno" valign="top"></td></tr> |
---|
265 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
266 | <tr><td class="lineno" valign="top"></td><td class="left"> The 412 (Precondition Failed) status code indicates that one or more</td><td> </td><td class="right"> The 412 (Precondition Failed) status code indicates that one or more</td><td class="lineno" valign="top"></td></tr> |
---|
267 | <tr><td class="lineno" valign="top"></td><td class="left"> conditions given in the request header fields evaluated to false when</td><td> </td><td class="right"> conditions given in the request header fields evaluated to false when</td><td class="lineno" valign="top"></td></tr> |
---|
268 | <tr><td class="lineno" valign="top"></td><td class="left"> tested on the server. This response code allows the client to place</td><td> </td><td class="right"> tested on the server. This response code allows the client to place</td><td class="lineno" valign="top"></td></tr> |
---|
269 | <tr><td class="lineno" valign="top"></td><td class="left"> preconditions on the current resource state (its current</td><td> </td><td class="right"> preconditions on the current resource state (its current</td><td class="lineno" valign="top"></td></tr> |
---|
270 | <tr><td class="lineno" valign="top"></td><td class="left"> representations and metadata) and, thus, prevent the request method</td><td> </td><td class="right"> representations and metadata) and, thus, prevent the request method</td><td class="lineno" valign="top"></td></tr> |
---|
271 | <tr><td class="lineno" valign="top"></td><td class="left"> from being applied if the target resource is in an unexpected state.</td><td> </td><td class="right"> from being applied if the target resource is in an unexpected state.</td><td class="lineno" valign="top"></td></tr> |
---|
272 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
273 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
274 | <tr bgcolor="gray" ><td></td><th><a name="part-l7" /><small>skipping to change at</small><em> page 21, line 23</em></th><th> </th><th><a name="part-r7" /><small>skipping to change at</small><em> page 21, line 23</em></th><td></td></tr> |
---|
275 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
276 | <tr><td class="lineno" valign="top"></td><td class="left"> Any extension to HTTP/1.1 that defines additional conditional request</td><td> </td><td class="right"> Any extension to HTTP/1.1 that defines additional conditional request</td><td class="lineno" valign="top"></td></tr> |
---|
277 | <tr><td class="lineno" valign="top"></td><td class="left"> header fields ought to define its own expectations regarding the</td><td> </td><td class="right"> header fields ought to define its own expectations regarding the</td><td class="lineno" valign="top"></td></tr> |
---|
278 | <tr><td class="lineno" valign="top"></td><td class="left"> order for evaluating such fields in relation to those defined in this</td><td> </td><td class="right"> order for evaluating such fields in relation to those defined in this</td><td class="lineno" valign="top"></td></tr> |
---|
279 | <tr><td class="lineno" valign="top"></td><td class="left"> document and other conditionals that might be found in practice.</td><td> </td><td class="right"> document and other conditionals that might be found in practice.</td><td class="lineno" valign="top"></td></tr> |
---|
280 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
281 | <tr><td class="lineno" valign="top"></td><td class="left">7. IANA Considerations</td><td> </td><td class="right">7. IANA Considerations</td><td class="lineno" valign="top"></td></tr> |
---|
282 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
283 | <tr><td class="lineno" valign="top"></td><td class="left">7.1. Status Code Registration</td><td> </td><td class="right">7.1. Status Code Registration</td><td class="lineno" valign="top"></td></tr> |
---|
284 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
285 | <tr><td><a name="diff0016" /></td></tr> |
---|
286 | <tr><td class="lineno" valign="top"></td><td class="lblock"> The <span class="delete">"Hypertext Transfer Protocol (HTTP)</span> Status <span class="delete">Code Registry"</span> located</td><td> </td><td class="rblock"> The <span class="insert">"HTTP</span> Status <span class="insert">Codes" registry</span> located at</td><td class="lineno" valign="top"></td></tr> |
---|
287 | <tr><td class="lineno" valign="top"></td><td class="lblock"> at <http://www.iana.org/assignments/http-status-codes> has been</td><td> </td><td class="rblock"> <http://www.iana.org/assignments/http-status-codes> has been updated</td><td class="lineno" valign="top"></td></tr> |
---|
288 | <tr><td class="lineno" valign="top"></td><td class="lblock"> updated with the registrations below:</td><td> </td><td class="rblock"> with the registrations below:</td><td class="lineno" valign="top"></td></tr> |
---|
289 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
290 | <tr><td class="lineno" valign="top"></td><td class="left"> +-------+---------------------+-------------+</td><td> </td><td class="right"> +-------+---------------------+-------------+</td><td class="lineno" valign="top"></td></tr> |
---|
291 | <tr><td class="lineno" valign="top"></td><td class="left"> | Value | Description | Reference |</td><td> </td><td class="right"> | Value | Description | Reference |</td><td class="lineno" valign="top"></td></tr> |
---|
292 | <tr><td class="lineno" valign="top"></td><td class="left"> +-------+---------------------+-------------+</td><td> </td><td class="right"> +-------+---------------------+-------------+</td><td class="lineno" valign="top"></td></tr> |
---|
293 | <tr><td class="lineno" valign="top"></td><td class="left"> | 304 | Not Modified | Section 4.1 |</td><td> </td><td class="right"> | 304 | Not Modified | Section 4.1 |</td><td class="lineno" valign="top"></td></tr> |
---|
294 | <tr><td class="lineno" valign="top"></td><td class="left"> | 412 | Precondition Failed | Section 4.2 |</td><td> </td><td class="right"> | 412 | Precondition Failed | Section 4.2 |</td><td class="lineno" valign="top"></td></tr> |
---|
295 | <tr><td class="lineno" valign="top"></td><td class="left"> +-------+---------------------+-------------+</td><td> </td><td class="right"> +-------+---------------------+-------------+</td><td class="lineno" valign="top"></td></tr> |
---|
296 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
297 | <tr><td class="lineno" valign="top"></td><td class="left">7.2. Header Field Registration</td><td> </td><td class="right">7.2. Header Field Registration</td><td class="lineno" valign="top"></td></tr> |
---|
298 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
299 | <tr><td><a name="diff0017" /></td></tr> |
---|
300 | <tr><td class="lineno" valign="top"></td><td class="lblock"> HTTP header fields are registered within the <span class="delete">"Message Headers"</span></td><td> </td><td class="rblock"> HTTP header fields are registered within the <span class="insert">Message Header Field</span></td><td class="lineno" valign="top"></td></tr> |
---|
301 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> registry</span> maintained at</td><td> </td><td class="rblock"><span class="insert"> Registry</span> maintained at</td><td class="lineno" valign="top"></td></tr> |
---|
302 | <tr><td class="lineno" valign="top"></td><td class="left"> <http://www.iana.org/assignments/message-headers/>.</td><td> </td><td class="right"> <http://www.iana.org/assignments/message-headers/>.</td><td class="lineno" valign="top"></td></tr> |
---|
303 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
304 | <tr><td><a name="diff0018" /></td></tr> |
---|
305 | <tr><td class="lineno" valign="top"></td><td class="lblock"> This document defines the following HTTP header fields, so <span class="delete">the</span></td><td> </td><td class="rblock"> This document defines the following HTTP header fields, so <span class="insert">their</span></td><td class="lineno" valign="top"></td></tr> |
---|
306 | <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete"> "Permanent Message Header Field Names"</span> registry <span class="delete">has</span> been updated</td><td> </td><td class="rblock"><span class="insert"> associated</span> registry <span class="insert">entries have</span> been updated <span class="insert">according to the</span></td><td class="lineno" valign="top"></td></tr> |
---|
307 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">accordingly</span> (see <span class="delete">[BCP90]).</span></td><td> </td><td class="rblock"><span class="insert"> permanent registrations below</span> (see <span class="insert">[BCP90]):</span></td><td class="lineno" valign="top"></td></tr> |
---|
308 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
309 | <tr><td class="lineno" valign="top"></td><td class="left"> +---------------------+----------+----------+-------------+</td><td> </td><td class="right"> +---------------------+----------+----------+-------------+</td><td class="lineno" valign="top"></td></tr> |
---|
310 | <tr><td class="lineno" valign="top"></td><td class="left"> | Header Field Name | Protocol | Status | Reference |</td><td> </td><td class="right"> | Header Field Name | Protocol | Status | Reference |</td><td class="lineno" valign="top"></td></tr> |
---|
311 | <tr><td class="lineno" valign="top"></td><td class="left"> +---------------------+----------+----------+-------------+</td><td> </td><td class="right"> +---------------------+----------+----------+-------------+</td><td class="lineno" valign="top"></td></tr> |
---|
312 | <tr><td class="lineno" valign="top"></td><td class="left"> | ETag | http | standard | Section 2.3 |</td><td> </td><td class="right"> | ETag | http | standard | Section 2.3 |</td><td class="lineno" valign="top"></td></tr> |
---|
313 | <tr><td class="lineno" valign="top"></td><td class="left"> | If-Match | http | standard | Section 3.1 |</td><td> </td><td class="right"> | If-Match | http | standard | Section 3.1 |</td><td class="lineno" valign="top"></td></tr> |
---|
314 | <tr><td class="lineno" valign="top"></td><td class="left"> | If-Modified-Since | http | standard | Section 3.3 |</td><td> </td><td class="right"> | If-Modified-Since | http | standard | Section 3.3 |</td><td class="lineno" valign="top"></td></tr> |
---|
315 | <tr><td class="lineno" valign="top"></td><td class="left"> | If-None-Match | http | standard | Section 3.2 |</td><td> </td><td class="right"> | If-None-Match | http | standard | Section 3.2 |</td><td class="lineno" valign="top"></td></tr> |
---|
316 | <tr><td class="lineno" valign="top"></td><td class="left"> | If-Unmodified-Since | http | standard | Section 3.4 |</td><td> </td><td class="right"> | If-Unmodified-Since | http | standard | Section 3.4 |</td><td class="lineno" valign="top"></td></tr> |
---|
317 | <tr><td class="lineno" valign="top"></td><td class="left"> | Last-Modified | http | standard | Section 2.2 |</td><td> </td><td class="right"> | Last-Modified | http | standard | Section 2.2 |</td><td class="lineno" valign="top"></td></tr> |
---|
318 | <tr><td class="lineno" valign="top"></td><td class="left"> +---------------------+----------+----------+-------------+</td><td> </td><td class="right"> +---------------------+----------+----------+-------------+</td><td class="lineno" valign="top"></td></tr> |
---|
319 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
320 | <tr><td class="lineno" valign="top"></td><td class="left"> The change controller is: "IETF (iesg@ietf.org) - Internet</td><td> </td><td class="right"> The change controller is: "IETF (iesg@ietf.org) - Internet</td><td class="lineno" valign="top"></td></tr> |
---|
321 | <tr><td class="lineno" valign="top"></td><td class="left"> Engineering Task Force".</td><td> </td><td class="right"> Engineering Task Force".</td><td class="lineno" valign="top"></td></tr> |
---|
322 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
323 | <tr><td class="lineno" valign="top"></td><td class="left">8. Security Considerations</td><td> </td><td class="right">8. Security Considerations</td><td class="lineno" valign="top"></td></tr> |
---|
324 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
325 | <tr><td class="lineno" valign="top"></td><td class="left"> This section is meant to inform developers, information providers,</td><td> </td><td class="right"> This section is meant to inform developers, information providers,</td><td class="lineno" valign="top"></td></tr> |
---|
326 | <tr><td class="lineno" valign="top"></td><td class="left"> and users of known security concerns specific to the HTTP conditional</td><td> </td><td class="right"> and users of known security concerns specific to the HTTP conditional</td><td class="lineno" valign="top"></td></tr> |
---|
327 | <tr><td class="lineno" valign="top"></td><td class="left"> request mechanisms. More general security considerations are</td><td> </td><td class="right"> request mechanisms. More general security considerations are</td><td class="lineno" valign="top"></td></tr> |
---|
328 | <tr><td><a name="diff0019" /></td></tr> |
---|
329 | <tr><td class="lineno" valign="top"></td><td class="lblock"> addressed in HTTP messaging [RFC7230] and semantics <span class="delete">[RFC7231].</span></td><td> </td><td class="rblock"> addressed in <span class="insert">the</span> HTTP messaging [RFC7230] and semantics <span class="insert">[RFC7231]</span></td><td class="lineno" valign="top"></td></tr> |
---|
330 | <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> documents.</span></td><td class="lineno" valign="top"></td></tr> |
---|
331 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
332 | <tr><td class="lineno" valign="top"></td><td class="left"> The validators defined by this specification are not intended to</td><td> </td><td class="right"> The validators defined by this specification are not intended to</td><td class="lineno" valign="top"></td></tr> |
---|
333 | <tr><td class="lineno" valign="top"></td><td class="left"> ensure the validity of a representation, guard against malicious</td><td> </td><td class="right"> ensure the validity of a representation, guard against malicious</td><td class="lineno" valign="top"></td></tr> |
---|
334 | <tr><td class="lineno" valign="top"></td><td class="left"> changes, or detect man-in-the-middle attacks. At best, they enable</td><td> </td><td class="right"> changes, or detect man-in-the-middle attacks. At best, they enable</td><td class="lineno" valign="top"></td></tr> |
---|
335 | <tr><td class="lineno" valign="top"></td><td class="left"> more efficient cache updates and optimistic concurrent writes when</td><td> </td><td class="right"> more efficient cache updates and optimistic concurrent writes when</td><td class="lineno" valign="top"></td></tr> |
---|
336 | <tr><td class="lineno" valign="top"></td><td class="left"> all participants are behaving nicely. At worst, the conditions will</td><td> </td><td class="right"> all participants are behaving nicely. At worst, the conditions will</td><td class="lineno" valign="top"></td></tr> |
---|
337 | <tr><td class="lineno" valign="top"></td><td class="left"> fail and the client will receive a response that is no more harmful</td><td> </td><td class="right"> fail and the client will receive a response that is no more harmful</td><td class="lineno" valign="top"></td></tr> |
---|
338 | <tr><td class="lineno" valign="top"></td><td class="left"> than an HTTP exchange without conditional requests.</td><td> </td><td class="right"> than an HTTP exchange without conditional requests.</td><td class="lineno" valign="top"></td></tr> |
---|
339 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
340 | <tr><td class="lineno" valign="top"></td><td class="left"> An entity-tag can be abused in ways that create privacy risks. For</td><td> </td><td class="right"> An entity-tag can be abused in ways that create privacy risks. For</td><td class="lineno" valign="top"></td></tr> |
---|
341 | <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr> |
---|
342 | <tr bgcolor="gray" ><td></td><th><a name="part-l8" /><small>skipping to change at</small><em> page 23, line 14</em></th><th> </th><th><a name="part-r8" /><small>skipping to change at</small><em> page 23, line 14</em></th><td></td></tr> |
---|
343 | <tr><td class="lineno" valign="top"></td><td class="left">10.1. Normative References</td><td> </td><td class="right">10.1. Normative References</td><td class="lineno" valign="top"></td></tr> |
---|
344 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
345 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate</td><td> </td><td class="right"> [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate</td><td class="lineno" valign="top"></td></tr> |
---|
346 | <tr><td class="lineno" valign="top"></td><td class="left"> Requirement Levels", BCP 14, RFC 2119, March 1997.</td><td> </td><td class="right"> Requirement Levels", BCP 14, RFC 2119, March 1997.</td><td class="lineno" valign="top"></td></tr> |
---|
347 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
348 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax</td><td> </td><td class="right"> [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax</td><td class="lineno" valign="top"></td></tr> |
---|
349 | <tr><td class="lineno" valign="top"></td><td class="left"> Specifications: ABNF", STD 68, RFC 5234, January 2008.</td><td> </td><td class="right"> Specifications: ABNF", STD 68, RFC 5234, January 2008.</td><td class="lineno" valign="top"></td></tr> |
---|
350 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
351 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC7230] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer</td><td> </td><td class="right"> [RFC7230] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer</td><td class="lineno" valign="top"></td></tr> |
---|
352 | <tr><td class="lineno" valign="top"></td><td class="left"> Protocol (HTTP/1.1): Message Syntax and Routing",</td><td> </td><td class="right"> Protocol (HTTP/1.1): Message Syntax and Routing",</td><td class="lineno" valign="top"></td></tr> |
---|
353 | <tr><td><a name="diff0020" /></td></tr> |
---|
354 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">draft-ietf-httpbis-p1-messaging-latest (work in progress),</span></td><td> </td><td class="rblock"> <span class="insert">RFC 7230,</span> May 2014.</td><td class="lineno" valign="top"></td></tr> |
---|
355 | <tr><td class="lineno" valign="top"></td><td class="lblock"> May 2014.</td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
356 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
357 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC7231] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer</td><td> </td><td class="right"> [RFC7231] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer</td><td class="lineno" valign="top"></td></tr> |
---|
358 | <tr><td><a name="diff0021" /></td></tr> |
---|
359 | <tr><td class="lineno" valign="top"></td><td class="lblock"> Protocol (HTTP/1.1): Semantics and Content",</td><td> </td><td class="rblock"> Protocol (HTTP/1.1): Semantics and Content", <span class="insert">RFC 7231,</span></td><td class="lineno" valign="top"></td></tr> |
---|
360 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">draft-ietf-httpbis-p2-semantics-latest (work in progress),</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
361 | <tr><td class="lineno" valign="top"></td><td class="left"> May 2014.</td><td> </td><td class="right"> May 2014.</td><td class="lineno" valign="top"></td></tr> |
---|
362 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
363 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC7233] Fielding, R., Ed., Lafon, Y., Ed., and J. Reschke, Ed.,</td><td> </td><td class="right"> [RFC7233] Fielding, R., Ed., Lafon, Y., Ed., and J. Reschke, Ed.,</td><td class="lineno" valign="top"></td></tr> |
---|
364 | <tr><td class="lineno" valign="top"></td><td class="left"> "Hypertext Transfer Protocol (HTTP/1.1): Range Requests",</td><td> </td><td class="right"> "Hypertext Transfer Protocol (HTTP/1.1): Range Requests",</td><td class="lineno" valign="top"></td></tr> |
---|
365 | <tr><td><a name="diff0022" /></td></tr> |
---|
366 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">draft-ietf-httpbis-p5-range-latest (work in progress),</span></td><td> </td><td class="rblock"> <span class="insert">RFC 7233,</span> May 2014.</td><td class="lineno" valign="top"></td></tr> |
---|
367 | <tr><td class="lineno" valign="top"></td><td class="lblock"> May 2014.</td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
368 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
369 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC7234] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke,</td><td> </td><td class="right"> [RFC7234] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke,</td><td class="lineno" valign="top"></td></tr> |
---|
370 | <tr><td class="lineno" valign="top"></td><td class="left"> Ed., "Hypertext Transfer Protocol (HTTP/1.1): Caching",</td><td> </td><td class="right"> Ed., "Hypertext Transfer Protocol (HTTP/1.1): Caching",</td><td class="lineno" valign="top"></td></tr> |
---|
371 | <tr><td><a name="diff0023" /></td></tr> |
---|
372 | <tr><td class="lineno" valign="top"></td><td class="lblock"> <span class="delete">draft-ietf-httpbis-p6-cache-latest (work in progress),</span></td><td> </td><td class="rblock"> <span class="insert">RFC 7234,</span> May 2014.</td><td class="lineno" valign="top"></td></tr> |
---|
373 | <tr><td class="lineno" valign="top"></td><td class="lblock"> May 2014.</td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr> |
---|
374 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
375 | <tr><td class="lineno" valign="top"></td><td class="left">10.2. Informative References</td><td> </td><td class="right">10.2. Informative References</td><td class="lineno" valign="top"></td></tr> |
---|
376 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
377 | <tr><td class="lineno" valign="top"></td><td class="left"> [BCP90] Klyne, G., Nottingham, M., and J. Mogul, "Registration</td><td> </td><td class="right"> [BCP90] Klyne, G., Nottingham, M., and J. Mogul, "Registration</td><td class="lineno" valign="top"></td></tr> |
---|
378 | <tr><td class="lineno" valign="top"></td><td class="left"> Procedures for Message Header Fields", BCP 90, RFC 3864,</td><td> </td><td class="right"> Procedures for Message Header Fields", BCP 90, RFC 3864,</td><td class="lineno" valign="top"></td></tr> |
---|
379 | <tr><td class="lineno" valign="top"></td><td class="left"> September 2004.</td><td> </td><td class="right"> September 2004.</td><td class="lineno" valign="top"></td></tr> |
---|
380 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
381 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,</td><td> </td><td class="right"> [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,</td><td class="lineno" valign="top"></td></tr> |
---|
382 | <tr><td class="lineno" valign="top"></td><td class="left"> Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext</td><td> </td><td class="right"> Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext</td><td class="lineno" valign="top"></td></tr> |
---|
383 | <tr><td class="lineno" valign="top"></td><td class="left"> Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.</td><td> </td><td class="right"> Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.</td><td class="lineno" valign="top"></td></tr> |
---|
384 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
385 | <tr><td class="lineno" valign="top"></td><td class="left"> [RFC4918] Dusseault, L., Ed., "HTTP Extensions for Web Distributed</td><td> </td><td class="right"> [RFC4918] Dusseault, L., Ed., "HTTP Extensions for Web Distributed</td><td class="lineno" valign="top"></td></tr> |
---|
386 | <tr><td class="lineno" valign="top"></td><td class="left"> Authoring and Versioning (WebDAV)", RFC 4918, June 2007.</td><td> </td><td class="right"> Authoring and Versioning (WebDAV)", RFC 4918, June 2007.</td><td class="lineno" valign="top"></td></tr> |
---|
387 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
388 | <tr><td class="lineno" valign="top"></td><td class="left">Appendix A. Changes from RFC 2616</td><td> </td><td class="right">Appendix A. Changes from RFC 2616</td><td class="lineno" valign="top"></td></tr> |
---|
389 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
390 | <tr><td><a name="diff0024" /></td></tr> |
---|
391 | <tr><td class="lineno" valign="top"></td><td class="lblock"> The definition of validator weakness has been expanded and <span class="delete">clarified.</span></td><td> </td><td class="rblock"> The definition of validator weakness has been expanded and <span class="insert">clarified</span></td><td class="lineno" valign="top"></td></tr> |
---|
392 | <tr><td class="lineno" valign="top"></td><td class="lblock"> (Section <span class="delete">2.1)</span></td><td> </td><td class="rblock"> (Section <span class="insert">2.1).</span></td><td class="lineno" valign="top"></td></tr> |
---|
393 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
394 | <tr><td class="lineno" valign="top"></td><td class="left"> Weak entity-tags are now allowed in all requests except range</td><td> </td><td class="right"> Weak entity-tags are now allowed in all requests except range</td><td class="lineno" valign="top"></td></tr> |
---|
395 | <tr><td><a name="diff0025" /></td></tr> |
---|
396 | <tr><td class="lineno" valign="top"></td><td class="lblock"> requests. (Sections 2.1 and <span class="delete">3.2)</span></td><td> </td><td class="rblock"> requests. (Sections 2.1 and <span class="insert">3.2.)</span></td><td class="lineno" valign="top"></td></tr> |
---|
397 | <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"> </td><td class="lineno" valign="top"></td></tr> |
---|
398 | <tr><td class="lineno" valign="top"></td><td class="left"> The ETag header field ABNF has been changed to not use quoted-string,</td><td> </td><td class="right"> The ETag header field ABNF has been changed to not use quoted-string,</td><td class="lineno" valign="top"></td></tr> |
---|
399 | <tr><td><a name="diff0026" /></td></tr> |
---|
400 | <tr><td class="lineno" valign="top"></td><td class="lblock"> thus avoiding escaping issues<span class="delete">. (Section 2.3)</span></td><td> </td><td class="rblock"> thus avoiding escaping issues<span class="insert"> (Section 2.3).</span></td><td class="lineno" valign="top"></td></tr> |
---|
401 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
402 | <tr><td class="lineno" valign="top"></td><td class="left"> ETag is defined to provide an entity tag for the selected</td><td> </td><td class="right"> ETag is defined to provide an entity tag for the selected</td><td class="lineno" valign="top"></td></tr> |
---|
403 | <tr><td class="lineno" valign="top"></td><td class="left"> representation, thereby clarifying what it applies to in various</td><td> </td><td class="right"> representation, thereby clarifying what it applies to in various</td><td class="lineno" valign="top"></td></tr> |
---|
404 | <tr><td><a name="diff0027" /></td></tr> |
---|
405 | <tr><td class="lineno" valign="top"></td><td class="lblock"> situations (such as a PUT response)<span class="delete">. (Section 2.3)</span></td><td> </td><td class="rblock"> situations (such as a PUT response)<span class="insert"> (Section 2.3).</span></td><td class="lineno" valign="top"></td></tr> |
---|
406 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
407 | <tr><td class="lineno" valign="top"></td><td class="left"> The precedence for evaluation of conditional requests has been</td><td> </td><td class="right"> The precedence for evaluation of conditional requests has been</td><td class="lineno" valign="top"></td></tr> |
---|
408 | <tr><td><a name="diff0028" /></td></tr> |
---|
409 | <tr><td class="lineno" valign="top"></td><td class="lblock"> defined<span class="delete">. (Section 6)</span></td><td> </td><td class="rblock"> defined<span class="insert"> (Section 6).</span></td><td class="lineno" valign="top"></td></tr> |
---|
410 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
411 | <tr><td class="lineno" valign="top"></td><td class="left">Appendix B. Imported ABNF</td><td> </td><td class="right">Appendix B. Imported ABNF</td><td class="lineno" valign="top"></td></tr> |
---|
412 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
413 | <tr><td class="lineno" valign="top"></td><td class="left"> The following core rules are included by reference, as defined in</td><td> </td><td class="right"> The following core rules are included by reference, as defined in</td><td class="lineno" valign="top"></td></tr> |
---|
414 | <tr><td class="lineno" valign="top"></td><td class="left"> Appendix B.1 of [RFC5234]: ALPHA (letters), CR (carriage return),</td><td> </td><td class="right"> Appendix B.1 of [RFC5234]: ALPHA (letters), CR (carriage return),</td><td class="lineno" valign="top"></td></tr> |
---|
415 | <tr><td class="lineno" valign="top"></td><td class="left"> CRLF (CR LF), CTL (controls), DIGIT (decimal 0-9), DQUOTE (double</td><td> </td><td class="right"> CRLF (CR LF), CTL (controls), DIGIT (decimal 0-9), DQUOTE (double</td><td class="lineno" valign="top"></td></tr> |
---|
416 | <tr><td class="lineno" valign="top"></td><td class="left"> quote), HEXDIG (hexadecimal 0-9/A-F/a-f), LF (line feed), OCTET (any</td><td> </td><td class="right"> quote), HEXDIG (hexadecimal 0-9/A-F/a-f), LF (line feed), OCTET (any</td><td class="lineno" valign="top"></td></tr> |
---|
417 | <tr><td class="lineno" valign="top"></td><td class="left"> 8-bit sequence of data), SP (space), and VCHAR (any visible US-ASCII</td><td> </td><td class="right"> 8-bit sequence of data), SP (space), and VCHAR (any visible US-ASCII</td><td class="lineno" valign="top"></td></tr> |
---|
418 | <tr><td class="lineno" valign="top"></td><td class="left"> character).</td><td> </td><td class="right"> character).</td><td class="lineno" valign="top"></td></tr> |
---|
419 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
420 | <tr><td class="lineno" valign="top"></td><td class="left"> The rules below are defined in [RFC7230]:</td><td> </td><td class="right"> The rules below are defined in [RFC7230]:</td><td class="lineno" valign="top"></td></tr> |
---|
421 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
422 | <tr><td><a name="diff0029" /></td></tr> |
---|
423 | <tr><td class="lineno" valign="top"></td><td class="lblock"> OWS = <OWS, <span class="delete">see</span> [RFC7230], Section 3.2.3></td><td> </td><td class="rblock"> OWS = <OWS, <span class="insert">defined in</span> [RFC7230], Section 3.2.3></td><td class="lineno" valign="top"></td></tr> |
---|
424 | <tr><td class="lineno" valign="top"></td><td class="lblock"> obs-text = <obs-text, <span class="delete">see</span> [RFC7230], Section 3.2.6></td><td> </td><td class="rblock"> obs-text = <obs-text, <span class="insert">defined in</span> [RFC7230], Section 3.2.6></td><td class="lineno" valign="top"></td></tr> |
---|
425 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
426 | <tr><td><a name="diff0030" /></td></tr> |
---|
427 | <tr><td class="lineno" valign="top"></td><td class="lblock"> The rule<span class="delete">s below are defined in other parts</span>:</td><td> </td><td class="rblock"> The rule<span class="insert"> below is defined in [RFC7231]</span>:</td><td class="lineno" valign="top"></td></tr> |
---|
428 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
429 | <tr><td><a name="diff0031" /></td></tr> |
---|
430 | <tr><td class="lineno" valign="top"></td><td class="lblock"> HTTP-date = <HTTP-date, <span class="delete">see</span> [RFC7231], Section 7.1.1.1></td><td> </td><td class="rblock"> HTTP-date = <HTTP-date, <span class="insert">defined in</span> [RFC7231], Section 7.1.1.1></td><td class="lineno" valign="top"></td></tr> |
---|
431 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
432 | <tr><td class="lineno" valign="top"></td><td class="left">Appendix C. Collected ABNF</td><td> </td><td class="right">Appendix C. Collected ABNF</td><td class="lineno" valign="top"></td></tr> |
---|
433 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
434 | <tr><td class="lineno" valign="top"></td><td class="left"> In the collected ABNF below, list rules are expanded as per Section</td><td> </td><td class="right"> In the collected ABNF below, list rules are expanded as per Section</td><td class="lineno" valign="top"></td></tr> |
---|
435 | <tr><td class="lineno" valign="top"></td><td class="left"> 1.2 of [RFC7230].</td><td> </td><td class="right"> 1.2 of [RFC7230].</td><td class="lineno" valign="top"></td></tr> |
---|
436 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
437 | <tr><td class="lineno" valign="top"></td><td class="left"> ETag = entity-tag</td><td> </td><td class="right"> ETag = entity-tag</td><td class="lineno" valign="top"></td></tr> |
---|
438 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
439 | <tr><td><a name="diff0032" /></td></tr> |
---|
440 | <tr><td class="lineno" valign="top"></td><td class="lblock"> HTTP-date = <HTTP-date, <span class="delete">see</span> [RFC7231], Section 7.1.1.1></td><td> </td><td class="rblock"> HTTP-date = <HTTP-date, <span class="insert">defined in</span> [RFC7231], Section 7.1.1.1></td><td class="lineno" valign="top"></td></tr> |
---|
441 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
442 | <tr><td class="lineno" valign="top"></td><td class="left"> If-Match = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS</td><td> </td><td class="right"> If-Match = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS</td><td class="lineno" valign="top"></td></tr> |
---|
443 | <tr><td class="lineno" valign="top"></td><td class="left"> entity-tag ] ) )</td><td> </td><td class="right"> entity-tag ] ) )</td><td class="lineno" valign="top"></td></tr> |
---|
444 | <tr><td class="lineno" valign="top"></td><td class="left"> If-Modified-Since = HTTP-date</td><td> </td><td class="right"> If-Modified-Since = HTTP-date</td><td class="lineno" valign="top"></td></tr> |
---|
445 | <tr><td class="lineno" valign="top"></td><td class="left"> If-None-Match = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS</td><td> </td><td class="right"> If-None-Match = "*" / ( *( "," OWS ) entity-tag *( OWS "," [ OWS</td><td class="lineno" valign="top"></td></tr> |
---|
446 | <tr><td class="lineno" valign="top"></td><td class="left"> entity-tag ] ) )</td><td> </td><td class="right"> entity-tag ] ) )</td><td class="lineno" valign="top"></td></tr> |
---|
447 | <tr><td class="lineno" valign="top"></td><td class="left"> If-Unmodified-Since = HTTP-date</td><td> </td><td class="right"> If-Unmodified-Since = HTTP-date</td><td class="lineno" valign="top"></td></tr> |
---|
448 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
449 | <tr><td class="lineno" valign="top"></td><td class="left"> Last-Modified = HTTP-date</td><td> </td><td class="right"> Last-Modified = HTTP-date</td><td class="lineno" valign="top"></td></tr> |
---|
450 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
451 | <tr><td><a name="diff0033" /></td></tr> |
---|
452 | <tr><td class="lineno" valign="top"></td><td class="lblock"> OWS = <OWS, <span class="delete">see</span> [RFC7230], Section 3.2.3></td><td> </td><td class="rblock"> OWS = <OWS, <span class="insert">defined in</span> [RFC7230], Section 3.2.3></td><td class="lineno" valign="top"></td></tr> |
---|
453 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
454 | <tr><td class="lineno" valign="top"></td><td class="left"> entity-tag = [ weak ] opaque-tag</td><td> </td><td class="right"> entity-tag = [ weak ] opaque-tag</td><td class="lineno" valign="top"></td></tr> |
---|
455 | <tr><td class="lineno" valign="top"></td><td class="left"> etagc = "!" / %x23-7E ; '#'-'~'</td><td> </td><td class="right"> etagc = "!" / %x23-7E ; '#'-'~'</td><td class="lineno" valign="top"></td></tr> |
---|
456 | <tr><td class="lineno" valign="top"></td><td class="left"> / obs-text</td><td> </td><td class="right"> / obs-text</td><td class="lineno" valign="top"></td></tr> |
---|
457 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
458 | <tr><td><a name="diff0034" /></td></tr> |
---|
459 | <tr><td class="lineno" valign="top"></td><td class="lblock"> obs-text = <obs-text, <span class="delete">see</span> [RFC7230], Section 3.2.6></td><td> </td><td class="rblock"> obs-text = <obs-text, <span class="insert">defined in</span> [RFC7230], Section 3.2.6></td><td class="lineno" valign="top"></td></tr> |
---|
460 | <tr><td class="lineno" valign="top"></td><td class="left"> opaque-tag = DQUOTE *etagc DQUOTE</td><td> </td><td class="right"> opaque-tag = DQUOTE *etagc DQUOTE</td><td class="lineno" valign="top"></td></tr> |
---|
461 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
462 | <tr><td class="lineno" valign="top"></td><td class="left"> weak = %x57.2F ; W/</td><td> </td><td class="right"> weak = %x57.2F ; W/</td><td class="lineno" valign="top"></td></tr> |
---|
463 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
464 | <tr><td class="lineno" valign="top"></td><td class="left">Index</td><td> </td><td class="right">Index</td><td class="lineno" valign="top"></td></tr> |
---|
465 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
466 | <tr><td class="lineno" valign="top"></td><td class="left"> 3</td><td> </td><td class="right"> 3</td><td class="lineno" valign="top"></td></tr> |
---|
467 | <tr><td class="lineno" valign="top"></td><td class="left"> 304 Not Modified (status code) 18</td><td> </td><td class="right"> 304 Not Modified (status code) 18</td><td class="lineno" valign="top"></td></tr> |
---|
468 | <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr> |
---|
469 | <tr><td class="lineno" valign="top"></td><td class="left"> 4</td><td> </td><td class="right"> 4</td><td class="lineno" valign="top"></td></tr> |
---|
470 | |
---|
471 | <tr><td></td><td class="left"></td><td> </td><td class="right"></td><td></td></tr> |
---|
472 | <tr bgcolor="gray"><th colspan="5" align="center"><a name="end"> End of changes. 34 change blocks. </a></th></tr> |
---|
473 | <tr class="stats"><td></td><th><i>87 lines changed or deleted</i></th><th><i> </i></th><th><i>68 lines changed or added</i></th><td></td></tr> |
---|
474 | <tr><td colspan="5" align="center" class="small"><br/>This html diff was produced by rfcdiff 1.38. The latest version is available from <a href="http://www.tools.ietf.org/tools/rfcdiff/" >http://tools.ietf.org/tools/rfcdiff/</a> </td></tr> |
---|
475 | </table> |
---|
476 | </body> |
---|
477 | </html> |
---|