Changeset 2712


Ignore:
Timestamp:
03/06/14 12:51:53 (6 years ago)
Author:
julian.reschke@…
Message:

switch diffs to plain text versions of RFCs-to-be (#553)

Location:
draft-ietf-httpbis/latest/auth48
Files:
6 added
9 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/auth48/rfc7230.abdiff.txt

    r2709 r2712  
    1 
    2 INTRODUCTION, paragraph 1:
    3 OLD:
    4 
    5  Internet Engineering Task Force (IETF)                  R. Fielding, Ed.
    6  Request for Comments: 7230                                         Adobe
    7  Obsoletes: 2145, 2616                                    J. Reschke, Ed.
    8  Updates: 2817, 2818                                           greenbytes
    9  Category: Standards Track                                      June 2014
    10  ISSN: 2070-1721
    11 
    12 NEW:
    13 
    14  Internet Engineering Task Force (IETF)                  R. Fielding, Ed.
    15  Request for Comments: 7230                                         Adobe
    16  Obsoletes: 2145, 2616                                    J. Reschke, Ed.
    17  Updates: 2817, 2818                                           greenbytes
    18  Category: Standards Track                                       May 2014
    19  ISSN: 2070-1721
    20 
    211
    222INTRODUCTION, paragraph 5:
     
    4424
    4525
    46 Section 11.1., paragraph 8:
    47 OLD:
    48 
    49     [RFC7231]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext
    50                   Transfer Protocol (HTTP/1.1): Semantics and Content",
    51                   RFC 7231, June 2014.
    52 
    53 NEW:
    54 
    55     [RFC7231]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext
    56                   Transfer Protocol (HTTP/1.1): Semantics and Content",
    57                   RFC 7231, May 2014.
    58 
    59 
    60 Section 11.1., paragraph 9:
    61 OLD:
    62 
    63     [RFC7232]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext
    64                   Transfer Protocol (HTTP/1.1): Conditional Requests",
    65                   RFC 7232, June 2014.
    66 
    67 NEW:
    68 
    69     [RFC7232]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext
    70                   Transfer Protocol (HTTP/1.1): Conditional Requests",
    71                   RFC 7232, May 2014.
    72 
    73 
    74 Section 11.1., paragraph 10:
    75 OLD:
    76 
    77     [RFC7233]     Fielding, R., Ed., Lafon, Y., Ed., and J. Reschke, Ed.,
    78                   "Hypertext Transfer Protocol (HTTP/1.1): Range
    79                   Requests", RFC 7233, June 2014.
    80 
    81 NEW:
    82 
    83     [RFC7233]     Fielding, R., Ed., Lafon, Y., Ed., and J. Reschke, Ed.,
    84                   "Hypertext Transfer Protocol (HTTP/1.1): Range
    85                   Requests", RFC 7233, May 2014.
    86 
    87 
    88 Section 11.1., paragraph 11:
    89 OLD:
    90 
    91     [RFC7234]     Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke,
    92                   Ed., "Hypertext Transfer Protocol (HTTP/1.1): Caching",
    93                   RFC 7234, June 2014.
    94 
    95 NEW:
    96 
    97     [RFC7234]     Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke,
    98                   Ed., "Hypertext Transfer Protocol (HTTP/1.1): Caching",
    99                   RFC 7234, May 2014.
    100 
    101 
    102 Section 11.1., paragraph 12:
    103 OLD:
    104 
    105     [RFC7235]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext
    106                   Transfer Protocol (HTTP/1.1): Authentication",
    107                   RFC 7235, June 2014.
    108 
    109 NEW:
    110 
    111     [RFC7235]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext
    112                   Transfer Protocol (HTTP/1.1): Authentication",
    113                   RFC 7235, May 2014.
    114 
     26INTRODUCTION, paragraph 14:
     27OLD:
     28
     29    1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  5
     30      1.1.  Requirements Notation  . . . . . . . . . . . . . . . . . .  6
     31      1.2.  Syntax Notation  . . . . . . . . . . . . . . . . . . . . .  6
     32    2.  Architecture . . . . . . . . . . . . . . . . . . . . . . . . .  6
     33      2.1.  Client/Server Messaging  . . . . . . . . . . . . . . . . .  7
     34      2.2.  Implementation Diversity . . . . . . . . . . . . . . . . .  8
     35      2.3.  Intermediaries . . . . . . . . . . . . . . . . . . . . . .  9
     36      2.4.  Caches . . . . . . . . . . . . . . . . . . . . . . . . . . 11
     37      2.5.  Conformance and Error Handling . . . . . . . . . . . . . . 12
     38      2.6.  Protocol Versioning  . . . . . . . . . . . . . . . . . . . 13
     39      2.7.  Uniform Resource Identifiers . . . . . . . . . . . . . . . 16
     40        2.7.1.  http URI Scheme  . . . . . . . . . . . . . . . . . . . 16
     41        2.7.2.  https URI Scheme . . . . . . . . . . . . . . . . . . . 18
     42        2.7.3.  http and https URI Normalization and Comparison  . . . 19
     43    3.  Message Format . . . . . . . . . . . . . . . . . . . . . . . . 19
     44      3.1.  Start Line . . . . . . . . . . . . . . . . . . . . . . . . 20
     45        3.1.1.  Request Line . . . . . . . . . . . . . . . . . . . . . 21
     46        3.1.2.  Status Line  . . . . . . . . . . . . . . . . . . . . . 22
     47      3.2.  Header Fields  . . . . . . . . . . . . . . . . . . . . . . 22
     48        3.2.1.  Field Extensibility  . . . . . . . . . . . . . . . . . 23
     49        3.2.2.  Field Order  . . . . . . . . . . . . . . . . . . . . . 23
     50        3.2.3.  Whitespace . . . . . . . . . . . . . . . . . . . . . . 24
     51        3.2.4.  Field Parsing  . . . . . . . . . . . . . . . . . . . . 24
     52        3.2.5.  Field Limits . . . . . . . . . . . . . . . . . . . . . 26
     53        3.2.6.  Field Value Components . . . . . . . . . . . . . . . . 26
     54      3.3.  Message Body . . . . . . . . . . . . . . . . . . . . . . . 27
     55        3.3.1.  Transfer-Encoding  . . . . . . . . . . . . . . . . . . 28
     56        3.3.2.  Content-Length . . . . . . . . . . . . . . . . . . . . 29
     57        3.3.3.  Message Body Length  . . . . . . . . . . . . . . . . . 31
     58      3.4.  Handling Incomplete Messages . . . . . . . . . . . . . . . 33
     59      3.5.  Message Parsing Robustness . . . . . . . . . . . . . . . . 34
     60    4.  Transfer Codings . . . . . . . . . . . . . . . . . . . . . . . 34
     61      4.1.  Chunked Transfer Coding  . . . . . . . . . . . . . . . . . 35
     62        4.1.1.  Chunk Extensions . . . . . . . . . . . . . . . . . . . 36
     63        4.1.2.  Chunked Trailer Part . . . . . . . . . . . . . . . . . 36
     64        4.1.3.  Decoding Chunked . . . . . . . . . . . . . . . . . . . 37
     65      4.2.  Compression Codings  . . . . . . . . . . . . . . . . . . . 37
     66        4.2.1.  Compress Coding  . . . . . . . . . . . . . . . . . . . 38
     67        4.2.2.  Deflate Coding . . . . . . . . . . . . . . . . . . . . 38
     68        4.2.3.  Gzip Coding  . . . . . . . . . . . . . . . . . . . . . 38
     69      4.3.  TE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
     70      4.4.  Trailer  . . . . . . . . . . . . . . . . . . . . . . . . . 39
     71    5.  Message Routing  . . . . . . . . . . . . . . . . . . . . . . . 39
     72      5.1.  Identifying a Target Resource  . . . . . . . . . . . . . . 40
     73      5.2.  Connecting Inbound . . . . . . . . . . . . . . . . . . . . 40
     74      5.3.  Request Target . . . . . . . . . . . . . . . . . . . . . . 41
     75        5.3.1.  origin-form  . . . . . . . . . . . . . . . . . . . . . 41
     76        5.3.2.  absolute-form  . . . . . . . . . . . . . . . . . . . . 41
     77        5.3.3.  authority-form . . . . . . . . . . . . . . . . . . . . 42
     78        5.3.4.  asterisk-form  . . . . . . . . . . . . . . . . . . . . 42
     79      5.4.  Host . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
     80      5.5.  Effective Request URI  . . . . . . . . . . . . . . . . . . 44
     81      5.6.  Associating a Response to a Request  . . . . . . . . . . . 46
     82      5.7.  Message Forwarding . . . . . . . . . . . . . . . . . . . . 46
     83        5.7.1.  Via  . . . . . . . . . . . . . . . . . . . . . . . . . 46
     84        5.7.2.  Transformations  . . . . . . . . . . . . . . . . . . . 48
     85    6.  Connection Management  . . . . . . . . . . . . . . . . . . . . 49
     86      6.1.  Connection . . . . . . . . . . . . . . . . . . . . . . . . 50
     87      6.2.  Establishment  . . . . . . . . . . . . . . . . . . . . . . 51
     88      6.3.  Persistence  . . . . . . . . . . . . . . . . . . . . . . . 51
     89        6.3.1.  Retrying Requests  . . . . . . . . . . . . . . . . . . 52
     90        6.3.2.  Pipelining . . . . . . . . . . . . . . . . . . . . . . 53
     91      6.4.  Concurrency  . . . . . . . . . . . . . . . . . . . . . . . 54
     92      6.5.  Failures and Timeouts  . . . . . . . . . . . . . . . . . . 54
     93      6.6.  Tear-down  . . . . . . . . . . . . . . . . . . . . . . . . 55
     94      6.7.  Upgrade  . . . . . . . . . . . . . . . . . . . . . . . . . 56
     95    7.  ABNF List Extension: #rule . . . . . . . . . . . . . . . . . . 58
     96    8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 59
     97      8.1.  Header Field Registration  . . . . . . . . . . . . . . . . 59
     98      8.2.  URI Scheme Registration  . . . . . . . . . . . . . . . . . 60
     99      8.3.  Internet Media Type Registration . . . . . . . . . . . . . 60
     100        8.3.1.  Internet Media Type message/http . . . . . . . . . . . 61
     101        8.3.2.  Internet Media Type application/http . . . . . . . . . 62
     102      8.4.  Transfer Coding Registry . . . . . . . . . . . . . . . . . 63
     103        8.4.1.  Procedure  . . . . . . . . . . . . . . . . . . . . . . 63
     104        8.4.2.  Registration . . . . . . . . . . . . . . . . . . . . . 64
     105      8.5.  Content Coding Registration  . . . . . . . . . . . . . . . 64
     106      8.6.  Upgrade Token Registry . . . . . . . . . . . . . . . . . . 64
     107        8.6.1.  Procedure  . . . . . . . . . . . . . . . . . . . . . . 65
     108        8.6.2.  Upgrade Token Registration . . . . . . . . . . . . . . 65
     109    9.  Security Considerations  . . . . . . . . . . . . . . . . . . . 66
     110      9.1.  Establishing Authority . . . . . . . . . . . . . . . . . . 66
     111      9.2.  Risks of Intermediaries  . . . . . . . . . . . . . . . . . 67
     112      9.3.  Attacks via Protocol Element Length  . . . . . . . . . . . 67
     113      9.4.  Response Splitting . . . . . . . . . . . . . . . . . . . . 68
     114      9.5.  Request Smuggling  . . . . . . . . . . . . . . . . . . . . 69
     115      9.6.  Message Integrity  . . . . . . . . . . . . . . . . . . . . 69
     116      9.7.  Message Confidentiality  . . . . . . . . . . . . . . . . . 69
     117      9.8.  Privacy of Server Log Information  . . . . . . . . . . . . 70
     118    10. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 70
     119    11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 72
     120      11.1. Normative References . . . . . . . . . . . . . . . . . . . 72
     121      11.2. Informative References . . . . . . . . . . . . . . . . . . 73
     122    Appendix A.  HTTP Version History  . . . . . . . . . . . . . . . . 75
     123      A.1.  Changes from HTTP/1.0  . . . . . . . . . . . . . . . . . . 76
     124        A.1.1.  Multihomed Web Servers . . . . . . . . . . . . . . . . 76
     125        A.1.2.  Keep-Alive Connections . . . . . . . . . . . . . . . . 76
     126        A.1.3.  Introduction of Transfer-Encoding  . . . . . . . . . . 77
     127      A.2.  Changes from RFC 2616  . . . . . . . . . . . . . . . . . . 77
     128    Appendix B.  Collected ABNF  . . . . . . . . . . . . . . . . . . . 79
     129    Index  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
     130
     131NEW:
     132
     133    1. Introduction ....................................................5
     134       1.1. Requirements Notation ......................................6
     135       1.2. Syntax Notation ............................................6
     136    2. Architecture ....................................................6
     137       2.1. Client/Server Messaging ....................................7
     138       2.2. Implementation Diversity ...................................8
     139       2.3. Intermediaries .............................................9
     140       2.4. Caches ....................................................11
     141       2.5. Conformance and Error Handling ............................12
     142       2.6. Protocol Versioning .......................................13
     143       2.7. Uniform Resource Identifiers ..............................16
     144            2.7.1. http URI Scheme ....................................17
     145            2.7.2. https URI Scheme ...................................18
     146            2.7.3. http and https URI Normalization and Comparison ....19
     147    3. Message Format .................................................19
     148       3.1. Start Line ................................................20
     149            3.1.1. Request Line .......................................21
     150            3.1.2. Status Line ........................................22
     151       3.2. Header Fields .............................................22
     152            3.2.1. Field Extensibility ................................23
     153            3.2.2. Field Order ........................................23
     154            3.2.3. Whitespace .........................................24
     155            3.2.4. Field Parsing ......................................25
     156            3.2.5. Field Limits .......................................26
     157            3.2.6. Field Value Components .............................27
     158       3.3. Message Body ..............................................28
     159            3.3.1. Transfer-Encoding ..................................28
     160            3.3.2. Content-Length .....................................30
     161            3.3.3. Message Body Length ................................32
     162       3.4. Handling Incomplete Messages ..............................34
     163       3.5. Message Parsing Robustness ................................34
     164    4. Transfer Codings ...............................................35
     165       4.1. Chunked Transfer Coding ...................................36
     166            4.1.1. Chunk Extensions ...................................36
     167            4.1.2. Chunked Trailer Part ...............................37
     168            4.1.3. Decoding Chunked ...................................38
     169       4.2. Compression Codings .......................................38
     170            4.2.1. Compress Coding ....................................38
     171            4.2.2. Deflate Coding .....................................38
     172            4.2.3. Gzip Coding ........................................39
     173       4.3. TE ........................................................39
     174       4.4. Trailer ...................................................40
     175    5. Message Routing ................................................40
     176       5.1. Identifying a Target Resource .............................40
     177       5.2. Connecting Inbound ........................................41
     178       5.3. Request Target ............................................41
     179            5.3.1. origin-form ........................................42
     180            5.3.2. absolute-form ......................................42
     181            5.3.3. authority-form .....................................43
     182            5.3.4. asterisk-form ......................................43
     183       5.4. Host ......................................................44
     184       5.5. Effective Request URI .....................................45
     185       5.6. Associating a Response to a Request .......................46
     186       5.7. Message Forwarding ........................................47
     187            5.7.1. Via ................................................47
     188            5.7.2. Transformations ....................................49
     189    6. Connection Management ..........................................50
     190       6.1. Connection ................................................51
     191       6.2. Establishment .............................................52
     192       6.3. Persistence ...............................................52
     193            6.3.1. Retrying Requests ..................................53
     194            6.3.2. Pipelining .........................................54
     195       6.4. Concurrency ...............................................55
     196       6.5. Failures and Timeouts .....................................55
     197       6.6. Tear-down .................................................56
     198       6.7. Upgrade ...................................................57
     199    7. ABNF List Extension: #rule .....................................59
     200    8. IANA Considerations ............................................61
     201       8.1. Header Field Registration .................................61
     202       8.2. URI Scheme Registration ...................................62
     203       8.3. Internet Media Type Registration ..........................62
     204            8.3.1. Internet Media Type message/http ...................62
     205            8.3.2. Internet Media Type application/http ...............63
     206       8.4. Transfer Coding Registry ..................................64
     207            8.4.1. Procedure ..........................................65
     208            8.4.2. Registration .......................................65
     209       8.5. Content Coding Registration ...............................66
     210       8.6. Upgrade Token Registry ....................................66
     211            8.6.1. Procedure ..........................................66
     212            8.6.2. Upgrade Token Registration .........................67
     213    9. Security Considerations ........................................67
     214       9.1. Establishing Authority ....................................67
     215       9.2. Risks of Intermediaries ...................................68
     216       9.3. Attacks via Protocol Element Length .......................69
     217       9.4. Response Splitting ........................................69
     218       9.5. Request Smuggling .........................................70
     219       9.6. Message Integrity .........................................70
     220       9.7. Message Confidentiality ...................................71
     221       9.8. Privacy of Server Log Information .........................71
     222    10. Acknowledgments ...............................................72
     223    11. References ....................................................74
     224       11.1. Normative References .....................................74
     225       11.2. Informative References ...................................75
     226    Appendix A. HTTP Version History ..................................78
     227       A.1. Changes from HTTP/1.0  ....................................78
     228            A.1.1.  Multihomed Web Servers ............................78
     229            A.1.2.  Keep-Alive Connections ............................79
     230            A.1.3.  Introduction of Transfer-Encoding .................79
     231       A.2.  Changes from RFC 2616 ....................................80
     232    Appendix B. Collected ABNF ........................................82
     233    Index .............................................................85
     234
     235
     236Section 2.1., paragraph 4:
     237OLD:
     238
     239    Most HTTP communication consists of a retrieval request (GET) for a
     240    representation of some resource identified by a URI.  In the simplest
     241    case, this might be accomplished via a single bidirectional
     242    connection (===) between the user agent (UA) and the origin server
     243    (O).
     244
     245NEW:
     246
     247    Most HTTP communication consists of a retrieval request (GET) for a
     248    representation of some resource identified by a URI.  In the simplest
     249    case, this might be accomplished via a single bidirectional
     250    connection (===) between the user agent (UA) and the origin
     251    server (O).
     252
     253
     254Section 2.5., paragraph 5:
     255OLD:
     256
     257    When a received protocol element is parsed, the recipient MUST be
     258    able to parse any value of reasonable length that is applicable to
     259    the recipient's role and that matches the grammar defined by the
     260    corresponding ABNF rules.  Note, however, that some received protocol
     261    elements might not be parsed.  For example, an intermediary
     262    forwarding a message might parse a header-field into generic field-
     263    name and field-value components, but then forward the header field
     264    without further parsing inside the field-value.
     265
     266NEW:
     267
     268    When a received protocol element is parsed, the recipient MUST be
     269    able to parse any value of reasonable length that is applicable to
     270    the recipient's role and that matches the grammar defined by the
     271    corresponding ABNF rules.  Note, however, that some received protocol
     272    elements might not be parsed.  For example, an intermediary
     273    forwarding a message might parse a header-field into generic
     274    field-name and field-value components, but then forward the header
     275    field without further parsing inside the field-value.
     276
     277
     278Section 2.5., paragraph 8:
     279OLD:
     280
     281    A recipient MUST interpret a received protocol element according to
     282    the semantics defined for it by this specification, including
     283    extensions to this specification, unless the recipient has determined
     284    (through experience or configuration) that the sender incorrectly
     285    implements what is implied by those semantics.  For example, an
     286    origin server might disregard the contents of a received Accept-
     287    Encoding header field if inspection of the User-Agent header field
     288    indicates a specific implementation version that is known to fail on
     289    receipt of certain content codings.
     290
     291NEW:
     292
     293    A recipient MUST interpret a received protocol element according to
     294    the semantics defined for it by this specification, including
     295    extensions to this specification, unless the recipient has determined
     296    (through experience or configuration) that the sender incorrectly
     297    implements what is implied by those semantics.  For example, an
     298    origin server might disregard the contents of a received
     299    Accept-Encoding header field if inspection of the User-Agent header
     300    field indicates a specific implementation version that is known to
     301    fail on receipt of certain content codings.
     302
     303
     304Section 2.6., paragraph 8:
     305OLD:
     306
     307    Intermediaries that process HTTP messages (i.e., all intermediaries
     308    other than those acting as tunnels) MUST send their own HTTP-version
     309    in forwarded messages.  In other words, they are not allowed to
     310    blindly forward the first line of an HTTP message without ensuring
     311    that the protocol version in that message matches a version to which
     312    that intermediary is conformant for both the receiving and sending of
     313    messages.  Forwarding an HTTP message without rewriting the HTTP-
     314    version might result in communication errors when downstream
     315    recipients use the message sender's version to determine what
     316    features are safe to use for later communication with that sender.
     317
     318NEW:
     319
     320    Intermediaries that process HTTP messages (i.e., all intermediaries
     321    other than those acting as tunnels) MUST send their own HTTP-version
     322    in forwarded messages.  In other words, they are not allowed to
     323    blindly forward the first line of an HTTP message without ensuring
     324    that the protocol version in that message matches a version to which
     325    that intermediary is conformant for both the receiving and sending of
     326    messages.  Forwarding an HTTP message without rewriting the
     327    HTTP-version might result in communication errors when downstream
     328    recipients use the message sender's version to determine what
     329    features are safe to use for later communication with that sender.
     330
     331
     332Section 2.7., paragraph 5:
     333OLD:
     334
     335    Each protocol element in HTTP that allows a URI reference will
     336    indicate in its ABNF production whether the element allows any form
     337    of reference (URI-reference), only a URI in absolute form (absolute-
     338    URI), only the path and optional query components, or some
     339    combination of the above.  Unless otherwise indicated, URI references
     340    are parsed relative to the effective request URI (Section 5.5).
     341
     342NEW:
     343
     344    Each protocol element in HTTP that allows a URI reference will
     345    indicate in its ABNF production whether the element allows any form
     346    of reference (URI-reference), only a URI in absolute form
     347    (absolute-URI), only the path and optional query components, or some
     348    combination of the above.  Unless otherwise indicated, URI references
     349    are parsed relative to the effective request URI (Section 5.5).
     350
     351
     352Section 2.7.1., paragraph 2:
     353OLD:
     354
     355      http-URI = "http:" "//" authority path-abempty [ "?" query ]
     356 
     357                 [ "#" fragment ]
     358
     359NEW:
     360
     361      http-URI = "http:" "//" authority path-abempty [ "?" query ]
     362                 [ "#" fragment ]
     363
     364
     365Section 2.7.3., paragraph 2:
     366OLD:
     367
     368    If the port is equal to the default port for a scheme, the normal
     369    form is to omit the port subcomponent.  When not being used in
     370    absolute form as the request target of an OPTIONS request, an empty
     371    path component is equivalent to an absolute path of "/", so the
     372    normal form is to provide a path of "/" instead.  The scheme and host
     373    are case-insensitive and normally provided in lowercase; all other
     374    components are compared in a case-sensitive manner.  Characters other
     375    than those in the "reserved" set are equivalent to their percent-
     376    encoded octets: the normal form is to not encode them (see Sections
     377    2.1 and 2.2 of [RFC3986]).
     378
     379NEW:
     380
     381    If the port is equal to the default port for a scheme, the normal
     382    form is to omit the port subcomponent.  When not being used in
     383    absolute form as the request target of an OPTIONS request, an empty
     384    path component is equivalent to an absolute path of "/", so the
     385    normal form is to provide a path of "/" instead.  The scheme and host
     386    are case-insensitive and normally provided in lowercase; all other
     387    components are compared in a case-sensitive manner.  Characters other
     388    than those in the "reserved" set are equivalent to their
     389    percent-encoded octets: the normal form is to not encode them (see
     390    Sections 2.1 and 2.2 of [RFC3986]).
     391
     392
     393Section 400, paragraph 1:
     394OLD:
     395
     396    HTTP does not place a predefined limit on the length of a request-
     397    line, as described in Section 2.5.  A server that receives a method
     398    longer than any that it implements SHOULD respond with a 501 (Not
     399    Implemented) status code.  A server that receives a request-target
     400    longer than any URI it wishes to parse MUST respond with a 414 (URI
     401    Too Long) status code (see Section 6.5.12 of [RFC7231]).
     402
     403NEW:
     404
     405    HTTP does not place a predefined limit on the length of a
     406    request-line, as described in Section 2.5.  A server that receives a
     407    method longer than any that it implements SHOULD respond with a 501
     408    (Not Implemented) status code.  A server that receives a
     409    request-target longer than any URI it wishes to parse MUST respond
     410    with a 414 (URI Too Long) status code (see Section 6.5.12 of
     411    [RFC7231]).
     412
     413
     414Section 3.2.4., paragraph 3:
     415OLD:
     416
     417    A field value might be preceded and/or followed by optional
     418    whitespace (OWS); a single SP preceding the field-value is preferred
     419    for consistent readability by humans.  The field value does not
     420    include any leading or trailing whitespace: OWS occurring before the
     421    first non-whitespace octet of the field value or after the last non-
     422    whitespace octet of the field value ought to be excluded by parsers
     423    when extracting the field value from a header field.
     424
     425NEW:
     426
     427    A field value might be preceded and/or followed by optional
     428    whitespace (OWS); a single SP preceding the field-value is preferred
     429    for consistent readability by humans.  The field value does not
     430    include any leading or trailing whitespace: OWS occurring before the
     431    first non-whitespace octet of the field value or after the last
     432    non-whitespace octet of the field value ought to be excluded by
     433    parsers when extracting the field value from a header field.
     434
     435
     436Section 3.2.4., paragraph 7:
     437OLD:
     438
     439    A user agent that receives an obs-fold in a response message that is
     440    not within a message/http container MUST replace each received obs-
     441    fold with one or more SP octets prior to interpreting the field
     442    value.
     443
     444NEW:
     445
     446    A user agent that receives an obs-fold in a response message that is
     447    not within a message/http container MUST replace each received
     448    obs-fold with one or more SP octets prior to interpreting the field
     449    value.
     450
     451
     452Section 3.3., paragraph 4:
     453OLD:
     454
     455    The presence of a message body in a request is signaled by a Content-
     456    Length or Transfer-Encoding header field.  Request message framing is
     457    independent of method semantics, even if the method does not define
     458    any use for a message body.
     459
     460NEW:
     461
     462    The presence of a message body in a request is signaled by a
     463    Content-Length or Transfer-Encoding header field.  Request message
     464    framing is independent of method semantics, even if the method does
     465    not define any use for a message body.
     466
     467
     468Section 3.3.2., paragraph 10:
     469OLD:
     470
     471    Aside from the cases defined above, in the absence of Transfer-
     472    Encoding, an origin server SHOULD send a Content-Length header field
     473    when the payload body size is known prior to sending the complete
     474    header section.  This will allow downstream recipients to measure
     475    transfer progress, know when a received message is complete, and
     476    potentially reuse the connection for additional requests.
     477
     478NEW:
     479
     480    Aside from the cases defined above, in the absence of
     481    Transfer-Encoding, an origin server SHOULD send a Content-Length
     482    header field when the payload body size is known prior to sending the
     483    complete header section.  This will allow downstream recipients to
     484    measure transfer progress, know when a received message is complete,
     485    and potentially reuse the connection for additional requests.
     486
     487
     488Section 3.3.2., paragraph 13:
     489OLD:
     490
     491       Note: HTTP's use of Content-Length for message framing differs
     492       significantly from the same field's use in MIME, where it is an
     493       optional field used only within the "message/external-body" media-
     494       type.
     495
     496NEW:
     497
     498       Note: HTTP's use of Content-Length for message framing differs
     499       significantly from the same field's use in MIME, where it is an
     500       optional field used only within the "message/external-body"
     501       media-type.
     502
     503
     504Section 7., paragraph 1:
     505OLD:
     506
     507    Since there is no way to distinguish a successfully completed, close-
     508    delimited message from a partially received message interrupted by
     509    network failure, a server SHOULD generate encoding or length-
     510    delimited messages whenever possible.  The close-delimiting feature
     511    exists primarily for backwards compatibility with HTTP/1.0.
     512
     513NEW:
     514
     515    Since there is no way to distinguish a successfully completed,
     516    close-delimited message from a partially received message interrupted
     517    by network failure, a server SHOULD generate encoding or
     518    length-delimited messages whenever possible.  The close-delimiting
     519    feature exists primarily for backwards compatibility with HTTP/1.0.
     520
     521
     522Section 4., paragraph 5:
     523OLD:
     524
     525    All transfer-coding names are case-insensitive and ought to be
     526    registered within the HTTP Transfer Coding registry, as defined in
     527    Section 8.4.  They are used in the TE (Section 4.3) and Transfer-
     528    Encoding (Section 3.3.1) header fields.
     529
     530NEW:
     531
     532    All transfer-coding names are case-insensitive and ought to be
     533    registered within the HTTP Transfer Coding registry, as defined in
     534    Section 8.4.  They are used in the TE (Section 4.3) and
     535    Transfer-Encoding (Section 3.3.1) header fields.
     536
     537
     538Section 4.1.1., paragraph 1:
     539OLD:
     540
     541    The chunked encoding allows each chunk to include zero or more chunk
     542    extensions, immediately following the chunk-size, for the sake of
     543    supplying per-chunk metadata (such as a signature or hash), mid-
     544    message control information, or randomization of message body size.
     545
     546NEW:
     547
     548    The chunked encoding allows each chunk to include zero or more chunk
     549    extensions, immediately following the chunk-size, for the sake of
     550    supplying per-chunk metadata (such as a signature or hash),
     551    mid-message control information, or randomization of message body
     552    size.
     553
     554
     555Section 5.1., paragraph 1:
     556OLD:
     557
     558    HTTP is used in a wide variety of applications, ranging from general-
     559    purpose computers to home appliances.  In some cases, communication
     560    options are hard-coded in a client's configuration.  However, most
     561    HTTP clients rely on the same resource identification mechanism and
     562    configuration techniques as general-purpose Web browsers.
     563
     564NEW:
     565
     566    HTTP is used in a wide variety of applications, ranging from
     567    general-purpose computers to home appliances.  In some cases,
     568    communication options are hard-coded in a client's configuration.
     569    However, most HTTP clients rely on the same resource identification
     570    mechanism and configuration techniques as general-purpose Web
     571    browsers.
     572
     573
     574Section 5.4., paragraph 8:
     575OLD:
     576
     577    When a proxy receives a request with an absolute-form of request-
     578    target, the proxy MUST ignore the received Host header field (if any)
     579    and instead replace it with the host information of the request-
     580    target.  A proxy that forwards such a request MUST generate a new
     581    Host field-value based on the received request-target rather than
     582    forward the received Host field-value.
     583
     584NEW:
     585
     586    When a proxy receives a request with an absolute-form of
     587    request-target, the proxy MUST ignore the received Host header field
     588    (if any) and instead replace it with the host information of the
     589    request-target.  A proxy that forwards such a request MUST generate a
     590    new Host field-value based on the received request-target rather than
     591    forward the received Host field-value.
     592
     593
     594Section 5.6., paragraph 2:
     595OLD:
     596
     597    A client that has more than one outstanding request on a connection
     598    MUST maintain a list of outstanding requests in the order sent and
     599    MUST associate each received response message on that connection to
     600    the highest ordered request that has not yet received a final (non-
     601    1xx) response.
     602
     603NEW:
     604
     605    A client that has more than one outstanding request on a connection
     606    MUST maintain a list of outstanding requests in the order sent and
     607    MUST associate each received response message on that connection to
     608    the highest ordered request that has not yet received a final
     609    (non-1xx) response.
     610
     611
     612Section 6.3.1., paragraph 2:
     613OLD:
     614
     615    When an inbound connection is closed prematurely, a client MAY open a
     616    new connection and automatically retransmit an aborted sequence of
     617    requests if all of those requests have idempotent methods (Section
     618    4.2.2 of [RFC7231]).  A proxy MUST NOT automatically retry non-
     619    idempotent requests.
     620
     621NEW:
     622
     623    When an inbound connection is closed prematurely, a client MAY open a
     624    new connection and automatically retransmit an aborted sequence of
     625    requests if all of those requests have idempotent methods (Section
     626    4.2.2 of [RFC7231]).  A proxy MUST NOT automatically retry
     627    non-idempotent requests.
     628
     629
     630Section 6.4., paragraph 3:
     631OLD:
     632
     633    Multiple connections are typically used to avoid the "head-of-line
     634    blocking" problem, wherein a request that takes significant server-
     635    side processing and/or has a large payload blocks subsequent requests
     636    on the same connection.  However, each connection consumes server
     637    resources.  Furthermore, using multiple connections can cause
     638    undesirable side effects in congested networks.
     639
     640NEW:
     641
     642    Multiple connections are typically used to avoid the "head-of-line
     643    blocking" problem, wherein a request that takes significant
     644    server-side processing and/or has a large payload blocks subsequent
     645    requests on the same connection.  However, each connection consumes
     646    server resources.  Furthermore, using multiple connections can cause
     647    undesirable side effects in congested networks.
     648
     649
     650Section 7., paragraph 2:
     651OLD:
     652
     653    A construct "#" is defined, similar to "*", for defining comma-
     654    delimited lists of elements.  The full form is "<n>#<m>element"
     655    indicating at least <n> and at most <m> elements, each separated by a
     656    single comma (",") and optional whitespace (OWS).
     657
     658NEW:
     659
     660    A construct "#" is defined, similar to "*", for defining
     661    comma-delimited lists of elements.  The full form is "<n>#<m>element"
     662    indicating at least <n> and at most <m> elements, each separated by a
     663    single comma (",") and optional whitespace (OWS).
     664
     665
     666Section 8.3.1., paragraph 17:
     667OLD:
     668
     669       File extension(s):  N/A
     670       Macintosh file type code(s):  N/A
     671
     672NEW:
     673
     674       File extension(s):  N/A
     675 
     676       Macintosh file type code(s):  N/A
     677
     678
     679Section 8.3.2., paragraph 12:
     680OLD:
     681
     682    Applications that use this media type:  N/A
     683    Fragment identifier considerations:  N/A
     684
     685NEW:
     686
     687    Applications that use this media type:  N/A
     688 
     689    Fragment identifier considerations:  N/A
     690
     691
     692Section 9.1., paragraph 1:
     693OLD:
     694
     695    HTTP relies on the notion of an authoritative response: a response
     696    that has been determined by (or at the direction of) the authority
     697    identified within the target URI to be the most appropriate response
     698    for that request given the state of the target resource at the time
     699    of response message origination.  Providing a response from a non-
     700    authoritative source, such as a shared cache, is often useful to
     701    improve performance and availability, but only to the extent that the
     702    source can be trusted or the distrusted response can be safely used.
     703
     704NEW:
     705
     706    HTTP relies on the notion of an authoritative response: a response
     707    that has been determined by (or at the direction of) the authority
     708    identified within the target URI to be the most appropriate response
     709    for that request given the state of the target resource at the time
     710    of response message origination.  Providing a response from a
     711    non-authoritative source, such as a shared cache, is often useful to
     712    improve performance and availability, but only to the extent that the
     713    source can be trusted or the distrusted response can be safely used.
     714
     715
     716Section 9.6., paragraph 1:
     717OLD:
     718
     719    HTTP does not define a specific mechanism for ensuring message
     720    integrity, instead relying on the error-detection ability of
     721    underlying transport protocols and the use of length or chunk-
     722    delimited framing to detect completeness.  Additional integrity
     723    mechanisms, such as hash functions or digital signatures applied to
     724    the content, can be selectively added to messages via extensible
     725    metadata header fields.  Historically, the lack of a single integrity
     726    mechanism has been justified by the informal nature of most HTTP
     727    communication.  However, the prevalence of HTTP as an information
     728    access mechanism has resulted in its increasing use within
     729    environments where verification of message integrity is crucial.
     730
     731NEW:
     732
     733    HTTP does not define a specific mechanism for ensuring message
     734    integrity, instead relying on the error-detection ability of
     735    underlying transport protocols and the use of length or
     736    chunk-delimited framing to detect completeness.  Additional integrity
     737    mechanisms, such as hash functions or digital signatures applied to
     738    the content, can be selectively added to messages via extensible
     739    metadata header fields.  Historically, the lack of a single integrity
     740    mechanism has been justified by the informal nature of most HTTP
     741    communication.  However, the prevalence of HTTP as an information
     742    access mechanism has resulted in its increasing use within
     743    environments where verification of message integrity is crucial.
     744
     745
     746Section 9.8., paragraph 3:
     747OLD:
     748
     749    To minimize the risk of theft or accidental publication, log
     750    information ought to be purged of personally identifiable
     751    information, including user identifiers, IP addresses, and user-
     752    provided query parameters, as soon as that information is no longer
     753    necessary to support operational needs for security, auditing, or
     754    fraud control.
     755
     756NEW:
     757
     758    To minimize the risk of theft or accidental publication, log
     759    information ought to be purged of personally identifiable
     760    information, including user identifiers, IP addresses, and
     761    user-provided query parameters, as soon as that information is no
     762    longer necessary to support operational needs for security, auditing,
     763    or fraud control.
     764
     765
     766Section 19.7.1, paragraph 21:
     767OLD:
     768
     769    The meaning of the "deflate" content coding has been clarified.
     770    (Section 4.2.2)
     771    The segment + query components of RFC 3986 have been used to define
     772    the request-target, instead of abs_path from RFC 1808.  The asterisk-
     773    form of the request-target is only allowed with the OPTIONS method.
     774    (Section 5.3)
     775
     776NEW:
     777
     778    The meaning of the "deflate" content coding has been clarified.
     779    (Section 4.2.2)
     780 
     781    The segment + query components of RFC 3986 have been used to define
     782    the request-target, instead of abs_path from RFC 1808.  The asterisk-
     783    form of the request-target is only allowed with the OPTIONS method.
     784    (Section 5.3)
     785
     786
     787Section 19.7.1, paragraph 28:
     788OLD:
     789
     790    Registration of Transfer Codings now requires IETF Review
     791    (Section 8.4)
     792 
     793    This specification now defines the Upgrade Token Registry, previously
     794    defined in Section 7.2 of [RFC2817].  (Section 8.6)
     795
     796NEW:
     797
     798    Registration of Transfer Codings now requires IETF Review
     799    (Section 8.4)
     800    This specification now defines the Upgrade Token Registry, previously
     801    defined in Section 7.2 of [RFC2817].  (Section 8.6)
     802
     803
     804Appendix B., paragraph 10:
     805OLD:
     806
     807    absolute-URI = <absolute-URI, see [RFC3986], Section 4.3>
     808    absolute-form = absolute-URI
     809    absolute-path = 1*( "/" segment )
     810    asterisk-form = "*"
     811    authority = <authority, see [RFC3986], Section 3.2>
     812    authority-form = authority
     813 
     814    chunk = chunk-size [ chunk-ext ] CRLF chunk-data CRLF
     815    chunk-data = 1*OCTET
     816    chunk-ext = *( ";" chunk-ext-name [ "=" chunk-ext-val ] )
     817    chunk-ext-name = token
     818    chunk-ext-val = token / quoted-string
     819    chunk-size = 1*HEXDIG
     820    chunked-body = *chunk last-chunk trailer-part CRLF
     821    comment = "(" *( ctext / quoted-pair / comment ) ")"
     822    connection-option = token
     823    ctext = HTAB / SP / %x21-27 ; '!'-'''
     824     / %x2A-5B ; '*'-'['
     825     / %x5D-7E ; ']'-'~'
     826     / obs-text
     827
     828NEW:
     829
     830    absolute-URI = <absolute-URI, see [RFC3986], Section 4.3>
     831    absolute-form = absolute-URI
     832    absolute-path = 1*( "/" segment )
     833    asterisk-form = "*"
     834    authority = <authority, see [RFC3986], Section 3.2>
     835    authority-form = authority
     836    chunk = chunk-size [ chunk-ext ] CRLF chunk-data CRLF
     837    chunk-data = 1*OCTET
     838    chunk-ext = *( ";" chunk-ext-name [ "=" chunk-ext-val ] )
     839    chunk-ext-name = token
     840    chunk-ext-val = token / quoted-string
     841    chunk-size = 1*HEXDIG
     842    chunked-body = *chunk last-chunk trailer-part CRLF
     843    comment = "(" *( ctext / quoted-pair / comment ) ")"
     844    connection-option = token
     845    ctext = HTAB / SP / %x21-27 ; '!'-'''
     846     / %x2A-5B ; '*'-'['
     847     / %x5D-7E ; ']'-'~'
     848     / obs-text
     849
     850
     851Appendix B., paragraph 19:
     852OLD:
     853
     854    scheme = <scheme, see [RFC3986], Section 3.1>
     855    segment = <segment, see [RFC3986], Section 3.3>
     856    start-line = request-line / status-line
     857    status-code = 3DIGIT
     858    status-line = HTTP-version SP status-code SP reason-phrase CRLF
     859    t-codings = "trailers" / ( transfer-coding [ t-ranking ] )
     860    t-ranking = OWS ";" OWS "q=" rank
     861    tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "." /
     862     "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA
     863    token = 1*tchar
     864    trailer-part = *( header-field CRLF )
     865    transfer-coding = "chunked" / "compress" / "deflate" / "gzip" /
     866     transfer-extension
     867    transfer-extension = token *( OWS ";" OWS transfer-parameter )
     868    transfer-parameter = token BWS "=" BWS ( token / quoted-string )
     869
     870NEW:
     871
     872    scheme = <scheme, see [RFC3986], Section 3.1>
     873    segment = <segment, see [RFC3986], Section 3.3>
     874    start-line = request-line / status-line
     875    status-code = 3DIGIT
     876    status-line = HTTP-version SP status-code SP reason-phrase CRLF
     877 
     878    t-codings = "trailers" / ( transfer-coding [ t-ranking ] )
     879    t-ranking = OWS ";" OWS "q=" rank
     880    tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "." /
     881     "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA
     882    token = 1*tchar
     883    trailer-part = *( header-field CRLF )
     884    transfer-coding = "chunked" / "compress" / "deflate" / "gzip" /
     885     transfer-extension
     886    transfer-extension = token *( OWS ";" OWS transfer-parameter )
     887    transfer-parameter = token BWS "=" BWS ( token / quoted-string )
     888
     889
     890Appendix B., paragraph 22:
     891OLD:
     892
     893    A
     894       absolute-form (of request-target)  41
     895       accelerator  10
     896       application/http Media Type  62
     897       asterisk-form (of request-target)  42
     898       authoritative response  66
     899       authority-form (of request-target)  42
     900
     901NEW:
     902
     903    A
     904       absolute-form (of request-target)  42
     905       accelerator  10
     906       application/http Media Type  63
     907       asterisk-form (of request-target)  43
     908       authoritative response  67
     909       authority-form (of request-target)  42-43
     910
     911
     912Appendix B., paragraph 24:
     913OLD:
     914
     915    C
     916       cache  11
     917       cacheable  11
     918       captive portal  11
     919       chunked (Coding Format)  28, 31, 35
     920       client  7
     921       close  50, 55
     922       compress (Coding Format)  38
     923       connection  7
     924       Connection header field  50, 55
     925       Content-Length header field  29
     926
     927NEW:
     928
     929    C
     930       cache  11
     931       cacheable  12
     932       captive portal  11
     933       chunked (Coding Format)  28, 32, 36
     934       client  7
     935       close  51, 56
     936       compress (Coding Format)  38
     937       connection  7
     938       Connection header field  51, 56
     939       Content-Length header field  30
     940
     941
     942Appendix B., paragraph 25:
     943OLD:
     944
     945    D
     946       deflate (Coding Format)  38
     947       Delimiters  26
     948       downstream  9
     949
     950NEW:
     951
     952    D
     953       deflate (Coding Format)  38
     954       Delimiters  27
     955       downstream  10
     956
     957
     958Appendix B., paragraph 26:
     959OLD:
     960
     961    E
     962       effective request URI  44
     963
     964NEW:
     965
     966    E
     967       effective request URI  45
     968
     969
     970Appendix B., paragraph 27:
     971OLD:
     972
     973    G
     974       gateway  10
     975       Grammar
     976          absolute-form  41
     977          absolute-path  16
     978          absolute-URI  16
     979          ALPHA  6
     980          asterisk-form  41-42
     981          authority  16
     982          authority-form  41-42
     983          BWS  24
     984          chunk  35
     985          chunk-data  35
     986          chunk-ext  35-36
     987          chunk-ext-name  36
     988          chunk-ext-val  36
     989          chunk-size  35
     990          chunked-body  35-36
     991          comment  27
     992          Connection  50
     993          connection-option  50
     994          Content-Length  29
     995          CR  6
     996          CRLF  6
     997          ctext  27
     998          CTL  6
     999          DIGIT  6
     1000          DQUOTE  6
     1001          field-content  22
     1002          field-name  22, 39
     1003          field-value  22
     1004          field-vchar  22
     1005          fragment  16
     1006          header-field  22, 36
     1007          HEXDIG  6
     1008          Host  43
     1009          HTAB  6
     1010          HTTP-message  19
     1011          HTTP-name  13
     1012          http-URI  16
     1013          HTTP-version  13
     1014          https-URI  18
     1015          last-chunk  35
     1016          LF  6
     1017          message-body  27
     1018          method  21
     1019          obs-fold  22
     1020          obs-text  27
     1021          OCTET  6
     1022          origin-form  41
     1023          OWS  24
     1024          partial-URI  16
     1025          port  16
     1026          protocol-name  47
     1027          protocol-version  47
     1028          pseudonym  47
     1029          qdtext  27
     1030          query  16
     1031          quoted-pair  27
     1032          quoted-string  27
     1033          rank  38
     1034          reason-phrase  22
     1035          received-by  47
     1036          received-protocol  47
     1037          request-line  21
     1038          request-target  41
     1039          RWS  24
     1040          scheme  16
     1041          segment  16
     1042          SP  6
     1043          start-line  20
     1044          status-code  22
     1045          status-line  22
     1046          t-codings  38
     1047          t-ranking  38
     1048          tchar  26
     1049          TE  38
     1050          token  26
     1051          Trailer  39
     1052          trailer-part  35-36
     1053          transfer-coding  35
     1054          Transfer-Encoding  28
     1055          transfer-extension  35
     1056          transfer-parameter  35
     1057          Upgrade  56
     1058          uri-host  16
     1059          URI-reference  16
     1060          VCHAR  6
     1061          Via  47
     1062       gzip (Coding Format)  38
     1063
     1064NEW:
     1065
     1066    G
     1067       gateway  10
     1068       Grammar
     1069          absolute-form  42
     1070          absolute-path  16
     1071          absolute-URI  16
     1072          ALPHA  6
     1073          asterisk-form  41, 43
     1074          authority  16
     1075          authority-form  42-43
     1076          BWS  25
     1077          chunk  36
     1078          chunk-data  36
     1079          chunk-ext  36
     1080          chunk-ext-name  36
     1081          chunk-ext-val  36
     1082          chunk-size  36
     1083          chunked-body  36
     1084          comment  27
     1085          Connection  51
     1086          connection-option  51
     1087          Content-Length  30
     1088          CR  6
     1089          CRLF  6
     1090          ctext  27
     1091          CTL  6
     1092          DIGIT  6
     1093          DQUOTE  6
     1094          field-content  23
     1095          field-name  23, 40
     1096          field-value  23
     1097          field-vchar  23
     1098          fragment  16
     1099          header-field  23, 37
     1100          HEXDIG  6
     1101          Host  44
     1102          HTAB  6
     1103          HTTP-message  19
     1104          HTTP-name  14
     1105          http-URI  17
     1106          HTTP-version  14
     1107          https-URI  18
     1108          last-chunk  36
     1109          LF  6
     1110          message-body  28
     1111          method  21
     1112          obs-fold  23
     1113          obs-text  27
     1114          OCTET  6
     1115          origin-form  42
     1116          OWS  25
     1117          partial-URI  16
     1118          port  16
     1119          protocol-name  47
     1120          protocol-version  47
     1121          pseudonym  47
     1122          qdtext  27
     1123          query  16
     1124          quoted-pair  27
     1125          quoted-string  27
     1126          rank  39
     1127          reason-phrase  22
     1128          received-by  47
     1129          received-protocol  47
     1130          request-line  21
     1131          request-target  41
     1132          RWS  25
     1133          scheme  16
     1134          segment  16
     1135          SP  6
     1136          start-line  21
     1137          status-code  22
     1138          status-line  22
     1139          t-codings  39
     1140          t-ranking  39
     1141          tchar  27
     1142          TE  39
     1143          token  27
     1144          Trailer  40
     1145          trailer-part  37
     1146          transfer-coding  35
     1147          Transfer-Encoding  28
     1148          transfer-extension  35
     1149          transfer-parameter  35
     1150          Upgrade  57
     1151          uri-host  16
     1152          URI-reference  16
     1153          VCHAR  6
     1154          Via  47
     1155       gzip (Coding Format)  39
     1156
     1157
     1158Appendix B., paragraph 28:
     1159OLD:
     1160
     1161    H
     1162       header field  19
     1163       header section  19
     1164       headers  19
     1165       Host header field  43
     1166       http URI scheme  16
     1167       https URI scheme  18
     1168 
     1169    I
     1170       inbound  9
     1171       interception proxy  11
     1172       intermediary  9
     1173
     1174NEW:
     1175
     1176    H
     1177       header field  19
     1178       header section  19
     1179       headers  19
     1180       Host header field  44
     1181       http URI scheme  17
     1182       https URI scheme  17
     1183    I
     1184       inbound  9
     1185       interception proxy  11
     1186       intermediary  9
     1187
     1188
     1189Appendix B., paragraph 29:
     1190OLD:
     1191
     1192    M
     1193       Media Type
     1194          application/http  62
     1195          message/http  61
     1196       message  7
     1197       message/http Media Type  61
     1198       method  21
     1199
     1200NEW:
     1201
     1202    M
     1203       Media Type
     1204          application/http  63
     1205          message/http  62
     1206       message  7
     1207       message/http Media Type  62
     1208       method  21
     1209
     1210
     1211Appendix B., paragraph 30:
     1212OLD:
     1213
     1214    N
     1215       non-transforming proxy  48
     1216
     1217NEW:
     1218
     1219    N
     1220       non-transforming proxy  49
     1221
     1222
     1223Appendix B., paragraph 31:
     1224OLD:
     1225
     1226    O
     1227       origin server  7
     1228       origin-form (of request-target)  41
     1229       outbound  9
     1230
     1231NEW:
     1232
     1233    O
     1234       origin server  7
     1235       origin-form (of request-target)  42
     1236       outbound  10
     1237
     1238
     1239Appendix B., paragraph 32:
     1240OLD:
     1241
     1242    P
     1243       phishing  66
     1244       proxy  10
     1245
     1246NEW:
     1247
     1248    P
     1249       phishing  67
     1250       proxy  10
     1251
     1252
     1253Appendix B., paragraph 35:
     1254OLD:
     1255
     1256    T
     1257       target resource  40
     1258       target URI  40
     1259       TE header field  38
     1260       Trailer header field  39
     1261       Transfer-Encoding header field  28
     1262       transforming proxy  48
     1263       transparent proxy  11
     1264       tunnel  10
     1265
     1266NEW:
     1267
     1268    T
     1269       target resource  40
     1270       target URI  40
     1271       TE header field  39
     1272       Trailer header field  40
     1273       Transfer-Encoding header field  28
     1274       transforming proxy  49
     1275       transparent proxy  11
     1276       tunnel  10
     1277
     1278
     1279Appendix B., paragraph 36:
     1280OLD:
     1281
     1282    U
     1283       Upgrade header field  56
     1284       upstream  9
     1285       URI scheme
     1286          http  16
     1287          https  18
     1288       user agent  7
     1289
     1290NEW:
     1291
     1292    U
     1293       Upgrade header field  57
     1294       upstream  9
     1295       URI scheme
     1296          http  17
     1297          https  17
     1298       user agent  7
     1299
     1300
     1301Appendix B., paragraph 37:
     1302OLD:
     1303
     1304    V
     1305       Via header field  46
     1306
     1307NEW:
     1308
     1309    V
     1310       Via header field  47
     1311
  • draft-ietf-httpbis/latest/auth48/rfc7230.diff.html

    r2709 r2712  
    66  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    77  <meta http-equiv="Content-Style-Type" content="text/css" />
    8   <title>Diff: p1-messaging.unpg.txt - rfc7230-to-be.unpg.txt</title>
     8  <title>Diff: p1-messaging.unpg.txt - rfc7230.txt</title>
    99  <style type="text/css">
    1010    body    { margin: 0.4ex; margin-right: auto; }
     
    3636<body >
    3737  <table border="0" cellpadding="0" cellspacing="0">
    38   <tr bgcolor="orange"><th></th><th>&nbsp;p1-messaging.unpg.txt&nbsp;</th><th> </th><th>&nbsp;rfc7230-to-be.unpg.txt&nbsp;</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 class="lineno" valign="top"></td><td class="left">Internet Engineering Task Force (IETF)                  R. Fielding, Ed.</td><td> </td><td class="right">Internet Engineering Task Force (IETF)                  R. Fielding, Ed.</td><td class="lineno" valign="top"></td></tr>
    41       <tr><td class="lineno" valign="top"></td><td class="left">Request for Comments: 7230                                         Adobe</td><td> </td><td class="right">Request for Comments: 7230                                         Adobe</td><td class="lineno" valign="top"></td></tr>
    42       <tr><td class="lineno" valign="top"></td><td class="left">Obsoletes: 2145, 2616                                    J. Reschke, Ed.</td><td> </td><td class="right">Obsoletes: 2145, 2616                                    J. Reschke, Ed.</td><td class="lineno" valign="top"></td></tr>
    43       <tr><td class="lineno" valign="top"></td><td class="left">Updates: 2817, 2818                                           greenbytes</td><td> </td><td class="right">Updates: 2817, 2818                                           greenbytes</td><td class="lineno" valign="top"></td></tr>
    44       <tr><td><a name="diff0001" /></td></tr>
    45       <tr><td class="lineno" valign="top"></td><td class="lblock">Category: Standards Track                                      <span class="delete">June</span> 2014</td><td> </td><td class="rblock">Category: Standards Track                                      <span class="insert"> May</span> 2014</td><td class="lineno" valign="top"></td></tr>
    46       <tr><td class="lineno" valign="top"></td><td class="left">ISSN: 2070-1721</td><td> </td><td class="right">ISSN: 2070-1721</td><td class="lineno" valign="top"></td></tr>
    47       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    48       <tr><td class="lineno" valign="top"></td><td class="left">   Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing</td><td> </td><td class="right">   Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing</td><td class="lineno" valign="top"></td></tr>
    49       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     38  <tr bgcolor="orange"><th></th><th>&nbsp;p1-messaging.unpg.txt&nbsp;</th><th> </th><th>&nbsp;rfc7230.txt&nbsp;</th><th></th></tr>
     39      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     40      <tr bgcolor="gray" ><td></td><th><a name="part-l1" /><small>skipping to change at</small><em> page 1, line 22</em></th><th> </th><th><a name="part-r1" /><small>skipping to change at</small><em> page 1, line 22</em></th><td></td></tr>
    5041      <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>
    5142      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     
    5849      <tr><td class="lineno" valign="top"></td><td class="left">   concerns for implementations.</td><td> </td><td class="right">   concerns for implementations.</td><td class="lineno" valign="top"></td></tr>
    5950      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    60       <tr><td><a name="diff0002" /></td></tr>
     51      <tr><td><a name="diff0001" /></td></tr>
    6152      <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>
    6253      <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>
     
    8475      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    8576      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
    86       <tr bgcolor="gray" ><td></td><th><a name="part-l2" /><small>skipping to change at</small><em> page 73, line 7</em></th><th> </th><th><a name="part-r2" /><small>skipping to change at</small><em> page 73, line 7</em></th><td></td></tr>
    87       <tr><td class="lineno" valign="top"></td><td class="left">   [RFC3986]     Berners-Lee, T., Fielding, R., and L. Masinter,</td><td> </td><td class="right">   [RFC3986]     Berners-Lee, T., Fielding, R., and L. Masinter,</td><td class="lineno" valign="top"></td></tr>
    88       <tr><td class="lineno" valign="top"></td><td class="left">                 "Uniform Resource Identifier (URI): Generic Syntax",</td><td> </td><td class="right">                 "Uniform Resource Identifier (URI): Generic Syntax",</td><td class="lineno" valign="top"></td></tr>
    89       <tr><td class="lineno" valign="top"></td><td class="left">                 STD 66, RFC 3986, January 2005.</td><td> </td><td class="right">                 STD 66, RFC 3986, January 2005.</td><td class="lineno" valign="top"></td></tr>
    90       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    91       <tr><td class="lineno" valign="top"></td><td class="left">   [RFC5234]     Crocker, D., Ed. and P. Overell, "Augmented BNF for</td><td> </td><td class="right">   [RFC5234]     Crocker, D., Ed. and P. Overell, "Augmented BNF for</td><td class="lineno" valign="top"></td></tr>
    92       <tr><td class="lineno" valign="top"></td><td class="left">                 Syntax Specifications: ABNF", STD 68, RFC 5234,</td><td> </td><td class="right">                 Syntax Specifications: ABNF", STD 68, RFC 5234,</td><td class="lineno" valign="top"></td></tr>
    93       <tr><td class="lineno" valign="top"></td><td class="left">                 January 2008.</td><td> </td><td class="right">                 January 2008.</td><td class="lineno" valign="top"></td></tr>
    94       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    95       <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7231]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext</td><td> </td><td class="right">   [RFC7231]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext</td><td class="lineno" valign="top"></td></tr>
    96       <tr><td class="lineno" valign="top"></td><td class="left">                 Transfer Protocol (HTTP/1.1): Semantics and Content",</td><td> </td><td class="right">                 Transfer Protocol (HTTP/1.1): Semantics and Content",</td><td class="lineno" valign="top"></td></tr>
     77      <tr bgcolor="gray" ><td></td><th><a name="part-l2" /><small>skipping to change at</small><em> page 2, line 34</em></th><th> </th><th><a name="part-r2" /><small>skipping to change at</small><em> page 2, line 34</em></th><td></td></tr>
     78      <tr><td class="lineno" valign="top"></td><td class="left">   modifications of such material outside the IETF Standards Process.</td><td> </td><td class="right">   modifications of such material outside the IETF Standards Process.</td><td class="lineno" valign="top"></td></tr>
     79      <tr><td class="lineno" valign="top"></td><td class="left">   Without obtaining an adequate license from the person(s) controlling</td><td> </td><td class="right">   Without obtaining an adequate license from the person(s) controlling</td><td class="lineno" valign="top"></td></tr>
     80      <tr><td class="lineno" valign="top"></td><td class="left">   the copyright in such materials, this document may not be modified</td><td> </td><td class="right">   the copyright in such materials, this document may not be modified</td><td class="lineno" valign="top"></td></tr>
     81      <tr><td class="lineno" valign="top"></td><td class="left">   outside the IETF Standards Process, and derivative works of it may</td><td> </td><td class="right">   outside the IETF Standards Process, and derivative works of it may</td><td class="lineno" valign="top"></td></tr>
     82      <tr><td class="lineno" valign="top"></td><td class="left">   not be created outside the IETF Standards Process, except to format</td><td> </td><td class="right">   not be created outside the IETF Standards Process, except to format</td><td class="lineno" valign="top"></td></tr>
     83      <tr><td class="lineno" valign="top"></td><td class="left">   it for publication as an RFC or to translate it into languages other</td><td> </td><td class="right">   it for publication as an RFC or to translate it into languages other</td><td class="lineno" valign="top"></td></tr>
     84      <tr><td class="lineno" valign="top"></td><td class="left">   than English.</td><td> </td><td class="right">   than English.</td><td class="lineno" valign="top"></td></tr>
     85      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     86      <tr><td class="lineno" valign="top"></td><td class="left">Table of Contents</td><td> </td><td class="right">Table of Contents</td><td class="lineno" valign="top"></td></tr>
     87      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     88      <tr><td><a name="diff0002" /></td></tr>
     89      <tr><td class="lineno" valign="top"></td><td class="lblock">   1.  Introduction <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . .  5</span></td><td> </td><td class="rblock">   1. Introduction <span class="insert">....................................................5</span></td><td class="lineno" valign="top"></td></tr>
     90      <tr><td class="lineno" valign="top"></td><td class="lblock">     1.1.  Requirements Notation  <span class="delete">. . . . . . . . . . . . . . . . . .  6</span></td><td> </td><td class="rblock">      1.1. Requirements Notation <span class="insert">......................................6</span></td><td class="lineno" valign="top"></td></tr>
     91      <tr><td class="lineno" valign="top"></td><td class="lblock">     1.2.  Syntax Notation  <span class="delete">. . . . . . . . . . . . . . . . . . . . .  6</span></td><td> </td><td class="rblock">      1.2. Syntax Notation <span class="insert">............................................6</span></td><td class="lineno" valign="top"></td></tr>
     92      <tr><td class="lineno" valign="top"></td><td class="lblock">   2.  Architecture <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . .  6</span></td><td> </td><td class="rblock">   2. Architecture <span class="insert">....................................................6</span></td><td class="lineno" valign="top"></td></tr>
     93      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.1.  Client/Server Messaging  <span class="delete">. . . . . . . . . . . . . . . . .  7</span></td><td> </td><td class="rblock">      2.1. Client/Server Messaging <span class="insert">....................................7</span></td><td class="lineno" valign="top"></td></tr>
     94      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.2.  Implementation Diversity <span class="delete">. . . . . . . . . . . . . . . . .  8</span></td><td> </td><td class="rblock">      2.2. Implementation Diversity <span class="insert">...................................8</span></td><td class="lineno" valign="top"></td></tr>
     95      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.3.  Intermediaries <span class="delete">. . . . . . . . . . . . . . . . . . . . . .  9</span></td><td> </td><td class="rblock">      2.3. Intermediaries <span class="insert">.............................................9</span></td><td class="lineno" valign="top"></td></tr>
     96      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.4.  Caches <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . . 11</span></td><td> </td><td class="rblock">      2.4. Caches <span class="insert">....................................................11</span></td><td class="lineno" valign="top"></td></tr>
     97      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.5.  Conformance and Error Handling <span class="delete">. . . . . . . . . . . . . . 12</span></td><td> </td><td class="rblock">      2.5. Conformance and Error Handling <span class="insert">............................12</span></td><td class="lineno" valign="top"></td></tr>
     98      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.6.  Protocol Versioning  <span class="delete">. . . . . . . . . . . . . . . . . . . 13</span></td><td> </td><td class="rblock">      2.6. Protocol Versioning <span class="insert">.......................................13</span></td><td class="lineno" valign="top"></td></tr>
     99      <tr><td class="lineno" valign="top"></td><td class="lblock">     2.7.  Uniform Resource Identifiers <span class="delete">. . . . . . . . . . . . . . . 16</span></td><td> </td><td class="rblock">      2.7. Uniform Resource Identifiers <span class="insert">..............................16</span></td><td class="lineno" valign="top"></td></tr>
     100      <tr><td class="lineno" valign="top"></td><td class="lblock">       2.7.1.  http URI Scheme  <span class="delete">. . . . . . . . . . . . . . . . . . . 16</span></td><td> </td><td class="rblock">           2.7.1. http URI Scheme <span class="insert">....................................17</span></td><td class="lineno" valign="top"></td></tr>
     101      <tr><td class="lineno" valign="top"></td><td class="lblock">       2.7.2.  https URI Scheme <span class="delete">. . . . . . . . . . . . . . . . . . . 18</span></td><td> </td><td class="rblock">           2.7.2. https URI Scheme <span class="insert">...................................18</span></td><td class="lineno" valign="top"></td></tr>
     102      <tr><td class="lineno" valign="top"></td><td class="lblock">       2.7.3.  http and https URI Normalization and Comparison  <span class="delete">. . . 19</span></td><td> </td><td class="rblock">           2.7.3. http and https URI Normalization and Comparison <span class="insert">....19</span></td><td class="lineno" valign="top"></td></tr>
     103      <tr><td class="lineno" valign="top"></td><td class="lblock">   3.  Message Format <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 19</span></td><td> </td><td class="rblock">   3. Message Format <span class="insert">.................................................19</span></td><td class="lineno" valign="top"></td></tr>
     104      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.1.  Start Line <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 20</span></td><td> </td><td class="rblock">      3.1. Start Line <span class="insert">................................................20</span></td><td class="lineno" valign="top"></td></tr>
     105      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.1.1.  Request Line <span class="delete">. . . . . . . . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock">           3.1.1. Request Line <span class="insert">.......................................21</span></td><td class="lineno" valign="top"></td></tr>
     106      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.1.2.  Status Line  <span class="delete">. . . . . . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock">           3.1.2. Status Line <span class="insert">........................................22</span></td><td class="lineno" valign="top"></td></tr>
     107      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.2.  Header Fields  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock">      3.2. Header Fields <span class="insert">.............................................22</span></td><td class="lineno" valign="top"></td></tr>
     108      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.2.1.  Field Extensibility  <span class="delete">. . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock">           3.2.1. Field Extensibility <span class="insert">................................23</span></td><td class="lineno" valign="top"></td></tr>
     109      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.2.2.  Field Order  <span class="delete">. . . . . . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock">           3.2.2. Field Order <span class="insert">........................................23</span></td><td class="lineno" valign="top"></td></tr>
     110      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.2.3.  Whitespace <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock">           3.2.3. Whitespace <span class="insert">.........................................24</span></td><td class="lineno" valign="top"></td></tr>
     111      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.2.4.  Field Parsing  <span class="delete">. . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock">           3.2.4. Field Parsing <span class="insert">......................................25</span></td><td class="lineno" valign="top"></td></tr>
     112      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.2.5.  Field Limits <span class="delete">. . . . . . . . . . . . . . . . . . . . . 26</span></td><td> </td><td class="rblock">           3.2.5. Field Limits <span class="insert">.......................................26</span></td><td class="lineno" valign="top"></td></tr>
     113      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.2.6.  Field Value Components <span class="delete">. . . . . . . . . . . . . . . . 26</span></td><td> </td><td class="rblock">           3.2.6. Field Value Components <span class="insert">.............................27</span></td><td class="lineno" valign="top"></td></tr>
     114      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.3.  Message Body <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 27</span></td><td> </td><td class="rblock">      3.3. Message Body <span class="insert">..............................................28</span></td><td class="lineno" valign="top"></td></tr>
     115      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.3.1.  Transfer-Encoding  <span class="delete">. . . . . . . . . . . . . . . . . . 28</span></td><td> </td><td class="rblock">           3.3.1. Transfer-Encoding <span class="insert">..................................28</span></td><td class="lineno" valign="top"></td></tr>
     116      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.3.2.  Content-Length <span class="delete">. . . . . . . . . . . . . . . . . . . . 29</span></td><td> </td><td class="rblock">           3.3.2. Content-Length <span class="insert">.....................................30</span></td><td class="lineno" valign="top"></td></tr>
     117      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.3.3.  Message Body Length  <span class="delete">. . . . . . . . . . . . . . . . . 31</span></td><td> </td><td class="rblock">           3.3.3. Message Body Length <span class="insert">................................32</span></td><td class="lineno" valign="top"></td></tr>
     118      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.4.  Handling Incomplete Messages <span class="delete">. . . . . . . . . . . . . . . 33</span></td><td> </td><td class="rblock">      3.4. Handling Incomplete Messages <span class="insert">..............................34</span></td><td class="lineno" valign="top"></td></tr>
     119      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.5.  Message Parsing Robustness <span class="delete">. . . . . . . . . . . . . . . . 34</span></td><td> </td><td class="rblock">      3.5. Message Parsing Robustness <span class="insert">................................34</span></td><td class="lineno" valign="top"></td></tr>
     120      <tr><td class="lineno" valign="top"></td><td class="lblock">   4.  Transfer Codings <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 34</span></td><td> </td><td class="rblock">   4. Transfer Codings <span class="insert">...............................................35</span></td><td class="lineno" valign="top"></td></tr>
     121      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.1.  Chunked Transfer Coding  <span class="delete">. . . . . . . . . . . . . . . . . 35</span></td><td> </td><td class="rblock">      4.1. Chunked Transfer Coding <span class="insert">...................................36</span></td><td class="lineno" valign="top"></td></tr>
     122      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.1.1.  Chunk Extensions <span class="delete">. . . . . . . . . . . . . . . . . . . 36</span></td><td> </td><td class="rblock">           4.1.1. Chunk Extensions <span class="insert">...................................36</span></td><td class="lineno" valign="top"></td></tr>
     123      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.1.2.  Chunked Trailer Part <span class="delete">. . . . . . . . . . . . . . . . . 36</span></td><td> </td><td class="rblock">           4.1.2. Chunked Trailer Part <span class="insert">...............................37</span></td><td class="lineno" valign="top"></td></tr>
     124      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.1.3.  Decoding Chunked <span class="delete">. . . . . . . . . . . . . . . . . . . 37</span></td><td> </td><td class="rblock">           4.1.3. Decoding Chunked <span class="insert">...................................38</span></td><td class="lineno" valign="top"></td></tr>
     125      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.2.  Compression Codings  <span class="delete">. . . . . . . . . . . . . . . . . . . 37</span></td><td> </td><td class="rblock">      4.2. Compression Codings <span class="insert">.......................................38</span></td><td class="lineno" valign="top"></td></tr>
     126      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.2.1.  Compress Coding  <span class="delete">. . . . . . . . . . . . . . . . . . . 38</span></td><td> </td><td class="rblock">           4.2.1. Compress Coding <span class="insert">....................................38</span></td><td class="lineno" valign="top"></td></tr>
     127      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.2.2.  Deflate Coding <span class="delete">. . . . . . . . . . . . . . . . . . . . 38</span></td><td> </td><td class="rblock">           4.2.2. Deflate Coding <span class="insert">.....................................38</span></td><td class="lineno" valign="top"></td></tr>
     128      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.2.3.  Gzip Coding  <span class="delete">. . . . . . . . . . . . . . . . . . . . . 38</span></td><td> </td><td class="rblock">           4.2.3. Gzip Coding <span class="insert">........................................39</span></td><td class="lineno" valign="top"></td></tr>
     129      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.3.  TE <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . . . . 38</span></td><td> </td><td class="rblock">      4.3. TE <span class="insert">........................................................39</span></td><td class="lineno" valign="top"></td></tr>
     130      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.4.  Trailer  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 39</span></td><td> </td><td class="rblock">      4.4. Trailer <span class="insert">...................................................40</span></td><td class="lineno" valign="top"></td></tr>
     131      <tr><td class="lineno" valign="top"></td><td class="lblock">   5.  Message Routing  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 39</span></td><td> </td><td class="rblock">   5. Message Routing <span class="insert">................................................40</span></td><td class="lineno" valign="top"></td></tr>
     132      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.1.  Identifying a Target Resource  <span class="delete">. . . . . . . . . . . . . . 40</span></td><td> </td><td class="rblock">      5.1. Identifying a Target Resource <span class="insert">.............................40</span></td><td class="lineno" valign="top"></td></tr>
     133      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.2.  Connecting Inbound <span class="delete">. . . . . . . . . . . . . . . . . . . . 40</span></td><td> </td><td class="rblock">      5.2. Connecting Inbound <span class="insert">........................................41</span></td><td class="lineno" valign="top"></td></tr>
     134      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.3.  Request Target <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 41</span></td><td> </td><td class="rblock">      5.3. Request Target <span class="insert">............................................41</span></td><td class="lineno" valign="top"></td></tr>
     135      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.1.  origin-form  <span class="delete">. . . . . . . . . . . . . . . . . . . . . 41</span></td><td> </td><td class="rblock">           5.3.1. origin-form <span class="insert">........................................42</span></td><td class="lineno" valign="top"></td></tr>
     136      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.2.  absolute-form  <span class="delete">. . . . . . . . . . . . . . . . . . . . 41</span></td><td> </td><td class="rblock">           5.3.2. absolute-form <span class="insert">......................................42</span></td><td class="lineno" valign="top"></td></tr>
     137      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.3.  authority-form <span class="delete">. . . . . . . . . . . . . . . . . . . . 42</span></td><td> </td><td class="rblock">           5.3.3. authority-form <span class="insert">.....................................43</span></td><td class="lineno" valign="top"></td></tr>
     138      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.4.  asterisk-form  <span class="delete">. . . . . . . . . . . . . . . . . . . . 42</span></td><td> </td><td class="rblock">           5.3.4. asterisk-form <span class="insert">......................................43</span></td><td class="lineno" valign="top"></td></tr>
     139      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.4.  Host <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . . . 43</span></td><td> </td><td class="rblock">      5.4. Host <span class="insert">......................................................44</span></td><td class="lineno" valign="top"></td></tr>
     140      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.5.  Effective Request URI  <span class="delete">. . . . . . . . . . . . . . . . . . 44</span></td><td> </td><td class="rblock">      5.5. Effective Request URI <span class="insert">.....................................45</span></td><td class="lineno" valign="top"></td></tr>
     141      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.6.  Associating a Response to a Request  <span class="delete">. . . . . . . . . . . 46</span></td><td> </td><td class="rblock">      5.6. Associating a Response to a Request <span class="insert">.......................46</span></td><td class="lineno" valign="top"></td></tr>
     142      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.7.  Message Forwarding <span class="delete">. . . . . . . . . . . . . . . . . . . . 46</span></td><td> </td><td class="rblock">      5.7. Message Forwarding <span class="insert">........................................47</span></td><td class="lineno" valign="top"></td></tr>
     143      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.7.1.  Via  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 46</span></td><td> </td><td class="rblock">           5.7.1. Via <span class="insert">................................................47</span></td><td class="lineno" valign="top"></td></tr>
     144      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.7.2.  Transformations  <span class="delete">. . . . . . . . . . . . . . . . . . . 48</span></td><td> </td><td class="rblock">           5.7.2. Transformations <span class="insert">....................................49</span></td><td class="lineno" valign="top"></td></tr>
     145      <tr><td class="lineno" valign="top"></td><td class="lblock">   6.  Connection Management  <span class="delete">. . . . . . . . . . . . . . . . . . . . 49</span></td><td> </td><td class="rblock">   6. Connection Management <span class="insert">..........................................50</span></td><td class="lineno" valign="top"></td></tr>
     146      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.1.  Connection <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 50</span></td><td> </td><td class="rblock">      6.1. Connection <span class="insert">................................................51</span></td><td class="lineno" valign="top"></td></tr>
     147      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.2.  Establishment  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 51</span></td><td> </td><td class="rblock">      6.2. Establishment <span class="insert">.............................................52</span></td><td class="lineno" valign="top"></td></tr>
     148      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.3.  Persistence  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 51</span></td><td> </td><td class="rblock">      6.3. Persistence <span class="insert">...............................................52</span></td><td class="lineno" valign="top"></td></tr>
     149      <tr><td class="lineno" valign="top"></td><td class="lblock">       6.3.1.  Retrying Requests  <span class="delete">. . . . . . . . . . . . . . . . . . 52</span></td><td> </td><td class="rblock">           6.3.1. Retrying Requests <span class="insert">..................................53</span></td><td class="lineno" valign="top"></td></tr>
     150      <tr><td class="lineno" valign="top"></td><td class="lblock">       6.3.2.  Pipelining <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 53</span></td><td> </td><td class="rblock">           6.3.2. Pipelining <span class="insert">.........................................54</span></td><td class="lineno" valign="top"></td></tr>
     151      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.4.  Concurrency  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 54</span></td><td> </td><td class="rblock">      6.4. Concurrency <span class="insert">...............................................55</span></td><td class="lineno" valign="top"></td></tr>
     152      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.5.  Failures and Timeouts  <span class="delete">. . . . . . . . . . . . . . . . . . 54</span></td><td> </td><td class="rblock">      6.5. Failures and Timeouts <span class="insert">.....................................55</span></td><td class="lineno" valign="top"></td></tr>
     153      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.6.  Tear-down  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 55</span></td><td> </td><td class="rblock">      6.6. Tear-down <span class="insert">.................................................56</span></td><td class="lineno" valign="top"></td></tr>
     154      <tr><td class="lineno" valign="top"></td><td class="lblock">     6.7.  Upgrade  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 56</span></td><td> </td><td class="rblock">      6.7. Upgrade <span class="insert">...................................................57</span></td><td class="lineno" valign="top"></td></tr>
     155      <tr><td class="lineno" valign="top"></td><td class="lblock">   7.  ABNF List Extension: #rule <span class="delete">. . . . . . . . . . . . . . . . . . 58</span></td><td> </td><td class="rblock">   7. ABNF List Extension: #rule <span class="insert">.....................................59</span></td><td class="lineno" valign="top"></td></tr>
     156      <tr><td class="lineno" valign="top"></td><td class="lblock">   8.  IANA Considerations  <span class="delete">. . . . . . . . . . . . . . . . . . . . . 59</span></td><td> </td><td class="rblock">   8. IANA Considerations <span class="insert">............................................61</span></td><td class="lineno" valign="top"></td></tr>
     157      <tr><td class="lineno" valign="top"></td><td class="lblock">     8.1.  Header Field Registration  <span class="delete">. . . . . . . . . . . . . . . . 59</span></td><td> </td><td class="rblock">      8.1. Header Field Registration <span class="insert">.................................61</span></td><td class="lineno" valign="top"></td></tr>
     158      <tr><td class="lineno" valign="top"></td><td class="lblock">     8.2.  URI Scheme Registration  <span class="delete">. . . . . . . . . . . . . . . . . 60</span></td><td> </td><td class="rblock">      8.2. URI Scheme Registration <span class="insert">...................................62</span></td><td class="lineno" valign="top"></td></tr>
     159      <tr><td class="lineno" valign="top"></td><td class="lblock">     8.3.  Internet Media Type Registration <span class="delete">. . . . . . . . . . . . . 60</span></td><td> </td><td class="rblock">      8.3. Internet Media Type Registration <span class="insert">..........................62</span></td><td class="lineno" valign="top"></td></tr>
     160      <tr><td class="lineno" valign="top"></td><td class="lblock">       8.3.1.  Internet Media Type message/http <span class="delete">. . . . . . . . . . . 61</span></td><td> </td><td class="rblock">           8.3.1. Internet Media Type message/http <span class="insert">...................62</span></td><td class="lineno" valign="top"></td></tr>
     161      <tr><td class="lineno" valign="top"></td><td class="lblock">       8.3.2.  Internet Media Type application/http <span class="delete">. . . . . . . . . 62</span></td><td> </td><td class="rblock">           8.3.2. Internet Media Type application/http <span class="insert">...............63</span></td><td class="lineno" valign="top"></td></tr>
     162      <tr><td class="lineno" valign="top"></td><td class="lblock">     8.4.  Transfer Coding Registry <span class="delete">. . . . . . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock">      8.4. Transfer Coding Registry <span class="insert">..................................64</span></td><td class="lineno" valign="top"></td></tr>
     163      <tr><td class="lineno" valign="top"></td><td class="lblock">       8.4.1.  Procedure  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock">           8.4.1. Procedure <span class="insert">..........................................65</span></td><td class="lineno" valign="top"></td></tr>
     164      <tr><td class="lineno" valign="top"></td><td class="lblock">       8.4.2.  Registration <span class="delete">. . . . . . . . . . . . . . . . . . . . . 64</span></td><td> </td><td class="rblock">           8.4.2. Registration <span class="insert">.......................................65</span></td><td class="lineno" valign="top"></td></tr>
     165      <tr><td class="lineno" valign="top"></td><td class="lblock">     8.5.  Content Coding Registration  <span class="delete">. . . . . . . . . . . . . . . 64</span></td><td> </td><td class="rblock">      8.5. Content Coding Registration <span class="insert">...............................66</span></td><td class="lineno" valign="top"></td></tr>
     166      <tr><td class="lineno" valign="top"></td><td class="lblock">     8.6.  Upgrade Token Registry <span class="delete">. . . . . . . . . . . . . . . . . . 64</span></td><td> </td><td class="rblock">      8.6. Upgrade Token Registry <span class="insert">....................................66</span></td><td class="lineno" valign="top"></td></tr>
     167      <tr><td class="lineno" valign="top"></td><td class="lblock">       8.6.1.  Procedure  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 65</span></td><td> </td><td class="rblock">           8.6.1. Procedure <span class="insert">..........................................66</span></td><td class="lineno" valign="top"></td></tr>
     168      <tr><td class="lineno" valign="top"></td><td class="lblock">       8.6.2.  Upgrade Token Registration <span class="delete">. . . . . . . . . . . . . . 65</span></td><td> </td><td class="rblock">           8.6.2. Upgrade Token Registration <span class="insert">.........................67</span></td><td class="lineno" valign="top"></td></tr>
     169      <tr><td class="lineno" valign="top"></td><td class="lblock">   9.  Security Considerations  <span class="delete">. . . . . . . . . . . . . . . . . . . 66</span></td><td> </td><td class="rblock">   9. Security Considerations <span class="insert">........................................67</span></td><td class="lineno" valign="top"></td></tr>
     170      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.1.  Establishing Authority <span class="delete">. . . . . . . . . . . . . . . . . . 66</span></td><td> </td><td class="rblock">      9.1. Establishing Authority <span class="insert">....................................67</span></td><td class="lineno" valign="top"></td></tr>
     171      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.2.  Risks of Intermediaries  <span class="delete">. . . . . . . . . . . . . . . . . 67</span></td><td> </td><td class="rblock">      9.2. Risks of Intermediaries <span class="insert">...................................68</span></td><td class="lineno" valign="top"></td></tr>
     172      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.3.  Attacks via Protocol Element Length  <span class="delete">. . . . . . . . . . . 67</span></td><td> </td><td class="rblock">      9.3. Attacks via Protocol Element Length <span class="insert">.......................69</span></td><td class="lineno" valign="top"></td></tr>
     173      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.4.  Response Splitting <span class="delete">. . . . . . . . . . . . . . . . . . . . 68</span></td><td> </td><td class="rblock">      9.4. Response Splitting <span class="insert">........................................69</span></td><td class="lineno" valign="top"></td></tr>
     174      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.5.  Request Smuggling  <span class="delete">. . . . . . . . . . . . . . . . . . . . 69</span></td><td> </td><td class="rblock">      9.5. Request Smuggling <span class="insert">.........................................70</span></td><td class="lineno" valign="top"></td></tr>
     175      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.6.  Message Integrity  <span class="delete">. . . . . . . . . . . . . . . . . . . . 69</span></td><td> </td><td class="rblock">      9.6. Message Integrity <span class="insert">.........................................70</span></td><td class="lineno" valign="top"></td></tr>
     176      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.7.  Message Confidentiality  <span class="delete">. . . . . . . . . . . . . . . . . 69</span></td><td> </td><td class="rblock">      9.7. Message Confidentiality <span class="insert">...................................71</span></td><td class="lineno" valign="top"></td></tr>
     177      <tr><td class="lineno" valign="top"></td><td class="lblock">     9.8.  Privacy of Server Log Information  <span class="delete">. . . . . . . . . . . . 70</span></td><td> </td><td class="rblock">      9.8. Privacy of Server Log Information <span class="insert">.........................71</span></td><td class="lineno" valign="top"></td></tr>
     178      <tr><td class="lineno" valign="top"></td><td class="lblock">   10. Acknowledgments  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 70</span></td><td> </td><td class="rblock">   10. Acknowledgments <span class="insert">...............................................72</span></td><td class="lineno" valign="top"></td></tr>
     179      <tr><td class="lineno" valign="top"></td><td class="lblock">   11. References <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . . 72</span></td><td> </td><td class="rblock">   11. References <span class="insert">....................................................74</span></td><td class="lineno" valign="top"></td></tr>
     180      <tr><td class="lineno" valign="top"></td><td class="lblock">     11.1. Normative References <span class="delete">. . . . . . . . . . . . . . . . . . . 72</span></td><td> </td><td class="rblock">      11.1. Normative References <span class="insert">.....................................74</span></td><td class="lineno" valign="top"></td></tr>
     181      <tr><td class="lineno" valign="top"></td><td class="lblock">     11.2. Informative References <span class="delete">. . . . . . . . . . . . . . . . . . 73</span></td><td> </td><td class="rblock">      11.2. Informative References <span class="insert">...................................75</span></td><td class="lineno" valign="top"></td></tr>
     182      <tr><td class="lineno" valign="top"></td><td class="lblock">   Appendix A.  HTTP Version History  <span class="delete">. . . . . . . . . . . . . . . . 75</span></td><td> </td><td class="rblock">   Appendix A. HTTP Version History <span class="insert">..................................78</span></td><td class="lineno" valign="top"></td></tr>
     183      <tr><td class="lineno" valign="top"></td><td class="lblock">     A.1.  Changes from HTTP/1.0  <span class="delete">. . . . . . . . . . . . . . . . . . 76</span></td><td> </td><td class="rblock">      A.1. Changes from HTTP/1.0  <span class="insert">....................................78</span></td><td class="lineno" valign="top"></td></tr>
     184      <tr><td class="lineno" valign="top"></td><td class="lblock">       A.1.1.  Multihomed Web Servers <span class="delete">. . . . . . . . . . . . . . . . 76</span></td><td> </td><td class="rblock">           A.1.1.  Multihomed Web Servers <span class="insert">............................78</span></td><td class="lineno" valign="top"></td></tr>
     185      <tr><td class="lineno" valign="top"></td><td class="lblock">       A.1.2.  Keep-Alive Connections <span class="delete">. . . . . . . . . . . . . . . . 76</span></td><td> </td><td class="rblock">           A.1.2.  Keep-Alive Connections <span class="insert">............................79</span></td><td class="lineno" valign="top"></td></tr>
     186      <tr><td class="lineno" valign="top"></td><td class="lblock">       A.1.3.  Introduction of Transfer-Encoding  <span class="delete">. . . . . . . . . . 77</span></td><td> </td><td class="rblock">           A.1.3.  Introduction of Transfer-Encoding <span class="insert">.................79</span></td><td class="lineno" valign="top"></td></tr>
     187      <tr><td class="lineno" valign="top"></td><td class="lblock">     A.2.  Changes from RFC 2616  <span class="delete">. . . . . . . . . . . . . . . . . . 77</span></td><td> </td><td class="rblock">      A.2.  Changes from RFC 2616 <span class="insert">....................................80</span></td><td class="lineno" valign="top"></td></tr>
     188      <tr><td class="lineno" valign="top"></td><td class="lblock">   Appendix B.  Collected ABNF  <span class="delete">. . . . . . . . . . . . . . . . . . . 79</span></td><td> </td><td class="rblock">   Appendix B. Collected ABNF <span class="insert">........................................82</span></td><td class="lineno" valign="top"></td></tr>
     189      <tr><td class="lineno" valign="top"></td><td class="lblock">   Index  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82</span></td><td> </td><td class="rblock">   Index <span class="insert">.............................................................85</span></td><td class="lineno" valign="top"></td></tr>
     190      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     191      <tr><td class="lineno" valign="top"></td><td class="left">1.  Introduction</td><td> </td><td class="right">1.  Introduction</td><td class="lineno" valign="top"></td></tr>
     192      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     193      <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>
     194      <tr><td class="lineno" valign="top"></td><td class="left">   level request/response protocol that uses extensible semantics and</td><td> </td><td class="right">   level request/response protocol that uses extensible semantics and</td><td class="lineno" valign="top"></td></tr>
     195      <tr><td class="lineno" valign="top"></td><td class="left">   self-descriptive message payloads for flexible interaction with</td><td> </td><td class="right">   self-descriptive message payloads for flexible interaction with</td><td class="lineno" valign="top"></td></tr>
     196      <tr><td class="lineno" valign="top"></td><td class="left">   network-based hypertext information systems.  This document is the</td><td> </td><td class="right">   network-based hypertext information systems.  This document is the</td><td class="lineno" valign="top"></td></tr>
     197      <tr><td class="lineno" valign="top"></td><td class="left">   first in a series of documents that collectively form the HTTP/1.1</td><td> </td><td class="right">   first in a series of documents that collectively form the HTTP/1.1</td><td class="lineno" valign="top"></td></tr>
     198      <tr><td class="lineno" valign="top"></td><td class="left">   specification:</td><td> </td><td class="right">   specification:</td><td class="lineno" valign="top"></td></tr>
     199      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     200      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     201      <tr bgcolor="gray" ><td></td><th><a name="part-l3" /><small>skipping to change at</small><em> page 7, line 36</em></th><th> </th><th><a name="part-r3" /><small>skipping to change at</small><em> page 7, line 36</em></th><td></td></tr>
     202      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP relies upon the Uniform Resource Identifier (URI) standard</td><td> </td><td class="right">   HTTP relies upon the Uniform Resource Identifier (URI) standard</td><td class="lineno" valign="top"></td></tr>
     203      <tr><td class="lineno" valign="top"></td><td class="left">   [RFC3986] to indicate the target resource (Section 5.1) and</td><td> </td><td class="right">   [RFC3986] to indicate the target resource (Section 5.1) and</td><td class="lineno" valign="top"></td></tr>
     204      <tr><td class="lineno" valign="top"></td><td class="left">   relationships between resources.  Messages are passed in a format</td><td> </td><td class="right">   relationships between resources.  Messages are passed in a format</td><td class="lineno" valign="top"></td></tr>
     205      <tr><td class="lineno" valign="top"></td><td class="left">   similar to that used by Internet mail [RFC5322] and the Multipurpose</td><td> </td><td class="right">   similar to that used by Internet mail [RFC5322] and the Multipurpose</td><td class="lineno" valign="top"></td></tr>
     206      <tr><td class="lineno" valign="top"></td><td class="left">   Internet Mail Extensions (MIME) [RFC2045] (see Appendix A of</td><td> </td><td class="right">   Internet Mail Extensions (MIME) [RFC2045] (see Appendix A of</td><td class="lineno" valign="top"></td></tr>
     207      <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7231] for the differences between HTTP and MIME messages).</td><td> </td><td class="right">   [RFC7231] for the differences between HTTP and MIME messages).</td><td class="lineno" valign="top"></td></tr>
     208      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     209      <tr><td class="lineno" valign="top"></td><td class="left">   Most HTTP communication consists of a retrieval request (GET) for a</td><td> </td><td class="right">   Most HTTP communication consists of a retrieval request (GET) for a</td><td class="lineno" valign="top"></td></tr>
     210      <tr><td class="lineno" valign="top"></td><td class="left">   representation of some resource identified by a URI.  In the simplest</td><td> </td><td class="right">   representation of some resource identified by a URI.  In the simplest</td><td class="lineno" valign="top"></td></tr>
     211      <tr><td class="lineno" valign="top"></td><td class="left">   case, this might be accomplished via a single bidirectional</td><td> </td><td class="right">   case, this might be accomplished via a single bidirectional</td><td class="lineno" valign="top"></td></tr>
    97212      <tr><td><a name="diff0003" /></td></tr>
    98       <tr><td class="lineno" valign="top"></td><td class="lblock">                 RFC 7231, <span class="delete">June</span> 2014.</td><td> </td><td class="rblock">                 RFC 7231, <span class="insert">May</span> 2014.</td><td class="lineno" valign="top"></td></tr>
    99       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    100       <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7232]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext</td><td> </td><td class="right">   [RFC7232]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext</td><td class="lineno" valign="top"></td></tr>
    101       <tr><td class="lineno" valign="top"></td><td class="left">                 Transfer Protocol (HTTP/1.1): Conditional Requests",</td><td> </td><td class="right">                 Transfer Protocol (HTTP/1.1): Conditional Requests",</td><td class="lineno" valign="top"></td></tr>
     213      <tr><td class="lineno" valign="top"></td><td class="lblock">   connection (===) between the user agent (UA) and the origin server</td><td> </td><td class="rblock">   connection (===) between the user agent (UA) and the origin</td><td class="lineno" valign="top"></td></tr>
     214      <tr><td class="lineno" valign="top"></td><td class="lblock">   (O).</td><td> </td><td class="rblock">   server (O).</td><td class="lineno" valign="top"></td></tr>
     215      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     216      <tr><td class="lineno" valign="top"></td><td class="left">            request   &gt;</td><td> </td><td class="right">            request   &gt;</td><td class="lineno" valign="top"></td></tr>
     217      <tr><td class="lineno" valign="top"></td><td class="left">       UA ======================================= O</td><td> </td><td class="right">       UA ======================================= O</td><td class="lineno" valign="top"></td></tr>
     218      <tr><td class="lineno" valign="top"></td><td class="left">                                   &lt;   response</td><td> </td><td class="right">                                   &lt;   response</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 client sends an HTTP request to a server in the form of a request</td><td> </td><td class="right">   A client sends an HTTP request to a server in the form of a request</td><td class="lineno" valign="top"></td></tr>
     221      <tr><td class="lineno" valign="top"></td><td class="left">   message, beginning with a request-line that includes a method, URI,</td><td> </td><td class="right">   message, beginning with a request-line that includes a method, URI,</td><td class="lineno" valign="top"></td></tr>
     222      <tr><td class="lineno" valign="top"></td><td class="left">   and protocol version (Section 3.1.1), followed by header fields</td><td> </td><td class="right">   and protocol version (Section 3.1.1), followed by header fields</td><td class="lineno" valign="top"></td></tr>
     223      <tr><td class="lineno" valign="top"></td><td class="left">   containing request modifiers, client information, and representation</td><td> </td><td class="right">   containing request modifiers, client information, and representation</td><td class="lineno" valign="top"></td></tr>
     224      <tr><td class="lineno" valign="top"></td><td class="left">   metadata (Section 3.2), an empty line to indicate the end of the</td><td> </td><td class="right">   metadata (Section 3.2), an empty line to indicate the end of the</td><td class="lineno" valign="top"></td></tr>
     225      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     226      <tr bgcolor="gray" ><td></td><th><a name="part-l4" /><small>skipping to change at</small><em> page 12, line 47</em></th><th> </th><th><a name="part-r4" /><small>skipping to change at</small><em> page 13, line 4</em></th><td></td></tr>
     227      <tr><td class="lineno" valign="top"></td><td class="left">   the corresponding ABNF rules.  Within a given message, a sender MUST</td><td> </td><td class="right">   the corresponding ABNF rules.  Within a given message, a sender MUST</td><td class="lineno" valign="top"></td></tr>
     228      <tr><td class="lineno" valign="top"></td><td class="left">   NOT generate protocol elements or syntax alternatives that are only</td><td> </td><td class="right">   NOT generate protocol elements or syntax alternatives that are only</td><td class="lineno" valign="top"></td></tr>
     229      <tr><td class="lineno" valign="top"></td><td class="left">   allowed to be generated by participants in other roles (i.e., a role</td><td> </td><td class="right">   allowed to be generated by participants in other roles (i.e., a role</td><td class="lineno" valign="top"></td></tr>
     230      <tr><td class="lineno" valign="top"></td><td class="left">   that the sender does not have for that message).</td><td> </td><td class="right">   that the sender does not have for that message).</td><td class="lineno" valign="top"></td></tr>
     231      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     232      <tr><td class="lineno" valign="top"></td><td class="left">   When a received protocol element is parsed, the recipient MUST be</td><td> </td><td class="right">   When a received protocol element is parsed, the recipient MUST be</td><td class="lineno" valign="top"></td></tr>
     233      <tr><td class="lineno" valign="top"></td><td class="left">   able to parse any value of reasonable length that is applicable to</td><td> </td><td class="right">   able to parse any value of reasonable length that is applicable to</td><td class="lineno" valign="top"></td></tr>
     234      <tr><td class="lineno" valign="top"></td><td class="left">   the recipient's role and that matches the grammar defined by the</td><td> </td><td class="right">   the recipient's role and that matches the grammar defined by the</td><td class="lineno" valign="top"></td></tr>
     235      <tr><td class="lineno" valign="top"></td><td class="left">   corresponding ABNF rules.  Note, however, that some received protocol</td><td> </td><td class="right">   corresponding ABNF rules.  Note, however, that some received protocol</td><td class="lineno" valign="top"></td></tr>
     236      <tr><td class="lineno" valign="top"></td><td class="left">   elements might not be parsed.  For example, an intermediary</td><td> </td><td class="right">   elements might not be parsed.  For example, an intermediary</td><td class="lineno" valign="top"></td></tr>
    102237      <tr><td><a name="diff0004" /></td></tr>
    103       <tr><td class="lineno" valign="top"></td><td class="lblock">                 RFC 7232, <span class="delete">June</span> 2014.</td><td> </td><td class="rblock">                 RFC 7232, <span class="insert">May</span> 2014.</td><td class="lineno" valign="top"></td></tr>
    104       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    105       <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>
    106       <tr><td class="lineno" valign="top"></td><td class="left">                 "Hypertext Transfer Protocol (HTTP/1.1): Range</td><td> </td><td class="right">                 "Hypertext Transfer Protocol (HTTP/1.1): Range</td><td class="lineno" valign="top"></td></tr>
     238      <tr><td class="lineno" valign="top"></td><td class="lblock">   forwarding a message might parse a header-field into generic <span class="delete">field-</span></td><td> </td><td class="rblock">   forwarding a message might parse a header-field into generic</td><td class="lineno" valign="top"></td></tr>
     239      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   name</span> and field-value components, but then forward the header field</td><td> </td><td class="rblock">   <span class="insert">field-name</span> and field-value components, but then forward the header</td><td class="lineno" valign="top"></td></tr>
     240      <tr><td class="lineno" valign="top"></td><td class="lblock">   without further parsing inside the field-value.</td><td> </td><td class="rblock">   field without further parsing inside the field-value.</td><td class="lineno" valign="top"></td></tr>
     241      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     242      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP does not have specific length limitations for many of its</td><td> </td><td class="right">   HTTP does not have specific length limitations for many of its</td><td class="lineno" valign="top"></td></tr>
     243      <tr><td class="lineno" valign="top"></td><td class="left">   protocol elements because the lengths that might be appropriate will</td><td> </td><td class="right">   protocol elements because the lengths that might be appropriate will</td><td class="lineno" valign="top"></td></tr>
     244      <tr><td class="lineno" valign="top"></td><td class="left">   vary widely, depending on the deployment context and purpose of the</td><td> </td><td class="right">   vary widely, depending on the deployment context and purpose of the</td><td class="lineno" valign="top"></td></tr>
     245      <tr><td class="lineno" valign="top"></td><td class="left">   implementation.  Hence, interoperability between senders and</td><td> </td><td class="right">   implementation.  Hence, interoperability between senders and</td><td class="lineno" valign="top"></td></tr>
     246      <tr><td class="lineno" valign="top"></td><td class="left">   recipients depends on shared expectations regarding what is a</td><td> </td><td class="right">   recipients depends on shared expectations regarding what is a</td><td class="lineno" valign="top"></td></tr>
     247      <tr><td class="lineno" valign="top"></td><td class="left">   reasonable length for each protocol element.  Furthermore, what is</td><td> </td><td class="right">   reasonable length for each protocol element.  Furthermore, what is</td><td class="lineno" valign="top"></td></tr>
     248      <tr><td class="lineno" valign="top"></td><td class="left">   commonly understood to be a reasonable length for some protocol</td><td> </td><td class="right">   commonly understood to be a reasonable length for some protocol</td><td class="lineno" valign="top"></td></tr>
     249      <tr><td class="lineno" valign="top"></td><td class="left">   elements has changed over the course of the past two decades of HTTP</td><td> </td><td class="right">   elements has changed over the course of the past two decades of HTTP</td><td class="lineno" valign="top"></td></tr>
     250      <tr><td class="lineno" valign="top"></td><td class="left">   use and is expected to continue changing in the future.</td><td> </td><td class="right">   use and is expected to continue changing in the future.</td><td class="lineno" valign="top"></td></tr>
     251      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     252      <tr bgcolor="gray" ><td></td><th><a name="part-l5" /><small>skipping to change at</small><em> page 13, line 25</em></th><th> </th><th><a name="part-r5" /><small>skipping to change at</small><em> page 13, line 30</em></th><td></td></tr>
     253      <tr><td class="lineno" valign="top"></td><td class="left">   generates for those same protocol elements in other messages.  For</td><td> </td><td class="right">   generates for those same protocol elements in other messages.  For</td><td class="lineno" valign="top"></td></tr>
     254      <tr><td class="lineno" valign="top"></td><td class="left">   example, an origin server that publishes very long URI references to</td><td> </td><td class="right">   example, an origin server that publishes very long URI references to</td><td class="lineno" valign="top"></td></tr>
     255      <tr><td class="lineno" valign="top"></td><td class="left">   its own resources needs to be able to parse and process those same</td><td> </td><td class="right">   its own resources needs to be able to parse and process those same</td><td class="lineno" valign="top"></td></tr>
     256      <tr><td class="lineno" valign="top"></td><td class="left">   references when received as a request target.</td><td> </td><td class="right">   references when received as a request target.</td><td class="lineno" valign="top"></td></tr>
     257      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     258      <tr><td class="lineno" valign="top"></td><td class="left">   A recipient MUST interpret a received protocol element according to</td><td> </td><td class="right">   A recipient MUST interpret a received protocol element according to</td><td class="lineno" valign="top"></td></tr>
     259      <tr><td class="lineno" valign="top"></td><td class="left">   the semantics defined for it by this specification, including</td><td> </td><td class="right">   the semantics defined for it by this specification, including</td><td class="lineno" valign="top"></td></tr>
     260      <tr><td class="lineno" valign="top"></td><td class="left">   extensions to this specification, unless the recipient has determined</td><td> </td><td class="right">   extensions to this specification, unless the recipient has determined</td><td class="lineno" valign="top"></td></tr>
     261      <tr><td class="lineno" valign="top"></td><td class="left">   (through experience or configuration) that the sender incorrectly</td><td> </td><td class="right">   (through experience or configuration) that the sender incorrectly</td><td class="lineno" valign="top"></td></tr>
     262      <tr><td class="lineno" valign="top"></td><td class="left">   implements what is implied by those semantics.  For example, an</td><td> </td><td class="right">   implements what is implied by those semantics.  For example, an</td><td class="lineno" valign="top"></td></tr>
    107263      <tr><td><a name="diff0005" /></td></tr>
    108       <tr><td class="lineno" valign="top"></td><td class="lblock">                 Requests", RFC 7233, <span class="delete">June</span> 2014.</td><td> </td><td class="rblock">                 Requests", RFC 7233, <span class="insert">May</span> 2014.</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">   [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>
    111       <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>
     264      <tr><td class="lineno" valign="top"></td><td class="lblock">   origin server might disregard the contents of a received <span class="delete">Accept-</span></td><td> </td><td class="rblock">   origin server might disregard the contents of a received</td><td class="lineno" valign="top"></td></tr>
     265      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   Encoding</span> header field if inspection of the User-Agent header field</td><td> </td><td class="rblock">   <span class="insert">Accept-Encoding</span> header field if inspection of the User-Agent header</td><td class="lineno" valign="top"></td></tr>
     266      <tr><td class="lineno" valign="top"></td><td class="lblock">   indicates a specific implementation version that is known to fail on</td><td> </td><td class="rblock">   field indicates a specific implementation version that is known to</td><td class="lineno" valign="top"></td></tr>
     267      <tr><td class="lineno" valign="top"></td><td class="lblock">   receipt of certain content codings.</td><td> </td><td class="rblock">   fail on receipt of certain content codings.</td><td class="lineno" valign="top"></td></tr>
     268      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     269      <tr><td class="lineno" valign="top"></td><td class="left">   Unless noted otherwise, a recipient MAY attempt to recover a usable</td><td> </td><td class="right">   Unless noted otherwise, a recipient MAY attempt to recover a usable</td><td class="lineno" valign="top"></td></tr>
     270      <tr><td class="lineno" valign="top"></td><td class="left">   protocol element from an invalid construct.  HTTP does not define</td><td> </td><td class="right">   protocol element from an invalid construct.  HTTP does not define</td><td class="lineno" valign="top"></td></tr>
     271      <tr><td class="lineno" valign="top"></td><td class="left">   specific error handling mechanisms except when they have a direct</td><td> </td><td class="right">   specific error handling mechanisms except when they have a direct</td><td class="lineno" valign="top"></td></tr>
     272      <tr><td class="lineno" valign="top"></td><td class="left">   impact on security, since different applications of the protocol</td><td> </td><td class="right">   impact on security, since different applications of the protocol</td><td class="lineno" valign="top"></td></tr>
     273      <tr><td class="lineno" valign="top"></td><td class="left">   require different error handling strategies.  For example, a Web</td><td> </td><td class="right">   require different error handling strategies.  For example, a Web</td><td class="lineno" valign="top"></td></tr>
     274      <tr><td class="lineno" valign="top"></td><td class="left">   browser might wish to transparently recover from a response where the</td><td> </td><td class="right">   browser might wish to transparently recover from a response where the</td><td class="lineno" valign="top"></td></tr>
     275      <tr><td class="lineno" valign="top"></td><td class="left">   Location header field doesn't parse according to the ABNF, whereas a</td><td> </td><td class="right">   Location header field doesn't parse according to the ABNF, whereas a</td><td class="lineno" valign="top"></td></tr>
     276      <tr><td class="lineno" valign="top"></td><td class="left">   systems control client might consider any form of error recovery to</td><td> </td><td class="right">   systems control client might consider any form of error recovery to</td><td class="lineno" valign="top"></td></tr>
     277      <tr><td class="lineno" valign="top"></td><td class="left">   be dangerous.</td><td> </td><td class="right">   be dangerous.</td><td class="lineno" valign="top"></td></tr>
     278      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     279      <tr bgcolor="gray" ><td></td><th><a name="part-l6" /><small>skipping to change at</small><em> page 14, line 45</em></th><th> </th><th><a name="part-r6" /><small>skipping to change at</small><em> page 14, line 50</em></th><td></td></tr>
     280      <tr><td class="lineno" valign="top"></td><td class="left">   version if their defined semantics allow them to be safely ignored by</td><td> </td><td class="right">   version if their defined semantics allow them to be safely ignored by</td><td class="lineno" valign="top"></td></tr>
     281      <tr><td class="lineno" valign="top"></td><td class="left">   recipients that do not recognize them.  Header field extensibility is</td><td> </td><td class="right">   recipients that do not recognize them.  Header field extensibility is</td><td class="lineno" valign="top"></td></tr>
     282      <tr><td class="lineno" valign="top"></td><td class="left">   discussed in Section 3.2.1.</td><td> </td><td class="right">   discussed in Section 3.2.1.</td><td class="lineno" valign="top"></td></tr>
     283      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     284      <tr><td class="lineno" valign="top"></td><td class="left">   Intermediaries that process HTTP messages (i.e., all intermediaries</td><td> </td><td class="right">   Intermediaries that process HTTP messages (i.e., all intermediaries</td><td class="lineno" valign="top"></td></tr>
     285      <tr><td class="lineno" valign="top"></td><td class="left">   other than those acting as tunnels) MUST send their own HTTP-version</td><td> </td><td class="right">   other than those acting as tunnels) MUST send their own HTTP-version</td><td class="lineno" valign="top"></td></tr>
     286      <tr><td class="lineno" valign="top"></td><td class="left">   in forwarded messages.  In other words, they are not allowed to</td><td> </td><td class="right">   in forwarded messages.  In other words, they are not allowed to</td><td class="lineno" valign="top"></td></tr>
     287      <tr><td class="lineno" valign="top"></td><td class="left">   blindly forward the first line of an HTTP message without ensuring</td><td> </td><td class="right">   blindly forward the first line of an HTTP message without ensuring</td><td class="lineno" valign="top"></td></tr>
     288      <tr><td class="lineno" valign="top"></td><td class="left">   that the protocol version in that message matches a version to which</td><td> </td><td class="right">   that the protocol version in that message matches a version to which</td><td class="lineno" valign="top"></td></tr>
     289      <tr><td class="lineno" valign="top"></td><td class="left">   that intermediary is conformant for both the receiving and sending of</td><td> </td><td class="right">   that intermediary is conformant for both the receiving and sending of</td><td class="lineno" valign="top"></td></tr>
    112290      <tr><td><a name="diff0006" /></td></tr>
    113       <tr><td class="lineno" valign="top"></td><td class="lblock">                 RFC 7234, <span class="delete">June</span> 2014.</td><td> </td><td class="rblock">                 RFC 7234, <span class="insert">May</span> 2014.</td><td class="lineno" valign="top"></td></tr>
    114       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    115       <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7235]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext</td><td> </td><td class="right">   [RFC7235]     Fielding, R., Ed. and J. Reschke, Ed., "Hypertext</td><td class="lineno" valign="top"></td></tr>
    116       <tr><td class="lineno" valign="top"></td><td class="left">                 Transfer Protocol (HTTP/1.1): Authentication",</td><td> </td><td class="right">                 Transfer Protocol (HTTP/1.1): Authentication",</td><td class="lineno" valign="top"></td></tr>
     291      <tr><td class="lineno" valign="top"></td><td class="lblock">   messages.  Forwarding an HTTP message without rewriting the <span class="delete">HTTP-</span></td><td> </td><td class="rblock">   messages.  Forwarding an HTTP message without rewriting the</td><td class="lineno" valign="top"></td></tr>
     292      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   version</span> might result in communication errors when downstream</td><td> </td><td class="rblock">   <span class="insert">HTTP-version</span> might result in communication errors when downstream</td><td class="lineno" valign="top"></td></tr>
     293      <tr><td class="lineno" valign="top"></td><td class="left">   recipients use the message sender's version to determine what</td><td> </td><td class="right">   recipients use the message sender's version to determine what</td><td class="lineno" valign="top"></td></tr>
     294      <tr><td class="lineno" valign="top"></td><td class="left">   features are safe to use for later communication with that sender.</td><td> </td><td class="right">   features are safe to use for later communication with that sender.</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">   A client SHOULD send a request version equal to the highest version</td><td> </td><td class="right">   A client SHOULD send a request version equal to the highest version</td><td class="lineno" valign="top"></td></tr>
     297      <tr><td class="lineno" valign="top"></td><td class="left">   to which the client is conformant and whose major version is no</td><td> </td><td class="right">   to which the client is conformant and whose major version is no</td><td class="lineno" valign="top"></td></tr>
     298      <tr><td class="lineno" valign="top"></td><td class="left">   higher than the highest version supported by the server, if this is</td><td> </td><td class="right">   higher than the highest version supported by the server, if this is</td><td class="lineno" valign="top"></td></tr>
     299      <tr><td class="lineno" valign="top"></td><td class="left">   known.  A client MUST NOT send a version to which it is not</td><td> </td><td class="right">   known.  A client MUST NOT send a version to which it is not</td><td class="lineno" valign="top"></td></tr>
     300      <tr><td class="lineno" valign="top"></td><td class="left">   conformant.</td><td> </td><td class="right">   conformant.</td><td class="lineno" valign="top"></td></tr>
     301      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     302      <tr><td class="lineno" valign="top"></td><td class="left">   A client MAY send a lower request version if it is known that the</td><td> </td><td class="right">   A client MAY send a lower request version if it is known that the</td><td class="lineno" valign="top"></td></tr>
     303      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     304      <tr bgcolor="gray" ><td></td><th><a name="part-l7" /><small>skipping to change at</small><em> page 16, line 40</em></th><th> </th><th><a name="part-r7" /><small>skipping to change at</small><em> page 16, line 44</em></th><td></td></tr>
     305      <tr><td class="lineno" valign="top"></td><td class="left">     path-abempty  = &lt;path-abempty, see [RFC3986], Section 3.3&gt;</td><td> </td><td class="right">     path-abempty  = &lt;path-abempty, see [RFC3986], Section 3.3&gt;</td><td class="lineno" valign="top"></td></tr>
     306      <tr><td class="lineno" valign="top"></td><td class="left">     segment       = &lt;segment, see [RFC3986], Section 3.3&gt;</td><td> </td><td class="right">     segment       = &lt;segment, see [RFC3986], Section 3.3&gt;</td><td class="lineno" valign="top"></td></tr>
     307      <tr><td class="lineno" valign="top"></td><td class="left">     query         = &lt;query, see [RFC3986], Section 3.4&gt;</td><td> </td><td class="right">     query         = &lt;query, see [RFC3986], Section 3.4&gt;</td><td class="lineno" valign="top"></td></tr>
     308      <tr><td class="lineno" valign="top"></td><td class="left">     fragment      = &lt;fragment, see [RFC3986], Section 3.5&gt;</td><td> </td><td class="right">     fragment      = &lt;fragment, see [RFC3986], Section 3.5&gt;</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">     absolute-path = 1*( "/" segment )</td><td> </td><td class="right">     absolute-path = 1*( "/" segment )</td><td class="lineno" valign="top"></td></tr>
     311      <tr><td class="lineno" valign="top"></td><td class="left">     partial-URI   = relative-part [ "?" query ]</td><td> </td><td class="right">     partial-URI   = relative-part [ "?" query ]</td><td class="lineno" valign="top"></td></tr>
     312      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     313      <tr><td class="lineno" valign="top"></td><td class="left">   Each protocol element in HTTP that allows a URI reference will</td><td> </td><td class="right">   Each protocol element in HTTP that allows a URI reference will</td><td class="lineno" valign="top"></td></tr>
     314      <tr><td class="lineno" valign="top"></td><td class="left">   indicate in its ABNF production whether the element allows any form</td><td> </td><td class="right">   indicate in its ABNF production whether the element allows any form</td><td class="lineno" valign="top"></td></tr>
    117315      <tr><td><a name="diff0007" /></td></tr>
    118       <tr><td class="lineno" valign="top"></td><td class="lblock">                 RFC 7235, <span class="delete">June</span> 2014.</td><td> </td><td class="rblock">                 RFC 7235, <span class="insert">May</span> 2014.</td><td class="lineno" valign="top"></td></tr>
    119       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    120       <tr><td class="lineno" valign="top"></td><td class="left">   [USASCII]     American National Standards Institute, "Coded Character</td><td> </td><td class="right">   [USASCII]     American National Standards Institute, "Coded Character</td><td class="lineno" valign="top"></td></tr>
    121       <tr><td class="lineno" valign="top"></td><td class="left">                 Set -- 7-bit American Standard Code for Information</td><td> </td><td class="right">                 Set -- 7-bit American Standard Code for Information</td><td class="lineno" valign="top"></td></tr>
    122       <tr><td class="lineno" valign="top"></td><td class="left">                 Interchange", ANSI X3.4, 1986.</td><td> </td><td class="right">                 Interchange", ANSI X3.4, 1986.</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">   [Welch]       Welch, T., "A Technique for High-Performance Data</td><td> </td><td class="right">   [Welch]       Welch, T., "A Technique for High-Performance Data</td><td class="lineno" valign="top"></td></tr>
    125       <tr><td class="lineno" valign="top"></td><td class="left">                 Compression", IEEE Computer 17(6), June 1984.</td><td> </td><td class="right">                 Compression", IEEE Computer 17(6), June 1984.</td><td class="lineno" valign="top"></td></tr>
    126       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
    127       <tr><td class="lineno" valign="top"></td><td class="left">11.2.  Informative References</td><td> </td><td class="right">11.2.  Informative References</td><td class="lineno" valign="top"></td></tr>
    128       <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     316      <tr><td class="lineno" valign="top"></td><td class="lblock">   of reference (URI-reference), only a URI in absolute form <span class="delete">(absolute-</span></td><td> </td><td class="rblock">   of reference (URI-reference), only a URI in absolute form</td><td class="lineno" valign="top"></td></tr>
     317      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   URI),</span> only the path and optional query components, or some</td><td> </td><td class="rblock">   <span class="insert">(absolute-URI),</span> only the path and optional query components, or some</td><td class="lineno" valign="top"></td></tr>
     318      <tr><td class="lineno" valign="top"></td><td class="left">   combination of the above.  Unless otherwise indicated, URI references</td><td> </td><td class="right">   combination of the above.  Unless otherwise indicated, URI references</td><td class="lineno" valign="top"></td></tr>
     319      <tr><td class="lineno" valign="top"></td><td class="left">   are parsed relative to the effective request URI (Section 5.5).</td><td> </td><td class="right">   are parsed relative to the effective request URI (Section 5.5).</td><td class="lineno" valign="top"></td></tr>
     320      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     321      <tr><td class="lineno" valign="top"></td><td class="left">2.7.1.  http URI Scheme</td><td> </td><td class="right">2.7.1.  http URI Scheme</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">   The "http" URI scheme is hereby defined for the purpose of minting</td><td> </td><td class="right">   The "http" URI scheme is hereby defined for the purpose of minting</td><td class="lineno" valign="top"></td></tr>
     324      <tr><td class="lineno" valign="top"></td><td class="left">   identifiers according to their association with the hierarchical</td><td> </td><td class="right">   identifiers according to their association with the hierarchical</td><td class="lineno" valign="top"></td></tr>
     325      <tr><td class="lineno" valign="top"></td><td class="left">   namespace governed by a potential HTTP origin server listening for</td><td> </td><td class="right">   namespace governed by a potential HTTP origin server listening for</td><td class="lineno" valign="top"></td></tr>
     326      <tr><td class="lineno" valign="top"></td><td class="left">   TCP ([RFC0793]) connections on a given port.</td><td> </td><td class="right">   TCP ([RFC0793]) connections on a given port.</td><td class="lineno" valign="top"></td></tr>
     327      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     328      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     329      <tr bgcolor="gray" ><td></td><th><a name="part-l8" /><small>skipping to change at</small><em> page 19, line 20</em></th><th> </th><th><a name="part-r8" /><small>skipping to change at</small><em> page 19, line 29</em></th><td></td></tr>
     330      <tr><td class="lineno" valign="top"></td><td class="left">   algorithm defined in Section 6 of [RFC3986], using the defaults</td><td> </td><td class="right">   algorithm defined in Section 6 of [RFC3986], using the defaults</td><td class="lineno" valign="top"></td></tr>
     331      <tr><td class="lineno" valign="top"></td><td class="left">   described above for each scheme.</td><td> </td><td class="right">   described above for each scheme.</td><td class="lineno" valign="top"></td></tr>
     332      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     333      <tr><td class="lineno" valign="top"></td><td class="left">   If the port is equal to the default port for a scheme, the normal</td><td> </td><td class="right">   If the port is equal to the default port for a scheme, the normal</td><td class="lineno" valign="top"></td></tr>
     334      <tr><td class="lineno" valign="top"></td><td class="left">   form is to omit the port subcomponent.  When not being used in</td><td> </td><td class="right">   form is to omit the port subcomponent.  When not being used in</td><td class="lineno" valign="top"></td></tr>
     335      <tr><td class="lineno" valign="top"></td><td class="left">   absolute form as the request target of an OPTIONS request, an empty</td><td> </td><td class="right">   absolute form as the request target of an OPTIONS request, an empty</td><td class="lineno" valign="top"></td></tr>
     336      <tr><td class="lineno" valign="top"></td><td class="left">   path component is equivalent to an absolute path of "/", so the</td><td> </td><td class="right">   path component is equivalent to an absolute path of "/", so the</td><td class="lineno" valign="top"></td></tr>
     337      <tr><td class="lineno" valign="top"></td><td class="left">   normal form is to provide a path of "/" instead.  The scheme and host</td><td> </td><td class="right">   normal form is to provide a path of "/" instead.  The scheme and host</td><td class="lineno" valign="top"></td></tr>
     338      <tr><td class="lineno" valign="top"></td><td class="left">   are case-insensitive and normally provided in lowercase; all other</td><td> </td><td class="right">   are case-insensitive and normally provided in lowercase; all other</td><td class="lineno" valign="top"></td></tr>
     339      <tr><td class="lineno" valign="top"></td><td class="left">   components are compared in a case-sensitive manner.  Characters other</td><td> </td><td class="right">   components are compared in a case-sensitive manner.  Characters other</td><td class="lineno" valign="top"></td></tr>
     340      <tr><td><a name="diff0008" /></td></tr>
     341      <tr><td class="lineno" valign="top"></td><td class="lblock">   than those in the "reserved" set are equivalent to their <span class="delete">percent-</span></td><td> </td><td class="rblock">   than those in the "reserved" set are equivalent to their</td><td class="lineno" valign="top"></td></tr>
     342      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   encoded</span> octets: the normal form is to not encode them (see Sections</td><td> </td><td class="rblock">   <span class="insert">percent-encoded</span> octets: the normal form is to not encode them (see</td><td class="lineno" valign="top"></td></tr>
     343      <tr><td class="lineno" valign="top"></td><td class="lblock">   2.1 and 2.2 of [RFC3986]).</td><td> </td><td class="rblock">   Sections 2.1 and 2.2 of [RFC3986]).</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">   For example, the following three URIs are equivalent:</td><td> </td><td class="right">   For example, the following three URIs are equivalent:</td><td class="lineno" valign="top"></td></tr>
     346      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     347      <tr><td class="lineno" valign="top"></td><td class="left">      http://example.com:80/~smith/home.html</td><td> </td><td class="right">      http://example.com:80/~smith/home.html</td><td class="lineno" valign="top"></td></tr>
     348      <tr><td class="lineno" valign="top"></td><td class="left">      http://EXAMPLE.com/%7Esmith/home.html</td><td> </td><td class="right">      http://EXAMPLE.com/%7Esmith/home.html</td><td class="lineno" valign="top"></td></tr>
     349      <tr><td class="lineno" valign="top"></td><td class="left">      http://EXAMPLE.com:/%7esmith/home.html</td><td> </td><td class="right">      http://EXAMPLE.com:/%7esmith/home.html</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">3.  Message Format</td><td> </td><td class="right">3.  Message Format</td><td class="lineno" valign="top"></td></tr>
     352      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     353      <tr><td class="lineno" valign="top"></td><td class="left">   All HTTP/1.1 messages consist of a start-line followed by a sequence</td><td> </td><td class="right">   All HTTP/1.1 messages consist of a start-line followed by a sequence</td><td class="lineno" valign="top"></td></tr>
     354      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     355      <tr bgcolor="gray" ><td></td><th><a name="part-l9" /><small>skipping to change at</small><em> page 21, line 39</em></th><th> </th><th><a name="part-r9" /><small>skipping to change at</small><em> page 21, line 47</em></th><td></td></tr>
     356      <tr><td class="lineno" valign="top"></td><td class="left">   references, resulting in those disallowed characters being sent in a</td><td> </td><td class="right">   references, resulting in those disallowed characters being sent in a</td><td class="lineno" valign="top"></td></tr>
     357      <tr><td class="lineno" valign="top"></td><td class="left">   request-target.</td><td> </td><td class="right">   request-target.</td><td class="lineno" valign="top"></td></tr>
     358      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     359      <tr><td class="lineno" valign="top"></td><td class="left">   Recipients of an invalid request-line SHOULD respond with either a</td><td> </td><td class="right">   Recipients of an invalid request-line SHOULD respond with either a</td><td class="lineno" valign="top"></td></tr>
     360      <tr><td class="lineno" valign="top"></td><td class="left">   400 (Bad Request) error or a 301 (Moved Permanently) redirect with</td><td> </td><td class="right">   400 (Bad Request) error or a 301 (Moved Permanently) redirect with</td><td class="lineno" valign="top"></td></tr>
     361      <tr><td class="lineno" valign="top"></td><td class="left">   the request-target properly encoded.  A recipient SHOULD NOT attempt</td><td> </td><td class="right">   the request-target properly encoded.  A recipient SHOULD NOT attempt</td><td class="lineno" valign="top"></td></tr>
     362      <tr><td class="lineno" valign="top"></td><td class="left">   to autocorrect and then process the request without a redirect, since</td><td> </td><td class="right">   to autocorrect and then process the request without a redirect, since</td><td class="lineno" valign="top"></td></tr>
     363      <tr><td class="lineno" valign="top"></td><td class="left">   the invalid request-line might be deliberately crafted to bypass</td><td> </td><td class="right">   the invalid request-line might be deliberately crafted to bypass</td><td class="lineno" valign="top"></td></tr>
     364      <tr><td class="lineno" valign="top"></td><td class="left">   security filters along the request chain.</td><td> </td><td class="right">   security filters along the request chain.</td><td class="lineno" valign="top"></td></tr>
     365      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     366      <tr><td><a name="diff0009" /></td></tr>
     367      <tr><td class="lineno" valign="top"></td><td class="lblock">   HTTP does not place a predefined limit on the length of a <span class="delete">request-</span></td><td> </td><td class="rblock">   HTTP does not place a predefined limit on the length of a</td><td class="lineno" valign="top"></td></tr>
     368      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   line,</span> as described in Section 2.5.  A server that receives a method</td><td> </td><td class="rblock">   <span class="insert">request-line,</span> as described in Section 2.5.  A server that receives a</td><td class="lineno" valign="top"></td></tr>
     369      <tr><td class="lineno" valign="top"></td><td class="lblock">   longer than any that it implements SHOULD respond with a 501 (Not</td><td> </td><td class="rblock">   method longer than any that it implements SHOULD respond with a 501</td><td class="lineno" valign="top"></td></tr>
     370      <tr><td class="lineno" valign="top"></td><td class="lblock">   Implemented) status code.  A server that receives a request-target</td><td> </td><td class="rblock">   (Not Implemented) status code.  A server that receives a</td><td class="lineno" valign="top"></td></tr>
     371      <tr><td class="lineno" valign="top"></td><td class="lblock">   longer than any URI it wishes to parse MUST respond with a 414 (URI</td><td> </td><td class="rblock">   request-target longer than any URI it wishes to parse MUST respond</td><td class="lineno" valign="top"></td></tr>
     372      <tr><td class="lineno" valign="top"></td><td class="lblock">   Too Long) status code (see Section 6.5.12 of [RFC7231]).</td><td> </td><td class="rblock">   with a 414 (URI Too Long) status code (see Section 6.5.12 of</td><td class="lineno" valign="top"></td></tr>
     373      <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock">   [RFC7231]).</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">   Various ad hoc limitations on request-line length are found in</td><td> </td><td class="right">   Various ad hoc limitations on request-line length are found in</td><td class="lineno" valign="top"></td></tr>
     376      <tr><td class="lineno" valign="top"></td><td class="left">   practice.  It is RECOMMENDED that all HTTP senders and recipients</td><td> </td><td class="right">   practice.  It is RECOMMENDED that all HTTP senders and recipients</td><td class="lineno" valign="top"></td></tr>
     377      <tr><td class="lineno" valign="top"></td><td class="left">   support, at a minimum, request-line lengths of 8000 octets.</td><td> </td><td class="right">   support, at a minimum, request-line lengths of 8000 octets.</td><td class="lineno" valign="top"></td></tr>
     378      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     379      <tr><td class="lineno" valign="top"></td><td class="left">3.1.2.  Status Line</td><td> </td><td class="right">3.1.2.  Status Line</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">   The first line of a response message is the status-line, consisting</td><td> </td><td class="right">   The first line of a response message is the status-line, consisting</td><td class="lineno" valign="top"></td></tr>
     382      <tr><td class="lineno" valign="top"></td><td class="left">   of the protocol version, a space (SP), the status code, another</td><td> </td><td class="right">   of the protocol version, a space (SP), the status code, another</td><td class="lineno" valign="top"></td></tr>
     383      <tr><td class="lineno" valign="top"></td><td class="left">   space, a possibly empty textual phrase describing the status code,</td><td> </td><td class="right">   space, a possibly empty textual phrase describing the status code,</td><td class="lineno" valign="top"></td></tr>
     384      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     385      <tr bgcolor="gray" ><td></td><th><a name="part-l10" /><small>skipping to change at</small><em> page 25, line 25</em></th><th> </th><th><a name="part-r10" /><small>skipping to change at</small><em> page 25, line 38</em></th><td></td></tr>
     386      <tr><td class="lineno" valign="top"></td><td class="left">   security vulnerabilities in request routing and response handling.  A</td><td> </td><td class="right">   security vulnerabilities in request routing and response handling.  A</td><td class="lineno" valign="top"></td></tr>
     387      <tr><td class="lineno" valign="top"></td><td class="left">   server MUST reject any received request message that contains</td><td> </td><td class="right">   server MUST reject any received request message that contains</td><td class="lineno" valign="top"></td></tr>
     388      <tr><td class="lineno" valign="top"></td><td class="left">   whitespace between a header field-name and colon with a response code</td><td> </td><td class="right">   whitespace between a header field-name and colon with a response code</td><td class="lineno" valign="top"></td></tr>
     389      <tr><td class="lineno" valign="top"></td><td class="left">   of 400 (Bad Request).  A proxy MUST remove any such whitespace from a</td><td> </td><td class="right">   of 400 (Bad Request).  A proxy MUST remove any such whitespace from a</td><td class="lineno" valign="top"></td></tr>
     390      <tr><td class="lineno" valign="top"></td><td class="left">   response message before forwarding the message downstream.</td><td> </td><td class="right">   response message before forwarding the message downstream.</td><td class="lineno" valign="top"></td></tr>
     391      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     392      <tr><td class="lineno" valign="top"></td><td class="left">   A field value might be preceded and/or followed by optional</td><td> </td><td class="right">   A field value might be preceded and/or followed by optional</td><td class="lineno" valign="top"></td></tr>
     393      <tr><td class="lineno" valign="top"></td><td class="left">   whitespace (OWS); a single SP preceding the field-value is preferred</td><td> </td><td class="right">   whitespace (OWS); a single SP preceding the field-value is preferred</td><td class="lineno" valign="top"></td></tr>
     394      <tr><td class="lineno" valign="top"></td><td class="left">   for consistent readability by humans.  The field value does not</td><td> </td><td class="right">   for consistent readability by humans.  The field value does not</td><td class="lineno" valign="top"></td></tr>
     395      <tr><td class="lineno" valign="top"></td><td class="left">   include any leading or trailing whitespace: OWS occurring before the</td><td> </td><td class="right">   include any leading or trailing whitespace: OWS occurring before the</td><td class="lineno" valign="top"></td></tr>
     396      <tr><td><a name="diff0010" /></td></tr>
     397      <tr><td class="lineno" valign="top"></td><td class="lblock">   first non-whitespace octet of the field value or after the last <span class="delete">non-</span></td><td> </td><td class="rblock">   first non-whitespace octet of the field value or after the last</td><td class="lineno" valign="top"></td></tr>
     398      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   whitespace</span> octet of the field value ought to be excluded by parsers</td><td> </td><td class="rblock">   <span class="insert">non-whitespace</span> octet of the field value ought to be excluded by</td><td class="lineno" valign="top"></td></tr>
     399      <tr><td class="lineno" valign="top"></td><td class="lblock">   when extracting the field value from a header field.</td><td> </td><td class="rblock">   parsers when extracting the field value from a header field.</td><td class="lineno" valign="top"></td></tr>
     400      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     401      <tr><td class="lineno" valign="top"></td><td class="left">   Historically, HTTP header field values could be extended over</td><td> </td><td class="right">   Historically, HTTP header field values could be extended over</td><td class="lineno" valign="top"></td></tr>
     402      <tr><td class="lineno" valign="top"></td><td class="left">   multiple lines by preceding each extra line with at least one space</td><td> </td><td class="right">   multiple lines by preceding each extra line with at least one space</td><td class="lineno" valign="top"></td></tr>
     403      <tr><td class="lineno" valign="top"></td><td class="left">   or horizontal tab (obs-fold).  This specification deprecates such</td><td> </td><td class="right">   or horizontal tab (obs-fold).  This specification deprecates such</td><td class="lineno" valign="top"></td></tr>
     404      <tr><td class="lineno" valign="top"></td><td class="left">   line folding except within the message/http media type</td><td> </td><td class="right">   line folding except within the message/http media type</td><td class="lineno" valign="top"></td></tr>
     405      <tr><td class="lineno" valign="top"></td><td class="left">   (Section 8.3.1).  A sender MUST NOT generate a message that includes</td><td> </td><td class="right">   (Section 8.3.1).  A sender MUST NOT generate a message that includes</td><td class="lineno" valign="top"></td></tr>
     406      <tr><td class="lineno" valign="top"></td><td class="left">   line folding (i.e., that has any field-value that contains a match to</td><td> </td><td class="right">   line folding (i.e., that has any field-value that contains a match to</td><td class="lineno" valign="top"></td></tr>
     407      <tr><td class="lineno" valign="top"></td><td class="left">   the obs-fold rule) unless the message is intended for packaging</td><td> </td><td class="right">   the obs-fold rule) unless the message is intended for packaging</td><td class="lineno" valign="top"></td></tr>
     408      <tr><td class="lineno" valign="top"></td><td class="left">   within the message/http media type.</td><td> </td><td class="right">   within the message/http media type.</td><td class="lineno" valign="top"></td></tr>
     409      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     410      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     411      <tr bgcolor="gray" ><td></td><th><a name="part-l11" /><small>skipping to change at</small><em> page 26, line 6</em></th><th> </th><th><a name="part-r11" /><small>skipping to change at</small><em> page 26, line 21</em></th><td></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">   A proxy or gateway that receives an obs-fold in a response message</td><td> </td><td class="right">   A proxy or gateway that receives an obs-fold in a response message</td><td class="lineno" valign="top"></td></tr>
     414      <tr><td class="lineno" valign="top"></td><td class="left">   that is not within a message/http container MUST either discard the</td><td> </td><td class="right">   that is not within a message/http container MUST either discard the</td><td class="lineno" valign="top"></td></tr>
     415      <tr><td class="lineno" valign="top"></td><td class="left">   message and replace it with a 502 (Bad Gateway) response, preferably</td><td> </td><td class="right">   message and replace it with a 502 (Bad Gateway) response, preferably</td><td class="lineno" valign="top"></td></tr>
     416      <tr><td class="lineno" valign="top"></td><td class="left">   with a representation explaining that unacceptable line folding was</td><td> </td><td class="right">   with a representation explaining that unacceptable line folding was</td><td class="lineno" valign="top"></td></tr>
     417      <tr><td class="lineno" valign="top"></td><td class="left">   received, or replace each received obs-fold with one or more SP</td><td> </td><td class="right">   received, or replace each received obs-fold with one or more SP</td><td class="lineno" valign="top"></td></tr>
     418      <tr><td class="lineno" valign="top"></td><td class="left">   octets prior to interpreting the field value or forwarding the</td><td> </td><td class="right">   octets prior to interpreting the field value or forwarding the</td><td class="lineno" valign="top"></td></tr>
     419      <tr><td class="lineno" valign="top"></td><td class="left">   message downstream.</td><td> </td><td class="right">   message downstream.</td><td class="lineno" valign="top"></td></tr>
     420      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     421      <tr><td class="lineno" valign="top"></td><td class="left">   A user agent that receives an obs-fold in a response message that is</td><td> </td><td class="right">   A user agent that receives an obs-fold in a response message that is</td><td class="lineno" valign="top"></td></tr>
     422      <tr><td><a name="diff0011" /></td></tr>
     423      <tr><td class="lineno" valign="top"></td><td class="lblock">   not within a message/http container MUST replace each received <span class="delete">obs-</span></td><td> </td><td class="rblock">   not within a message/http container MUST replace each received</td><td class="lineno" valign="top"></td></tr>
     424      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   fold</span> with one or more SP octets prior to interpreting the field</td><td> </td><td class="rblock">   <span class="insert">obs-fold</span> with one or more SP octets prior to interpreting the field</td><td class="lineno" valign="top"></td></tr>
     425      <tr><td class="lineno" valign="top"></td><td class="left">   value.</td><td> </td><td class="right">   value.</td><td class="lineno" valign="top"></td></tr>
     426      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     427      <tr><td class="lineno" valign="top"></td><td class="left">   Historically, HTTP has allowed field content with text in the</td><td> </td><td class="right">   Historically, HTTP has allowed field content with text in the</td><td class="lineno" valign="top"></td></tr>
     428      <tr><td class="lineno" valign="top"></td><td class="left">   ISO-8859-1 charset [ISO-8859-1], supporting other charsets only</td><td> </td><td class="right">   ISO-8859-1 charset [ISO-8859-1], supporting other charsets only</td><td class="lineno" valign="top"></td></tr>
     429      <tr><td class="lineno" valign="top"></td><td class="left">   through use of [RFC2047] encoding.  In practice, most HTTP header</td><td> </td><td class="right">   through use of [RFC2047] encoding.  In practice, most HTTP header</td><td class="lineno" valign="top"></td></tr>
     430      <tr><td class="lineno" valign="top"></td><td class="left">   field values use only a subset of the US-ASCII charset [USASCII].</td><td> </td><td class="right">   field values use only a subset of the US-ASCII charset [USASCII].</td><td class="lineno" valign="top"></td></tr>
     431      <tr><td class="lineno" valign="top"></td><td class="left">   Newly defined header fields SHOULD limit their field values to</td><td> </td><td class="right">   Newly defined header fields SHOULD limit their field values to</td><td class="lineno" valign="top"></td></tr>
     432      <tr><td class="lineno" valign="top"></td><td class="left">   US-ASCII octets.  A recipient SHOULD treat other octets in field</td><td> </td><td class="right">   US-ASCII octets.  A recipient SHOULD treat other octets in field</td><td class="lineno" valign="top"></td></tr>
     433      <tr><td class="lineno" valign="top"></td><td class="left">   content (obs-text) as opaque data.</td><td> </td><td class="right">   content (obs-text) as opaque data.</td><td class="lineno" valign="top"></td></tr>
     434      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     435      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     436      <tr bgcolor="gray" ><td></td><th><a name="part-l12" /><small>skipping to change at</small><em> page 27, line 42</em></th><th> </th><th><a name="part-r12" /><small>skipping to change at</small><em> page 28, line 17</em></th><td></td></tr>
     437      <tr><td class="lineno" valign="top"></td><td class="left">   The message body (if any) of an HTTP message is used to carry the</td><td> </td><td class="right">   The message body (if any) of an HTTP message is used to carry the</td><td class="lineno" valign="top"></td></tr>
     438      <tr><td class="lineno" valign="top"></td><td class="left">   payload body of that request or response.  The message body is</td><td> </td><td class="right">   payload body of that request or response.  The message body is</td><td class="lineno" valign="top"></td></tr>
     439      <tr><td class="lineno" valign="top"></td><td class="left">   identical to the payload body unless a transfer coding has been</td><td> </td><td class="right">   identical to the payload body unless a transfer coding has been</td><td class="lineno" valign="top"></td></tr>
     440      <tr><td class="lineno" valign="top"></td><td class="left">   applied, as described in Section 3.3.1.</td><td> </td><td class="right">   applied, as described in Section 3.3.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">     message-body = *OCTET</td><td> </td><td class="right">     message-body = *OCTET</td><td class="lineno" valign="top"></td></tr>
     443      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     444      <tr><td class="lineno" valign="top"></td><td class="left">   The rules for when a message body is allowed in a message differ for</td><td> </td><td class="right">   The rules for when a message body is allowed in a message differ for</td><td class="lineno" valign="top"></td></tr>
     445      <tr><td class="lineno" valign="top"></td><td class="left">   requests and responses.</td><td> </td><td class="right">   requests and responses.</td><td class="lineno" valign="top"></td></tr>
     446      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     447      <tr><td><a name="diff0012" /></td></tr>
     448      <tr><td class="lineno" valign="top"></td><td class="lblock">   The presence of a message body in a request is signaled by a <span class="delete">Content-</span></td><td> </td><td class="rblock">   The presence of a message body in a request is signaled by a</td><td class="lineno" valign="top"></td></tr>
     449      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   Length</span> or Transfer-Encoding header field.  Request message framing is</td><td> </td><td class="rblock">   <span class="insert">Content-Length</span> or Transfer-Encoding header field.  Request message</td><td class="lineno" valign="top"></td></tr>
     450      <tr><td class="lineno" valign="top"></td><td class="lblock">   independent of method semantics, even if the method does not define</td><td> </td><td class="rblock">   framing is independent of method semantics, even if the method does</td><td class="lineno" valign="top"></td></tr>
     451      <tr><td class="lineno" valign="top"></td><td class="lblock">   any use for a message body.</td><td> </td><td class="rblock">   not define any use for a message body.</td><td class="lineno" valign="top"></td></tr>
     452      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     453      <tr><td class="lineno" valign="top"></td><td class="left">   The presence of a message body in a response depends on both the</td><td> </td><td class="right">   The presence of a message body in a response depends on both the</td><td class="lineno" valign="top"></td></tr>
     454      <tr><td class="lineno" valign="top"></td><td class="left">   request method to which it is responding and the response status code</td><td> </td><td class="right">   request method to which it is responding and the response status code</td><td class="lineno" valign="top"></td></tr>
     455      <tr><td class="lineno" valign="top"></td><td class="left">   (Section 3.1.2).  Responses to the HEAD request method (Section 4.3.2</td><td> </td><td class="right">   (Section 3.1.2).  Responses to the HEAD request method (Section 4.3.2</td><td class="lineno" valign="top"></td></tr>
     456      <tr><td class="lineno" valign="top"></td><td class="left">   of [RFC7231]) never include a message body because the associated</td><td> </td><td class="right">   of [RFC7231]) never include a message body because the associated</td><td class="lineno" valign="top"></td></tr>
     457      <tr><td class="lineno" valign="top"></td><td class="left">   response header fields (e.g., Transfer-Encoding, Content-Length,</td><td> </td><td class="right">   response header fields (e.g., Transfer-Encoding, Content-Length,</td><td class="lineno" valign="top"></td></tr>
     458      <tr><td class="lineno" valign="top"></td><td class="left">   etc.), if present, indicate only what their values would have been if</td><td> </td><td class="right">   etc.), if present, indicate only what their values would have been if</td><td class="lineno" valign="top"></td></tr>
     459      <tr><td class="lineno" valign="top"></td><td class="left">   the request method had been GET (Section 4.3.1 of [RFC7231]). 2xx</td><td> </td><td class="right">   the request method had been GET (Section 4.3.1 of [RFC7231]). 2xx</td><td class="lineno" valign="top"></td></tr>
     460      <tr><td class="lineno" valign="top"></td><td class="left">   (Successful) responses to a CONNECT request method (Section 4.3.6 of</td><td> </td><td class="right">   (Successful) responses to a CONNECT request method (Section 4.3.6 of</td><td class="lineno" valign="top"></td></tr>
     461      <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7231]) switch to tunnel mode instead of having a message body.</td><td> </td><td class="right">   [RFC7231]) switch to tunnel mode instead of having a message body.</td><td class="lineno" valign="top"></td></tr>
     462      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     463      <tr bgcolor="gray" ><td></td><th><a name="part-l13" /><small>skipping to change at</small><em> page 30, line 40</em></th><th> </th><th><a name="part-r13" /><small>skipping to change at</small><em> page 31, line 14</em></th><td></td></tr>
     464      <tr><td class="lineno" valign="top"></td><td class="left">   unless its field-value equals the decimal number of octets that would</td><td> </td><td class="right">   unless its field-value equals the decimal number of octets that would</td><td class="lineno" valign="top"></td></tr>
     465      <tr><td class="lineno" valign="top"></td><td class="left">   have been sent in the payload body of a 200 (OK) response to the same</td><td> </td><td class="right">   have been sent in the payload body of a 200 (OK) response to the same</td><td class="lineno" valign="top"></td></tr>
     466      <tr><td class="lineno" valign="top"></td><td class="left">   request.</td><td> </td><td class="right">   request.</td><td class="lineno" valign="top"></td></tr>
     467      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     468      <tr><td class="lineno" valign="top"></td><td class="left">   A server MUST NOT send a Content-Length header field in any response</td><td> </td><td class="right">   A server MUST NOT send a Content-Length header field in any response</td><td class="lineno" valign="top"></td></tr>
     469      <tr><td class="lineno" valign="top"></td><td class="left">   with a status code of 1xx (Informational) or 204 (No Content).  A</td><td> </td><td class="right">   with a status code of 1xx (Informational) or 204 (No Content).  A</td><td class="lineno" valign="top"></td></tr>
     470      <tr><td class="lineno" valign="top"></td><td class="left">   server MUST NOT send a Content-Length header field in any 2xx</td><td> </td><td class="right">   server MUST NOT send a Content-Length header field in any 2xx</td><td class="lineno" valign="top"></td></tr>
     471      <tr><td class="lineno" valign="top"></td><td class="left">   (Successful) response to a CONNECT request (Section 4.3.6 of</td><td> </td><td class="right">   (Successful) response to a CONNECT request (Section 4.3.6 of</td><td class="lineno" valign="top"></td></tr>
     472      <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7231]).</td><td> </td><td class="right">   [RFC7231]).</td><td class="lineno" valign="top"></td></tr>
     473      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     474      <tr><td><a name="diff0013" /></td></tr>
     475      <tr><td class="lineno" valign="top"></td><td class="lblock">   Aside from the cases defined above, in the absence of <span class="delete">Transfer-</span></td><td> </td><td class="rblock">   Aside from the cases defined above, in the absence of</td><td class="lineno" valign="top"></td></tr>
     476      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   Encoding,</span> an origin server SHOULD send a Content-Length header field</td><td> </td><td class="rblock">   <span class="insert">Transfer-Encoding,</span> an origin server SHOULD send a Content-Length</td><td class="lineno" valign="top"></td></tr>
     477      <tr><td class="lineno" valign="top"></td><td class="lblock">   when the payload body size is known prior to sending the complete</td><td> </td><td class="rblock">   header field when the payload body size is known prior to sending the</td><td class="lineno" valign="top"></td></tr>
     478      <tr><td class="lineno" valign="top"></td><td class="lblock">   header section.  This will allow downstream recipients to measure</td><td> </td><td class="rblock">   complete header section.  This will allow downstream recipients to</td><td class="lineno" valign="top"></td></tr>
     479      <tr><td class="lineno" valign="top"></td><td class="lblock">   transfer progress, know when a received message is complete, and</td><td> </td><td class="rblock">   measure transfer progress, know when a received message is complete,</td><td class="lineno" valign="top"></td></tr>
     480      <tr><td class="lineno" valign="top"></td><td class="lblock">   potentially reuse the connection for additional requests.</td><td> </td><td class="rblock">   and potentially reuse the connection for additional requests.</td><td class="lineno" valign="top"></td></tr>
     481      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     482      <tr><td class="lineno" valign="top"></td><td class="left">   Any Content-Length field value greater than or equal to zero is</td><td> </td><td class="right">   Any Content-Length field value greater than or equal to zero is</td><td class="lineno" valign="top"></td></tr>
     483      <tr><td class="lineno" valign="top"></td><td class="left">   valid.  Since there is no predefined limit to the length of a</td><td> </td><td class="right">   valid.  Since there is no predefined limit to the length of a</td><td class="lineno" valign="top"></td></tr>
     484      <tr><td class="lineno" valign="top"></td><td class="left">   payload, a recipient MUST anticipate potentially large decimal</td><td> </td><td class="right">   payload, a recipient MUST anticipate potentially large decimal</td><td class="lineno" valign="top"></td></tr>
     485      <tr><td class="lineno" valign="top"></td><td class="left">   numerals and prevent parsing errors due to integer conversion</td><td> </td><td class="right">   numerals and prevent parsing errors due to integer conversion</td><td class="lineno" valign="top"></td></tr>
     486      <tr><td class="lineno" valign="top"></td><td class="left">   overflows (Section 9.3).</td><td> </td><td class="right">   overflows (Section 9.3).</td><td class="lineno" valign="top"></td></tr>
     487      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     488      <tr><td class="lineno" valign="top"></td><td class="left">   If a message is received that has multiple Content-Length header</td><td> </td><td class="right">   If a message is received that has multiple Content-Length header</td><td class="lineno" valign="top"></td></tr>
     489      <tr><td class="lineno" valign="top"></td><td class="left">   fields with field-values consisting of the same decimal value, or a</td><td> </td><td class="right">   fields with field-values consisting of the same decimal value, or a</td><td class="lineno" valign="top"></td></tr>
     490      <tr><td class="lineno" valign="top"></td><td class="left">   single Content-Length header field with a field value containing a</td><td> </td><td class="right">   single Content-Length header field with a field value containing a</td><td class="lineno" valign="top"></td></tr>
     491      <tr><td class="lineno" valign="top"></td><td class="left">   list of identical decimal values (e.g., "Content-Length: 42, 42"),</td><td> </td><td class="right">   list of identical decimal values (e.g., "Content-Length: 42, 42"),</td><td class="lineno" valign="top"></td></tr>
     492      <tr><td class="lineno" valign="top"></td><td class="left">   indicating that duplicate Content-Length header fields have been</td><td> </td><td class="right">   indicating that duplicate Content-Length header fields have been</td><td class="lineno" valign="top"></td></tr>
     493      <tr><td class="lineno" valign="top"></td><td class="left">   generated or combined by an upstream message processor, then the</td><td> </td><td class="right">   generated or combined by an upstream message processor, then the</td><td class="lineno" valign="top"></td></tr>
     494      <tr><td class="lineno" valign="top"></td><td class="left">   recipient MUST either reject the message as invalid or replace the</td><td> </td><td class="right">   recipient MUST either reject the message as invalid or replace the</td><td class="lineno" valign="top"></td></tr>
     495      <tr><td class="lineno" valign="top"></td><td class="left">   duplicated field-values with a single valid Content-Length field</td><td> </td><td class="right">   duplicated field-values with a single valid Content-Length field</td><td class="lineno" valign="top"></td></tr>
     496      <tr><td class="lineno" valign="top"></td><td class="left">   containing that decimal value prior to determining the message body</td><td> </td><td class="right">   containing that decimal value prior to determining the message body</td><td class="lineno" valign="top"></td></tr>
     497      <tr><td class="lineno" valign="top"></td><td class="left">   length or forwarding the message.</td><td> </td><td class="right">   length or forwarding the message.</td><td class="lineno" valign="top"></td></tr>
     498      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     499      <tr><td class="lineno" valign="top"></td><td class="left">      Note: HTTP's use of Content-Length for message framing differs</td><td> </td><td class="right">      Note: HTTP's use of Content-Length for message framing differs</td><td class="lineno" valign="top"></td></tr>
     500      <tr><td class="lineno" valign="top"></td><td class="left">      significantly from the same field's use in MIME, where it is an</td><td> </td><td class="right">      significantly from the same field's use in MIME, where it is an</td><td class="lineno" valign="top"></td></tr>
     501      <tr><td><a name="diff0014" /></td></tr>
     502      <tr><td class="lineno" valign="top"></td><td class="lblock">      optional field used only within the "message/external-body" <span class="delete">media-</span></td><td> </td><td class="rblock">      optional field used only within the "message/external-body"</td><td class="lineno" valign="top"></td></tr>
     503      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">      type.</span></td><td> </td><td class="rblock">      <span class="insert">media-type.</span></td><td class="lineno" valign="top"></td></tr>
     504      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     505      <tr><td class="lineno" valign="top"></td><td class="left">3.3.3.  Message Body Length</td><td> </td><td class="right">3.3.3.  Message Body Length</td><td class="lineno" valign="top"></td></tr>
     506      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     507      <tr><td class="lineno" valign="top"></td><td class="left">   The length of a message body is determined by one of the following</td><td> </td><td class="right">   The length of a message body is determined by one of the following</td><td class="lineno" valign="top"></td></tr>
     508      <tr><td class="lineno" valign="top"></td><td class="left">   (in order of precedence):</td><td> </td><td class="right">   (in order of precedence):</td><td class="lineno" valign="top"></td></tr>
     509      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     510      <tr><td class="lineno" valign="top"></td><td class="left">   1.  Any response to a HEAD request and any response with a 1xx</td><td> </td><td class="right">   1.  Any response to a HEAD request and any response with a 1xx</td><td class="lineno" valign="top"></td></tr>
     511      <tr><td class="lineno" valign="top"></td><td class="left">       (Informational), 204 (No Content), or 304 (Not Modified) status</td><td> </td><td class="right">       (Informational), 204 (No Content), or 304 (Not Modified) status</td><td class="lineno" valign="top"></td></tr>
     512      <tr><td class="lineno" valign="top"></td><td class="left">       code is always terminated by the first empty line after the</td><td> </td><td class="right">       code is always terminated by the first empty line after the</td><td class="lineno" valign="top"></td></tr>
     513      <tr><td class="lineno" valign="top"></td><td class="left">       header fields, regardless of the header fields present in the</td><td> </td><td class="right">       header fields, regardless of the header fields present in the</td><td class="lineno" valign="top"></td></tr>
     514      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     515      <tr bgcolor="gray" ><td></td><th><a name="part-l14" /><small>skipping to change at</small><em> page 32, line 39</em></th><th> </th><th><a name="part-r14" /><small>skipping to change at</small><em> page 33, line 23</em></th><td></td></tr>
     516      <tr><td class="lineno" valign="top"></td><td class="left">       incomplete and close the connection.</td><td> </td><td class="right">       incomplete and close the connection.</td><td class="lineno" valign="top"></td></tr>
     517      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     518      <tr><td class="lineno" valign="top"></td><td class="left">   6.  If this is a request message and none of the above are true, then</td><td> </td><td class="right">   6.  If this is a request message and none of the above are true, then</td><td class="lineno" valign="top"></td></tr>
     519      <tr><td class="lineno" valign="top"></td><td class="left">       the message body length is zero (no message body is present).</td><td> </td><td class="right">       the message body length is zero (no message body is present).</td><td class="lineno" valign="top"></td></tr>
     520      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     521      <tr><td class="lineno" valign="top"></td><td class="left">   7.  Otherwise, this is a response message without a declared message</td><td> </td><td class="right">   7.  Otherwise, this is a response message without a declared message</td><td class="lineno" valign="top"></td></tr>
     522      <tr><td class="lineno" valign="top"></td><td class="left">       body length, so the message body length is determined by the</td><td> </td><td class="right">       body length, so the message body length is determined by the</td><td class="lineno" valign="top"></td></tr>
     523      <tr><td class="lineno" valign="top"></td><td class="left">       number of octets received prior to the server closing the</td><td> </td><td class="right">       number of octets received prior to the server closing the</td><td class="lineno" valign="top"></td></tr>
     524      <tr><td class="lineno" valign="top"></td><td class="left">       connection.</td><td> </td><td class="right">       connection.</td><td class="lineno" valign="top"></td></tr>
     525      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     526      <tr><td><a name="diff0015" /></td></tr>
     527      <tr><td class="lineno" valign="top"></td><td class="lblock">   Since there is no way to distinguish a successfully completed, <span class="delete">close-</span></td><td> </td><td class="rblock">   Since there is no way to distinguish a successfully completed,</td><td class="lineno" valign="top"></td></tr>
     528      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   delimited</span> message from a partially received message interrupted by</td><td> </td><td class="rblock">   <span class="insert">close-delimited</span> message from a partially received message interrupted</td><td class="lineno" valign="top"></td></tr>
     529      <tr><td class="lineno" valign="top"></td><td class="lblock">   network failure, a server SHOULD generate encoding or <span class="delete">length-</span></td><td> </td><td class="rblock">   by network failure, a server SHOULD generate encoding or</td><td class="lineno" valign="top"></td></tr>
     530      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   delimited</span> messages whenever possible.  The close-delimiting feature</td><td> </td><td class="rblock">   <span class="insert">length-delimited</span> messages whenever possible.  The close-delimiting</td><td class="lineno" valign="top"></td></tr>
     531      <tr><td class="lineno" valign="top"></td><td class="lblock">   exists primarily for backwards compatibility with HTTP/1.0.</td><td> </td><td class="rblock">   feature exists primarily for backwards compatibility with HTTP/1.0.</td><td class="lineno" valign="top"></td></tr>
     532      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     533      <tr><td class="lineno" valign="top"></td><td class="left">   A server MAY reject a request that contains a message body but not a</td><td> </td><td class="right">   A server MAY reject a request that contains a message body but not a</td><td class="lineno" valign="top"></td></tr>
     534      <tr><td class="lineno" valign="top"></td><td class="left">   Content-Length by responding with 411 (Length Required).</td><td> </td><td class="right">   Content-Length by responding with 411 (Length Required).</td><td class="lineno" valign="top"></td></tr>
     535      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     536      <tr><td class="lineno" valign="top"></td><td class="left">   Unless a transfer coding other than chunked has been applied, a</td><td> </td><td class="right">   Unless a transfer coding other than chunked has been applied, a</td><td class="lineno" valign="top"></td></tr>
     537      <tr><td class="lineno" valign="top"></td><td class="left">   client that sends a request containing a message body SHOULD use a</td><td> </td><td class="right">   client that sends a request containing a message body SHOULD use a</td><td class="lineno" valign="top"></td></tr>
     538      <tr><td class="lineno" valign="top"></td><td class="left">   valid Content-Length header field if the message body length is known</td><td> </td><td class="right">   valid Content-Length header field if the message body length is known</td><td class="lineno" valign="top"></td></tr>
     539      <tr><td class="lineno" valign="top"></td><td class="left">   in advance, rather than the chunked transfer coding, since some</td><td> </td><td class="right">   in advance, rather than the chunked transfer coding, since some</td><td class="lineno" valign="top"></td></tr>
     540      <tr><td class="lineno" valign="top"></td><td class="left">   existing services respond to chunked with a 411 (Length Required)</td><td> </td><td class="right">   existing services respond to chunked with a 411 (Length Required)</td><td class="lineno" valign="top"></td></tr>
     541      <tr><td class="lineno" valign="top"></td><td class="left">   status code even though they understand the chunked transfer coding.</td><td> </td><td class="right">   status code even though they understand the chunked transfer coding.</td><td class="lineno" valign="top"></td></tr>
     542      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     543      <tr bgcolor="gray" ><td></td><th><a name="part-l15" /><small>skipping to change at</small><em> page 35, line 18</em></th><th> </th><th><a name="part-r15" /><small>skipping to change at</small><em> page 35, line 48</em></th><td></td></tr>
     544      <tr><td class="lineno" valign="top"></td><td class="left">                        / "gzip" ; Section 4.2.3</td><td> </td><td class="right">                        / "gzip" ; Section 4.2.3</td><td class="lineno" valign="top"></td></tr>
     545      <tr><td class="lineno" valign="top"></td><td class="left">                        / transfer-extension</td><td> </td><td class="right">                        / transfer-extension</td><td class="lineno" valign="top"></td></tr>
     546      <tr><td class="lineno" valign="top"></td><td class="left">     transfer-extension = token *( OWS ";" OWS transfer-parameter )</td><td> </td><td class="right">     transfer-extension = token *( OWS ";" OWS transfer-parameter )</td><td class="lineno" valign="top"></td></tr>
     547      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     548      <tr><td class="lineno" valign="top"></td><td class="left">   Parameters are in the form of a name or name=value pair.</td><td> </td><td class="right">   Parameters are in the form of a name or name=value pair.</td><td class="lineno" valign="top"></td></tr>
     549      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     550      <tr><td class="lineno" valign="top"></td><td class="left">     transfer-parameter = token BWS "=" BWS ( token / quoted-string )</td><td> </td><td class="right">     transfer-parameter = token BWS "=" BWS ( token / quoted-string )</td><td class="lineno" valign="top"></td></tr>
     551      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     552      <tr><td class="lineno" valign="top"></td><td class="left">   All transfer-coding names are case-insensitive and ought to be</td><td> </td><td class="right">   All transfer-coding names are case-insensitive and ought to be</td><td class="lineno" valign="top"></td></tr>
     553      <tr><td class="lineno" valign="top"></td><td class="left">   registered within the HTTP Transfer Coding registry, as defined in</td><td> </td><td class="right">   registered within the HTTP Transfer Coding registry, as defined in</td><td class="lineno" valign="top"></td></tr>
     554      <tr><td><a name="diff0016" /></td></tr>
     555      <tr><td class="lineno" valign="top"></td><td class="lblock">   Section 8.4.  They are used in the TE (Section 4.3) and <span class="delete">Transfer-</span></td><td> </td><td class="rblock">   Section 8.4.  They are used in the TE (Section 4.3) and</td><td class="lineno" valign="top"></td></tr>
     556      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   Encoding</span> (Section 3.3.1) header fields.</td><td> </td><td class="rblock">   <span class="insert">Transfer-Encoding</span> (Section 3.3.1) header fields.</td><td class="lineno" valign="top"></td></tr>
     557      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     558      <tr><td class="lineno" valign="top"></td><td class="left">4.1.  Chunked Transfer Coding</td><td> </td><td class="right">4.1.  Chunked Transfer Coding</td><td class="lineno" valign="top"></td></tr>
     559      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     560      <tr><td class="lineno" valign="top"></td><td class="left">   The chunked transfer coding wraps the payload body in order to</td><td> </td><td class="right">   The chunked transfer coding wraps the payload body in order to</td><td class="lineno" valign="top"></td></tr>
     561      <tr><td class="lineno" valign="top"></td><td class="left">   transfer it as a series of chunks, each with its own size indicator,</td><td> </td><td class="right">   transfer it as a series of chunks, each with its own size indicator,</td><td class="lineno" valign="top"></td></tr>
     562      <tr><td class="lineno" valign="top"></td><td class="left">   followed by an OPTIONAL trailer containing header fields.  Chunked</td><td> </td><td class="right">   followed by an OPTIONAL trailer containing header fields.  Chunked</td><td class="lineno" valign="top"></td></tr>
     563      <tr><td class="lineno" valign="top"></td><td class="left">   enables content streams of unknown size to be transferred as a</td><td> </td><td class="right">   enables content streams of unknown size to be transferred as a</td><td class="lineno" valign="top"></td></tr>
     564      <tr><td class="lineno" valign="top"></td><td class="left">   sequence of length-delimited buffers, which enables the sender to</td><td> </td><td class="right">   sequence of length-delimited buffers, which enables the sender to</td><td class="lineno" valign="top"></td></tr>
     565      <tr><td class="lineno" valign="top"></td><td class="left">   retain connection persistence and the recipient to know when it has</td><td> </td><td class="right">   retain connection persistence and the recipient to know when it has</td><td class="lineno" valign="top"></td></tr>
     566      <tr><td class="lineno" valign="top"></td><td class="left">   received the entire message.</td><td> </td><td class="right">   received the entire message.</td><td class="lineno" valign="top"></td></tr>
     567      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     568      <tr bgcolor="gray" ><td></td><th><a name="part-l16" /><small>skipping to change at</small><em> page 36, line 9</em></th><th> </th><th><a name="part-r16" /><small>skipping to change at</small><em> page 36, line 39</em></th><td></td></tr>
     569      <tr><td class="lineno" valign="top"></td><td class="left">   when a chunk with a chunk-size of zero is received, possibly followed</td><td> </td><td class="right">   when a chunk with a chunk-size of zero is received, possibly followed</td><td class="lineno" valign="top"></td></tr>
     570      <tr><td class="lineno" valign="top"></td><td class="left">   by a trailer, and finally terminated by an empty line.</td><td> </td><td class="right">   by a trailer, and finally terminated by an empty line.</td><td class="lineno" valign="top"></td></tr>
     571      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     572      <tr><td class="lineno" valign="top"></td><td class="left">   A recipient MUST be able to parse and decode the chunked transfer</td><td> </td><td class="right">   A recipient MUST be able to parse and decode the chunked transfer</td><td class="lineno" valign="top"></td></tr>
     573      <tr><td class="lineno" valign="top"></td><td class="left">   coding.</td><td> </td><td class="right">   coding.</td><td class="lineno" valign="top"></td></tr>
     574      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     575      <tr><td class="lineno" valign="top"></td><td class="left">4.1.1.  Chunk Extensions</td><td> </td><td class="right">4.1.1.  Chunk Extensions</td><td class="lineno" valign="top"></td></tr>
     576      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     577      <tr><td class="lineno" valign="top"></td><td class="left">   The chunked encoding allows each chunk to include zero or more chunk</td><td> </td><td class="right">   The chunked encoding allows each chunk to include zero or more chunk</td><td class="lineno" valign="top"></td></tr>
     578      <tr><td class="lineno" valign="top"></td><td class="left">   extensions, immediately following the chunk-size, for the sake of</td><td> </td><td class="right">   extensions, immediately following the chunk-size, for the sake of</td><td class="lineno" valign="top"></td></tr>
     579      <tr><td><a name="diff0017" /></td></tr>
     580      <tr><td class="lineno" valign="top"></td><td class="lblock">   supplying per-chunk metadata (such as a signature or hash), <span class="delete">mid-</span></td><td> </td><td class="rblock">   supplying per-chunk metadata (such as a signature or hash),</td><td class="lineno" valign="top"></td></tr>
     581      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   message</span> control information, or randomization of message body size.</td><td> </td><td class="rblock">   <span class="insert">mid-message</span> control information, or randomization of message body</td><td class="lineno" valign="top"></td></tr>
     582      <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock">   size.</td><td class="lineno" valign="top"></td></tr>
     583      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     584      <tr><td class="lineno" valign="top"></td><td class="left">     chunk-ext      = *( ";" chunk-ext-name [ "=" chunk-ext-val ] )</td><td> </td><td class="right">     chunk-ext      = *( ";" chunk-ext-name [ "=" chunk-ext-val ] )</td><td class="lineno" valign="top"></td></tr>
     585      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     586      <tr><td class="lineno" valign="top"></td><td class="left">     chunk-ext-name = token</td><td> </td><td class="right">     chunk-ext-name = token</td><td class="lineno" valign="top"></td></tr>
     587      <tr><td class="lineno" valign="top"></td><td class="left">     chunk-ext-val  = token / quoted-string</td><td> </td><td class="right">     chunk-ext-val  = token / quoted-string</td><td class="lineno" valign="top"></td></tr>
     588      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     589      <tr><td class="lineno" valign="top"></td><td class="left">   The chunked encoding is specific to each connection and is likely to</td><td> </td><td class="right">   The chunked encoding is specific to each connection and is likely to</td><td class="lineno" valign="top"></td></tr>
     590      <tr><td class="lineno" valign="top"></td><td class="left">   be removed or recoded by each recipient (including intermediaries)</td><td> </td><td class="right">   be removed or recoded by each recipient (including intermediaries)</td><td class="lineno" valign="top"></td></tr>
     591      <tr><td class="lineno" valign="top"></td><td class="left">   before any higher-level application would have a chance to inspect</td><td> </td><td class="right">   before any higher-level application would have a chance to inspect</td><td class="lineno" valign="top"></td></tr>
     592      <tr><td class="lineno" valign="top"></td><td class="left">   the extensions.  Hence, use of chunk extensions is generally limited</td><td> </td><td class="right">   the extensions.  Hence, use of chunk extensions is generally limited</td><td class="lineno" valign="top"></td></tr>
     593      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     594      <tr bgcolor="gray" ><td></td><th><a name="part-l17" /><small>skipping to change at</small><em> page 40, line 7</em></th><th> </th><th><a name="part-r17" /><small>skipping to change at</small><em> page 40, line 41</em></th><td></td></tr>
     595      <tr><td class="lineno" valign="top"></td><td class="left">5.  Message Routing</td><td> </td><td class="right">5.  Message Routing</td><td class="lineno" valign="top"></td></tr>
     596      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     597      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP request message routing is determined by each client based on</td><td> </td><td class="right">   HTTP request message routing is determined by each client based on</td><td class="lineno" valign="top"></td></tr>
     598      <tr><td class="lineno" valign="top"></td><td class="left">   the target resource, the client's proxy configuration, and</td><td> </td><td class="right">   the target resource, the client's proxy configuration, and</td><td class="lineno" valign="top"></td></tr>
     599      <tr><td class="lineno" valign="top"></td><td class="left">   establishment or reuse of an inbound connection.  The corresponding</td><td> </td><td class="right">   establishment or reuse of an inbound connection.  The corresponding</td><td class="lineno" valign="top"></td></tr>
     600      <tr><td class="lineno" valign="top"></td><td class="left">   response routing follows the same connection chain back to the</td><td> </td><td class="right">   response routing follows the same connection chain back to the</td><td class="lineno" valign="top"></td></tr>
     601      <tr><td class="lineno" valign="top"></td><td class="left">   client.</td><td> </td><td class="right">   client.</td><td class="lineno" valign="top"></td></tr>
     602      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     603      <tr><td class="lineno" valign="top"></td><td class="left">5.1.  Identifying a Target Resource</td><td> </td><td class="right">5.1.  Identifying a Target Resource</td><td class="lineno" valign="top"></td></tr>
     604      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     605      <tr><td><a name="diff0018" /></td></tr>
     606      <tr><td class="lineno" valign="top"></td><td class="lblock">   HTTP is used in a wide variety of applications, ranging from <span class="delete">general-</span></td><td> </td><td class="rblock">   HTTP is used in a wide variety of applications, ranging from</td><td class="lineno" valign="top"></td></tr>
     607      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   purpose</span> computers to home appliances.  In some cases, communication</td><td> </td><td class="rblock">   <span class="insert">general-purpose</span> computers to home appliances.  In some cases,</td><td class="lineno" valign="top"></td></tr>
     608      <tr><td class="lineno" valign="top"></td><td class="lblock">   options are hard-coded in a client's configuration.  However, most</td><td> </td><td class="rblock">   communication options are hard-coded in a client's configuration.</td><td class="lineno" valign="top"></td></tr>
     609      <tr><td class="lineno" valign="top"></td><td class="lblock">   HTTP clients rely on the same resource identification mechanism and</td><td> </td><td class="rblock">   However, most HTTP clients rely on the same resource identification</td><td class="lineno" valign="top"></td></tr>
     610      <tr><td class="lineno" valign="top"></td><td class="lblock">   configuration techniques as general-purpose Web browsers.</td><td> </td><td class="rblock">   mechanism and configuration techniques as general-purpose Web</td><td class="lineno" valign="top"></td></tr>
     611      <tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock">   browsers.</td><td class="lineno" valign="top"></td></tr>
     612      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     613      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP communication is initiated by a user agent for some purpose.</td><td> </td><td class="right">   HTTP communication is initiated by a user agent for some purpose.</td><td class="lineno" valign="top"></td></tr>
     614      <tr><td class="lineno" valign="top"></td><td class="left">   The purpose is a combination of request semantics, which are defined</td><td> </td><td class="right">   The purpose is a combination of request semantics, which are defined</td><td class="lineno" valign="top"></td></tr>
     615      <tr><td class="lineno" valign="top"></td><td class="left">   in [RFC7231], and a target resource upon which to apply those</td><td> </td><td class="right">   in [RFC7231], and a target resource upon which to apply those</td><td class="lineno" valign="top"></td></tr>
     616      <tr><td class="lineno" valign="top"></td><td class="left">   semantics.  A URI reference (Section 2.7) is typically used as an</td><td> </td><td class="right">   semantics.  A URI reference (Section 2.7) is typically used as an</td><td class="lineno" valign="top"></td></tr>
     617      <tr><td class="lineno" valign="top"></td><td class="left">   identifier for the "target resource", which a user agent would</td><td> </td><td class="right">   identifier for the "target resource", which a user agent would</td><td class="lineno" valign="top"></td></tr>
     618      <tr><td class="lineno" valign="top"></td><td class="left">   resolve to its absolute form in order to obtain the "target URI".</td><td> </td><td class="right">   resolve to its absolute form in order to obtain the "target URI".</td><td class="lineno" valign="top"></td></tr>
     619      <tr><td class="lineno" valign="top"></td><td class="left">   The target URI excludes the reference's fragment component, if any,</td><td> </td><td class="right">   The target URI excludes the reference's fragment component, if any,</td><td class="lineno" valign="top"></td></tr>
     620      <tr><td class="lineno" valign="top"></td><td class="left">   since fragment identifiers are reserved for client-side processing</td><td> </td><td class="right">   since fragment identifiers are reserved for client-side processing</td><td class="lineno" valign="top"></td></tr>
     621      <tr><td class="lineno" valign="top"></td><td class="left">   ([RFC3986], Section 3.5).</td><td> </td><td class="right">   ([RFC3986], Section 3.5).</td><td class="lineno" valign="top"></td></tr>
     622      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     623      <tr bgcolor="gray" ><td></td><th><a name="part-l18" /><small>skipping to change at</small><em> page 43, line 48</em></th><th> </th><th><a name="part-r18" /><small>skipping to change at</small><em> page 44, line 37</em></th><td></td></tr>
     624      <tr><td class="lineno" valign="top"></td><td class="left">   &lt;http://www.example.org/pub/WWW/&gt; would begin with:</td><td> </td><td class="right">   &lt;http://www.example.org/pub/WWW/&gt; would begin with:</td><td class="lineno" valign="top"></td></tr>
     625      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     626      <tr><td class="lineno" valign="top"></td><td class="left">     GET /pub/WWW/ HTTP/1.1</td><td> </td><td class="right">     GET /pub/WWW/ HTTP/1.1</td><td class="lineno" valign="top"></td></tr>
     627      <tr><td class="lineno" valign="top"></td><td class="left">     Host: www.example.org</td><td> </td><td class="right">     Host: www.example.org</td><td class="lineno" valign="top"></td></tr>
     628      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     629      <tr><td class="lineno" valign="top"></td><td class="left">   A client MUST send a Host header field in an HTTP/1.1 request even if</td><td> </td><td class="right">   A client MUST send a Host header field in an HTTP/1.1 request even if</td><td class="lineno" valign="top"></td></tr>
     630      <tr><td class="lineno" valign="top"></td><td class="left">   the request-target is in the absolute-form, since this allows the</td><td> </td><td class="right">   the request-target is in the absolute-form, since this allows the</td><td class="lineno" valign="top"></td></tr>
     631      <tr><td class="lineno" valign="top"></td><td class="left">   Host information to be forwarded through ancient HTTP/1.0 proxies</td><td> </td><td class="right">   Host information to be forwarded through ancient HTTP/1.0 proxies</td><td class="lineno" valign="top"></td></tr>
     632      <tr><td class="lineno" valign="top"></td><td class="left">   that might not have implemented Host.</td><td> </td><td class="right">   that might not have implemented Host.</td><td class="lineno" valign="top"></td></tr>
     633      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     634      <tr><td><a name="diff0019" /></td></tr>
     635      <tr><td class="lineno" valign="top"></td><td class="lblock">   When a proxy receives a request with an absolute-form of <span class="delete">request-</span></td><td> </td><td class="rblock">   When a proxy receives a request with an absolute-form of</td><td class="lineno" valign="top"></td></tr>
     636      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   target,</span> the proxy MUST ignore the received Host header field (if any)</td><td> </td><td class="rblock">   <span class="insert">request-target,</span> the proxy MUST ignore the received Host header field</td><td class="lineno" valign="top"></td></tr>
     637      <tr><td class="lineno" valign="top"></td><td class="lblock">   and instead replace it with the host information of the <span class="delete">request-</span></td><td> </td><td class="rblock">   (if any) and instead replace it with the host information of the</td><td class="lineno" valign="top"></td></tr>
     638      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   target.</span>  A proxy that forwards such a request MUST generate a new</td><td> </td><td class="rblock">   <span class="insert">request-target.</span>  A proxy that forwards such a request MUST generate a</td><td class="lineno" valign="top"></td></tr>
     639      <tr><td class="lineno" valign="top"></td><td class="lblock">   Host field-value based on the received request-target rather than</td><td> </td><td class="rblock">   new Host field-value based on the received request-target rather than</td><td class="lineno" valign="top"></td></tr>
     640      <tr><td class="lineno" valign="top"></td><td class="left">   forward the received Host field-value.</td><td> </td><td class="right">   forward the received Host field-value.</td><td class="lineno" valign="top"></td></tr>
     641      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     642      <tr><td class="lineno" valign="top"></td><td class="left">   Since the Host header field acts as an application-level routing</td><td> </td><td class="right">   Since the Host header field acts as an application-level routing</td><td class="lineno" valign="top"></td></tr>
     643      <tr><td class="lineno" valign="top"></td><td class="left">   mechanism, it is a frequent target for malware seeking to poison a</td><td> </td><td class="right">   mechanism, it is a frequent target for malware seeking to poison a</td><td class="lineno" valign="top"></td></tr>
     644      <tr><td class="lineno" valign="top"></td><td class="left">   shared cache or redirect a request to an unintended server.  An</td><td> </td><td class="right">   shared cache or redirect a request to an unintended server.  An</td><td class="lineno" valign="top"></td></tr>
     645      <tr><td class="lineno" valign="top"></td><td class="left">   interception proxy is particularly vulnerable if it relies on the</td><td> </td><td class="right">   interception proxy is particularly vulnerable if it relies on the</td><td class="lineno" valign="top"></td></tr>
     646      <tr><td class="lineno" valign="top"></td><td class="left">   Host field-value for redirecting requests to internal servers, or for</td><td> </td><td class="right">   Host field-value for redirecting requests to internal servers, or for</td><td class="lineno" valign="top"></td></tr>
     647      <tr><td class="lineno" valign="top"></td><td class="left">   use as a cache key in a shared cache, without first verifying that</td><td> </td><td class="right">   use as a cache key in a shared cache, without first verifying that</td><td class="lineno" valign="top"></td></tr>
     648      <tr><td class="lineno" valign="top"></td><td class="left">   the intercepted connection is targeting a valid IP address for that</td><td> </td><td class="right">   the intercepted connection is targeting a valid IP address for that</td><td class="lineno" valign="top"></td></tr>
     649      <tr><td class="lineno" valign="top"></td><td class="left">   host.</td><td> </td><td class="right">   host.</td><td class="lineno" valign="top"></td></tr>
     650      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     651      <tr bgcolor="gray" ><td></td><th><a name="part-l19" /><small>skipping to change at</small><em> page 46, line 18</em></th><th> </th><th><a name="part-r19" /><small>skipping to change at</small><em> page 47, line 8</em></th><td></td></tr>
     652      <tr><td class="lineno" valign="top"></td><td class="left">   request message with its corresponding one or more response messages.</td><td> </td><td class="right">   request message with its corresponding one or more response messages.</td><td class="lineno" valign="top"></td></tr>
     653      <tr><td class="lineno" valign="top"></td><td class="left">   Hence, it relies on the order of response arrival to correspond</td><td> </td><td class="right">   Hence, it relies on the order of response arrival to correspond</td><td class="lineno" valign="top"></td></tr>
     654      <tr><td class="lineno" valign="top"></td><td class="left">   exactly to the order in which requests are made on the same</td><td> </td><td class="right">   exactly to the order in which requests are made on the same</td><td class="lineno" valign="top"></td></tr>
     655      <tr><td class="lineno" valign="top"></td><td class="left">   connection.  More than one response message per request only occurs</td><td> </td><td class="right">   connection.  More than one response message per request only occurs</td><td class="lineno" valign="top"></td></tr>
     656      <tr><td class="lineno" valign="top"></td><td class="left">   when one or more informational responses (1xx, see Section 6.2 of</td><td> </td><td class="right">   when one or more informational responses (1xx, see Section 6.2 of</td><td class="lineno" valign="top"></td></tr>
     657      <tr><td class="lineno" valign="top"></td><td class="left">   [RFC7231]) precede a final response to the same request.</td><td> </td><td class="right">   [RFC7231]) precede a final response to the same request.</td><td class="lineno" valign="top"></td></tr>
     658      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     659      <tr><td class="lineno" valign="top"></td><td class="left">   A client that has more than one outstanding request on a connection</td><td> </td><td class="right">   A client that has more than one outstanding request on a connection</td><td class="lineno" valign="top"></td></tr>
     660      <tr><td class="lineno" valign="top"></td><td class="left">   MUST maintain a list of outstanding requests in the order sent and</td><td> </td><td class="right">   MUST maintain a list of outstanding requests in the order sent and</td><td class="lineno" valign="top"></td></tr>
     661      <tr><td class="lineno" valign="top"></td><td class="left">   MUST associate each received response message on that connection to</td><td> </td><td class="right">   MUST associate each received response message on that connection to</td><td class="lineno" valign="top"></td></tr>
     662      <tr><td><a name="diff0020" /></td></tr>
     663      <tr><td class="lineno" valign="top"></td><td class="lblock">   the highest ordered request that has not yet received a final <span class="delete">(non-</span></td><td> </td><td class="rblock">   the highest ordered request that has not yet received a final</td><td class="lineno" valign="top"></td></tr>
     664      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   1xx)</span> response.</td><td> </td><td class="rblock">   <span class="insert">(non-1xx)</span> response.</td><td class="lineno" valign="top"></td></tr>
     665      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     666      <tr><td class="lineno" valign="top"></td><td class="left">5.7.  Message Forwarding</td><td> </td><td class="right">5.7.  Message Forwarding</td><td class="lineno" valign="top"></td></tr>
     667      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     668      <tr><td class="lineno" valign="top"></td><td class="left">   As described in Section 2.3, intermediaries can serve a variety of</td><td> </td><td class="right">   As described in Section 2.3, intermediaries can serve a variety of</td><td class="lineno" valign="top"></td></tr>
     669      <tr><td class="lineno" valign="top"></td><td class="left">   roles in the processing of HTTP requests and responses.  Some</td><td> </td><td class="right">   roles in the processing of HTTP requests and responses.  Some</td><td class="lineno" valign="top"></td></tr>
     670      <tr><td class="lineno" valign="top"></td><td class="left">   intermediaries are used to improve performance or availability.</td><td> </td><td class="right">   intermediaries are used to improve performance or availability.</td><td class="lineno" valign="top"></td></tr>
     671      <tr><td class="lineno" valign="top"></td><td class="left">   Others are used for access control or to filter content.  Since an</td><td> </td><td class="right">   Others are used for access control or to filter content.  Since an</td><td class="lineno" valign="top"></td></tr>
     672      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP stream has characteristics similar to a pipe-and-filter</td><td> </td><td class="right">   HTTP stream has characteristics similar to a pipe-and-filter</td><td class="lineno" valign="top"></td></tr>
     673      <tr><td class="lineno" valign="top"></td><td class="left">   architecture, there are no inherent limits to the extent an</td><td> </td><td class="right">   architecture, there are no inherent limits to the extent an</td><td class="lineno" valign="top"></td></tr>
     674      <tr><td class="lineno" valign="top"></td><td class="left">   intermediary can enhance (or interfere) with either direction of the</td><td> </td><td class="right">   intermediary can enhance (or interfere) with either direction of the</td><td class="lineno" valign="top"></td></tr>
     675      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     676      <tr bgcolor="gray" ><td></td><th><a name="part-l20" /><small>skipping to change at</small><em> page 52, line 50</em></th><th> </th><th><a name="part-r20" /><small>skipping to change at</small><em> page 54, line 8</em></th><td></td></tr>
     677      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     678      <tr><td class="lineno" valign="top"></td><td class="left">6.3.1.  Retrying Requests</td><td> </td><td class="right">6.3.1.  Retrying Requests</td><td class="lineno" valign="top"></td></tr>
     679      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     680      <tr><td class="lineno" valign="top"></td><td class="left">   Connections can be closed at any time, with or without intention.</td><td> </td><td class="right">   Connections can be closed at any time, with or without intention.</td><td class="lineno" valign="top"></td></tr>
     681      <tr><td class="lineno" valign="top"></td><td class="left">   Implementations ought to anticipate the need to recover from</td><td> </td><td class="right">   Implementations ought to anticipate the need to recover from</td><td class="lineno" valign="top"></td></tr>
     682      <tr><td class="lineno" valign="top"></td><td class="left">   asynchronous close events.</td><td> </td><td class="right">   asynchronous close events.</td><td class="lineno" valign="top"></td></tr>
     683      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     684      <tr><td class="lineno" valign="top"></td><td class="left">   When an inbound connection is closed prematurely, a client MAY open a</td><td> </td><td class="right">   When an inbound connection is closed prematurely, a client MAY open a</td><td class="lineno" valign="top"></td></tr>
     685      <tr><td class="lineno" valign="top"></td><td class="left">   new connection and automatically retransmit an aborted sequence of</td><td> </td><td class="right">   new connection and automatically retransmit an aborted sequence of</td><td class="lineno" valign="top"></td></tr>
     686      <tr><td class="lineno" valign="top"></td><td class="left">   requests if all of those requests have idempotent methods (Section</td><td> </td><td class="right">   requests if all of those requests have idempotent methods (Section</td><td class="lineno" valign="top"></td></tr>
     687      <tr><td><a name="diff0021" /></td></tr>
     688      <tr><td class="lineno" valign="top"></td><td class="lblock">   4.2.2 of [RFC7231]).  A proxy MUST NOT automatically retry <span class="delete">non-</span></td><td> </td><td class="rblock">   4.2.2 of [RFC7231]).  A proxy MUST NOT automatically retry</td><td class="lineno" valign="top"></td></tr>
     689      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   idempotent</span> requests.</td><td> </td><td class="rblock">   <span class="insert">non-idempotent</span> requests.</td><td class="lineno" valign="top"></td></tr>
     690      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     691      <tr><td class="lineno" valign="top"></td><td class="left">   A user agent MUST NOT automatically retry a request with a non-</td><td> </td><td class="right">   A user agent MUST NOT automatically retry a request with a non-</td><td class="lineno" valign="top"></td></tr>
     692      <tr><td class="lineno" valign="top"></td><td class="left">   idempotent method unless it has some means to know that the request</td><td> </td><td class="right">   idempotent method unless it has some means to know that the request</td><td class="lineno" valign="top"></td></tr>
     693      <tr><td class="lineno" valign="top"></td><td class="left">   semantics are actually idempotent, regardless of the method, or some</td><td> </td><td class="right">   semantics are actually idempotent, regardless of the method, or some</td><td class="lineno" valign="top"></td></tr>
     694      <tr><td class="lineno" valign="top"></td><td class="left">   means to detect that the original request was never applied.  For</td><td> </td><td class="right">   means to detect that the original request was never applied.  For</td><td class="lineno" valign="top"></td></tr>
     695      <tr><td class="lineno" valign="top"></td><td class="left">   example, a user agent that knows (through design or configuration)</td><td> </td><td class="right">   example, a user agent that knows (through design or configuration)</td><td class="lineno" valign="top"></td></tr>
     696      <tr><td class="lineno" valign="top"></td><td class="left">   that a POST request to a given resource is safe can repeat that</td><td> </td><td class="right">   that a POST request to a given resource is safe can repeat that</td><td class="lineno" valign="top"></td></tr>
     697      <tr><td class="lineno" valign="top"></td><td class="left">   request automatically.  Likewise, a user agent designed specifically</td><td> </td><td class="right">   request automatically.  Likewise, a user agent designed specifically</td><td class="lineno" valign="top"></td></tr>
     698      <tr><td class="lineno" valign="top"></td><td class="left">   to operate on a version control repository might be able to recover</td><td> </td><td class="right">   to operate on a version control repository might be able to recover</td><td class="lineno" valign="top"></td></tr>
     699      <tr><td class="lineno" valign="top"></td><td class="left">   from partial failure conditions by checking the target resource</td><td> </td><td class="right">   from partial failure conditions by checking the target resource</td><td class="lineno" valign="top"></td></tr>
     700      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     701      <tr bgcolor="gray" ><td></td><th><a name="part-l21" /><small>skipping to change at</small><em> page 54, line 21</em></th><th> </th><th><a name="part-r21" /><small>skipping to change at</small><em> page 55, line 28</em></th><td></td></tr>
     702      <tr><td class="lineno" valign="top"></td><td class="left">   A client ought to limit the number of simultaneous open connections</td><td> </td><td class="right">   A client ought to limit the number of simultaneous open connections</td><td class="lineno" valign="top"></td></tr>
     703      <tr><td class="lineno" valign="top"></td><td class="left">   that it maintains to a given server.</td><td> </td><td class="right">   that it maintains to a given server.</td><td class="lineno" valign="top"></td></tr>
     704      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     705      <tr><td class="lineno" valign="top"></td><td class="left">   Previous revisions of HTTP gave a specific number of connections as a</td><td> </td><td class="right">   Previous revisions of HTTP gave a specific number of connections as a</td><td class="lineno" valign="top"></td></tr>
     706      <tr><td class="lineno" valign="top"></td><td class="left">   ceiling, but this was found to be impractical for many applications.</td><td> </td><td class="right">   ceiling, but this was found to be impractical for many applications.</td><td class="lineno" valign="top"></td></tr>
     707      <tr><td class="lineno" valign="top"></td><td class="left">   As a result, this specification does not mandate a particular maximum</td><td> </td><td class="right">   As a result, this specification does not mandate a particular maximum</td><td class="lineno" valign="top"></td></tr>
     708      <tr><td class="lineno" valign="top"></td><td class="left">   number of connections but, instead, encourages clients to be</td><td> </td><td class="right">   number of connections but, instead, encourages clients to be</td><td class="lineno" valign="top"></td></tr>
     709      <tr><td class="lineno" valign="top"></td><td class="left">   conservative when opening multiple connections.</td><td> </td><td class="right">   conservative when opening multiple connections.</td><td class="lineno" valign="top"></td></tr>
     710      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     711      <tr><td class="lineno" valign="top"></td><td class="left">   Multiple connections are typically used to avoid the "head-of-line</td><td> </td><td class="right">   Multiple connections are typically used to avoid the "head-of-line</td><td class="lineno" valign="top"></td></tr>
     712      <tr><td><a name="diff0022" /></td></tr>
     713      <tr><td class="lineno" valign="top"></td><td class="lblock">   blocking" problem, wherein a request that takes significant <span class="delete">server-</span></td><td> </td><td class="rblock">   blocking" problem, wherein a request that takes significant</td><td class="lineno" valign="top"></td></tr>
     714      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   side</span> processing and/or has a large payload blocks subsequent requests</td><td> </td><td class="rblock">   <span class="insert">server-side</span> processing and/or has a large payload blocks subsequent</td><td class="lineno" valign="top"></td></tr>
     715      <tr><td class="lineno" valign="top"></td><td class="lblock">   on the same connection.  However, each connection consumes server</td><td> </td><td class="rblock">   requests on the same connection.  However, each connection consumes</td><td class="lineno" valign="top"></td></tr>
     716      <tr><td class="lineno" valign="top"></td><td class="lblock">   resources.  Furthermore, using multiple connections can cause</td><td> </td><td class="rblock">   server resources.  Furthermore, using multiple connections can cause</td><td class="lineno" valign="top"></td></tr>
     717      <tr><td class="lineno" valign="top"></td><td class="left">   undesirable side effects in congested networks.</td><td> </td><td class="right">   undesirable side effects in congested networks.</td><td class="lineno" valign="top"></td></tr>
     718      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     719      <tr><td class="lineno" valign="top"></td><td class="left">   Note that a server might reject traffic that it deems abusive or</td><td> </td><td class="right">   Note that a server might reject traffic that it deems abusive or</td><td class="lineno" valign="top"></td></tr>
     720      <tr><td class="lineno" valign="top"></td><td class="left">   characteristic of a denial-of-service attack, such as an excessive</td><td> </td><td class="right">   characteristic of a denial-of-service attack, such as an excessive</td><td class="lineno" valign="top"></td></tr>
     721      <tr><td class="lineno" valign="top"></td><td class="left">   number of open connections from a single client.</td><td> </td><td class="right">   number of open connections from a single client.</td><td class="lineno" valign="top"></td></tr>
     722      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     723      <tr><td class="lineno" valign="top"></td><td class="left">6.5.  Failures and Timeouts</td><td> </td><td class="right">6.5.  Failures and Timeouts</td><td class="lineno" valign="top"></td></tr>
     724      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     725      <tr><td class="lineno" valign="top"></td><td class="left">   Servers will usually have some timeout value beyond which they will</td><td> </td><td class="right">   Servers will usually have some timeout value beyond which they will</td><td class="lineno" valign="top"></td></tr>
     726      <tr><td class="lineno" valign="top"></td><td class="left">   no longer maintain an inactive connection.  Proxy servers might make</td><td> </td><td class="right">   no longer maintain an inactive connection.  Proxy servers might make</td><td class="lineno" valign="top"></td></tr>
     727      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     728      <tr bgcolor="gray" ><td></td><th><a name="part-l22" /><small>skipping to change at</small><em> page 58, line 32</em></th><th> </th><th><a name="part-r22" /><small>skipping to change at</small><em> page 59, line 48</em></th><td></td></tr>
     729      <tr><td class="lineno" valign="top"></td><td class="left">   the family of Hypertext Transfer Protocols, as defined by the HTTP</td><td> </td><td class="right">   the family of Hypertext Transfer Protocols, as defined by the HTTP</td><td class="lineno" valign="top"></td></tr>
     730      <tr><td class="lineno" valign="top"></td><td class="left">   version rules of Section 2.6 and future updates to this</td><td> </td><td class="right">   version rules of Section 2.6 and future updates to this</td><td class="lineno" valign="top"></td></tr>
     731      <tr><td class="lineno" valign="top"></td><td class="left">   specification.  Additional tokens ought to be registered with IANA</td><td> </td><td class="right">   specification.  Additional tokens ought to be registered with IANA</td><td class="lineno" valign="top"></td></tr>
     732      <tr><td class="lineno" valign="top"></td><td class="left">   using the registration procedure defined in Section 8.6.</td><td> </td><td class="right">   using the registration procedure defined in Section 8.6.</td><td class="lineno" valign="top"></td></tr>
     733      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     734      <tr><td class="lineno" valign="top"></td><td class="left">7.  ABNF List Extension: #rule</td><td> </td><td class="right">7.  ABNF List Extension: #rule</td><td class="lineno" valign="top"></td></tr>
     735      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     736      <tr><td class="lineno" valign="top"></td><td class="left">   A #rule extension to the ABNF rules of [RFC5234] is used to improve</td><td> </td><td class="right">   A #rule extension to the ABNF rules of [RFC5234] is used to improve</td><td class="lineno" valign="top"></td></tr>
     737      <tr><td class="lineno" valign="top"></td><td class="left">   readability in the definitions of some header field values.</td><td> </td><td class="right">   readability in the definitions of some header field values.</td><td class="lineno" valign="top"></td></tr>
     738      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     739      <tr><td><a name="diff0023" /></td></tr>
     740      <tr><td class="lineno" valign="top"></td><td class="lblock">   A construct "#" is defined, similar to "*", for defining <span class="delete">comma-</span></td><td> </td><td class="rblock">   A construct "#" is defined, similar to "*", for defining</td><td class="lineno" valign="top"></td></tr>
     741      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   delimited</span> lists of elements.  The full form is "&lt;n&gt;#&lt;m&gt;element"</td><td> </td><td class="rblock">   <span class="insert">comma-delimited</span> lists of elements.  The full form is "&lt;n&gt;#&lt;m&gt;element"</td><td class="lineno" valign="top"></td></tr>
     742      <tr><td class="lineno" valign="top"></td><td class="left">   indicating at least &lt;n&gt; and at most &lt;m&gt; elements, each separated by a</td><td> </td><td class="right">   indicating at least &lt;n&gt; and at most &lt;m&gt; elements, each separated by a</td><td class="lineno" valign="top"></td></tr>
     743      <tr><td class="lineno" valign="top"></td><td class="left">   single comma (",") and optional whitespace (OWS).</td><td> </td><td class="right">   single comma (",") and optional whitespace (OWS).</td><td class="lineno" valign="top"></td></tr>
     744      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     745      <tr><td class="lineno" valign="top"></td><td class="left">   In any production that uses the list construct, a sender MUST NOT</td><td> </td><td class="right">   In any production that uses the list construct, a sender MUST NOT</td><td class="lineno" valign="top"></td></tr>
     746      <tr><td class="lineno" valign="top"></td><td class="left">   generate empty list elements.  In other words, a sender MUST generate</td><td> </td><td class="right">   generate empty list elements.  In other words, a sender MUST generate</td><td class="lineno" valign="top"></td></tr>
     747      <tr><td class="lineno" valign="top"></td><td class="left">   lists that satisfy the following syntax:</td><td> </td><td class="right">   lists that satisfy the following syntax:</td><td class="lineno" valign="top"></td></tr>
     748      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     749      <tr><td class="lineno" valign="top"></td><td class="left">     1#element =&gt; element *( OWS "," OWS element )</td><td> </td><td class="right">     1#element =&gt; element *( OWS "," OWS element )</td><td class="lineno" valign="top"></td></tr>
     750      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     751      <tr><td class="lineno" valign="top"></td><td class="left">   and:</td><td> </td><td class="right">   and:</td><td class="lineno" valign="top"></td></tr>
     752      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     753      <tr bgcolor="gray" ><td></td><th><a name="part-l23" /><small>skipping to change at</small><em> page 66, line 18</em></th><th> </th><th><a name="part-r23" /><small>skipping to change at</small><em> page 67, line 45</em></th><td></td></tr>
     754      <tr><td class="lineno" valign="top"></td><td class="left">   and users of known security considerations relevant to HTTP message</td><td> </td><td class="right">   and users of known security considerations relevant to HTTP message</td><td class="lineno" valign="top"></td></tr>
     755      <tr><td class="lineno" valign="top"></td><td class="left">   syntax, parsing, and routing.  Security considerations about HTTP</td><td> </td><td class="right">   syntax, parsing, and routing.  Security considerations about HTTP</td><td class="lineno" valign="top"></td></tr>
     756      <tr><td class="lineno" valign="top"></td><td class="left">   semantics and payloads are addressed in [RFC7231].</td><td> </td><td class="right">   semantics and payloads are addressed in [RFC7231].</td><td class="lineno" valign="top"></td></tr>
     757      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     758      <tr><td class="lineno" valign="top"></td><td class="left">9.1.  Establishing Authority</td><td> </td><td class="right">9.1.  Establishing Authority</td><td class="lineno" valign="top"></td></tr>
     759      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     760      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP relies on the notion of an authoritative response: a response</td><td> </td><td class="right">   HTTP relies on the notion of an authoritative response: a response</td><td class="lineno" valign="top"></td></tr>
     761      <tr><td class="lineno" valign="top"></td><td class="left">   that has been determined by (or at the direction of) the authority</td><td> </td><td class="right">   that has been determined by (or at the direction of) the authority</td><td class="lineno" valign="top"></td></tr>
     762      <tr><td class="lineno" valign="top"></td><td class="left">   identified within the target URI to be the most appropriate response</td><td> </td><td class="right">   identified within the target URI to be the most appropriate response</td><td class="lineno" valign="top"></td></tr>
     763      <tr><td class="lineno" valign="top"></td><td class="left">   for that request given the state of the target resource at the time</td><td> </td><td class="right">   for that request given the state of the target resource at the time</td><td class="lineno" valign="top"></td></tr>
     764      <tr><td><a name="diff0024" /></td></tr>
     765      <tr><td class="lineno" valign="top"></td><td class="lblock">   of response message origination.  Providing a response from a <span class="delete">non-</span></td><td> </td><td class="rblock">   of response message origination.  Providing a response from a</td><td class="lineno" valign="top"></td></tr>
     766      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   authoritative</span> source, such as a shared cache, is often useful to</td><td> </td><td class="rblock">   <span class="insert">non-authoritative</span> source, such as a shared cache, is often useful to</td><td class="lineno" valign="top"></td></tr>
     767      <tr><td class="lineno" valign="top"></td><td class="left">   improve performance and availability, but only to the extent that the</td><td> </td><td class="right">   improve performance and availability, but only to the extent that the</td><td class="lineno" valign="top"></td></tr>
     768      <tr><td class="lineno" valign="top"></td><td class="left">   source can be trusted or the distrusted response can be safely used.</td><td> </td><td class="right">   source can be trusted or the distrusted response can be safely used.</td><td class="lineno" valign="top"></td></tr>
     769      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     770      <tr><td class="lineno" valign="top"></td><td class="left">   Unfortunately, establishing authority can be difficult.  For example,</td><td> </td><td class="right">   Unfortunately, establishing authority can be difficult.  For example,</td><td class="lineno" valign="top"></td></tr>
     771      <tr><td class="lineno" valign="top"></td><td class="left">   phishing is an attack on the user's perception of authority, where</td><td> </td><td class="right">   phishing is an attack on the user's perception of authority, where</td><td class="lineno" valign="top"></td></tr>
     772      <tr><td class="lineno" valign="top"></td><td class="left">   that perception can be misled by presenting similar branding in</td><td> </td><td class="right">   that perception can be misled by presenting similar branding in</td><td class="lineno" valign="top"></td></tr>
     773      <tr><td class="lineno" valign="top"></td><td class="left">   hypertext, possibly aided by userinfo obfuscating the authority</td><td> </td><td class="right">   hypertext, possibly aided by userinfo obfuscating the authority</td><td class="lineno" valign="top"></td></tr>
     774      <tr><td class="lineno" valign="top"></td><td class="left">   component (see Section 2.7.1).  User agents can reduce the impact of</td><td> </td><td class="right">   component (see Section 2.7.1).  User agents can reduce the impact of</td><td class="lineno" valign="top"></td></tr>
     775      <tr><td class="lineno" valign="top"></td><td class="left">   phishing attacks by enabling users to easily inspect a target URI</td><td> </td><td class="right">   phishing attacks by enabling users to easily inspect a target URI</td><td class="lineno" valign="top"></td></tr>
     776      <tr><td class="lineno" valign="top"></td><td class="left">   prior to making an action, by prominently distinguishing (or</td><td> </td><td class="right">   prior to making an action, by prominently distinguishing (or</td><td class="lineno" valign="top"></td></tr>
     777      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     778      <tr bgcolor="gray" ><td></td><th><a name="part-l24" /><small>skipping to change at</small><em> page 69, line 22</em></th><th> </th><th><a name="part-r24" /><small>skipping to change at</small><em> page 70, line 48</em></th><td></td></tr>
     779      <tr><td class="lineno" valign="top"></td><td class="left">   usage.</td><td> </td><td class="right">   usage.</td><td class="lineno" valign="top"></td></tr>
     780      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     781      <tr><td class="lineno" valign="top"></td><td class="left">   This specification has introduced new requirements on request</td><td> </td><td class="right">   This specification has introduced new requirements on request</td><td class="lineno" valign="top"></td></tr>
     782      <tr><td class="lineno" valign="top"></td><td class="left">   parsing, particularly with regard to message framing in</td><td> </td><td class="right">   parsing, particularly with regard to message framing in</td><td class="lineno" valign="top"></td></tr>
     783      <tr><td class="lineno" valign="top"></td><td class="left">   Section 3.3.3, to reduce the effectiveness of request smuggling.</td><td> </td><td class="right">   Section 3.3.3, to reduce the effectiveness of request smuggling.</td><td class="lineno" valign="top"></td></tr>
     784      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     785      <tr><td class="lineno" valign="top"></td><td class="left">9.6.  Message Integrity</td><td> </td><td class="right">9.6.  Message Integrity</td><td class="lineno" valign="top"></td></tr>
     786      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     787      <tr><td class="lineno" valign="top"></td><td class="left">   HTTP does not define a specific mechanism for ensuring message</td><td> </td><td class="right">   HTTP does not define a specific mechanism for ensuring message</td><td class="lineno" valign="top"></td></tr>
     788      <tr><td class="lineno" valign="top"></td><td class="left">   integrity, instead relying on the error-detection ability of</td><td> </td><td class="right">   integrity, instead relying on the error-detection ability of</td><td class="lineno" valign="top"></td></tr>
     789      <tr><td><a name="diff0025" /></td></tr>
     790      <tr><td class="lineno" valign="top"></td><td class="lblock">   underlying transport protocols and the use of length or <span class="delete">chunk-</span></td><td> </td><td class="rblock">   underlying transport protocols and the use of length or</td><td class="lineno" valign="top"></td></tr>
     791      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   delimited</span> framing to detect completeness.  Additional integrity</td><td> </td><td class="rblock">   <span class="insert">chunk-delimited</span> framing to detect completeness.  Additional integrity</td><td class="lineno" valign="top"></td></tr>
     792      <tr><td class="lineno" valign="top"></td><td class="left">   mechanisms, such as hash functions or digital signatures applied to</td><td> </td><td class="right">   mechanisms, such as hash functions or digital signatures applied to</td><td class="lineno" valign="top"></td></tr>
     793      <tr><td class="lineno" valign="top"></td><td class="left">   the content, can be selectively added to messages via extensible</td><td> </td><td class="right">   the content, can be selectively added to messages via extensible</td><td class="lineno" valign="top"></td></tr>
     794      <tr><td class="lineno" valign="top"></td><td class="left">   metadata header fields.  Historically, the lack of a single integrity</td><td> </td><td class="right">   metadata header fields.  Historically, the lack of a single integrity</td><td class="lineno" valign="top"></td></tr>
     795      <tr><td class="lineno" valign="top"></td><td class="left">   mechanism has been justified by the informal nature of most HTTP</td><td> </td><td class="right">   mechanism has been justified by the informal nature of most HTTP</td><td class="lineno" valign="top"></td></tr>
     796      <tr><td class="lineno" valign="top"></td><td class="left">   communication.  However, the prevalence of HTTP as an information</td><td> </td><td class="right">   communication.  However, the prevalence of HTTP as an information</td><td class="lineno" valign="top"></td></tr>
     797      <tr><td class="lineno" valign="top"></td><td class="left">   access mechanism has resulted in its increasing use within</td><td> </td><td class="right">   access mechanism has resulted in its increasing use within</td><td class="lineno" valign="top"></td></tr>
     798      <tr><td class="lineno" valign="top"></td><td class="left">   environments where verification of message integrity is crucial.</td><td> </td><td class="right">   environments where verification of message integrity is crucial.</td><td class="lineno" valign="top"></td></tr>
     799      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     800      <tr><td class="lineno" valign="top"></td><td class="left">   User agents are encouraged to implement configurable means for</td><td> </td><td class="right">   User agents are encouraged to implement configurable means for</td><td class="lineno" valign="top"></td></tr>
     801      <tr><td class="lineno" valign="top"></td><td class="left">   detecting and reporting failures of message integrity such that those</td><td> </td><td class="right">   detecting and reporting failures of message integrity such that those</td><td class="lineno" valign="top"></td></tr>
     802      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     803      <tr bgcolor="gray" ><td></td><th><a name="part-l25" /><small>skipping to change at</small><em> page 70, line 27</em></th><th> </th><th><a name="part-r25" /><small>skipping to change at</small><em> page 72, line 7</em></th><td></td></tr>
     804      <tr><td class="lineno" valign="top"></td><td class="left">   constrained by laws and regulations.  Log information needs to be</td><td> </td><td class="right">   constrained by laws and regulations.  Log information needs to be</td><td class="lineno" valign="top"></td></tr>
     805      <tr><td class="lineno" valign="top"></td><td class="left">   securely stored and appropriate guidelines followed for its analysis.</td><td> </td><td class="right">   securely stored and appropriate guidelines followed for its analysis.</td><td class="lineno" valign="top"></td></tr>
     806      <tr><td class="lineno" valign="top"></td><td class="left">   Anonymization of personal information within individual entries</td><td> </td><td class="right">   Anonymization of personal information within individual entries</td><td class="lineno" valign="top"></td></tr>
     807      <tr><td class="lineno" valign="top"></td><td class="left">   helps, but it is generally not sufficient to prevent real log traces</td><td> </td><td class="right">   helps, but it is generally not sufficient to prevent real log traces</td><td class="lineno" valign="top"></td></tr>
     808      <tr><td class="lineno" valign="top"></td><td class="left">   from being re-identified based on correlation with other access</td><td> </td><td class="right">   from being re-identified based on correlation with other access</td><td class="lineno" valign="top"></td></tr>
     809      <tr><td class="lineno" valign="top"></td><td class="left">   characteristics.  As such, access traces that are keyed to a specific</td><td> </td><td class="right">   characteristics.  As such, access traces that are keyed to a specific</td><td class="lineno" valign="top"></td></tr>
     810      <tr><td class="lineno" valign="top"></td><td class="left">   client are unsafe to publish even if the key is pseudonymous.</td><td> </td><td class="right">   client are unsafe to publish even if the key is pseudonymous.</td><td class="lineno" valign="top"></td></tr>
     811      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     812      <tr><td class="lineno" valign="top"></td><td class="left">   To minimize the risk of theft or accidental publication, log</td><td> </td><td class="right">   To minimize the risk of theft or accidental publication, log</td><td class="lineno" valign="top"></td></tr>
     813      <tr><td class="lineno" valign="top"></td><td class="left">   information ought to be purged of personally identifiable</td><td> </td><td class="right">   information ought to be purged of personally identifiable</td><td class="lineno" valign="top"></td></tr>
     814      <tr><td><a name="diff0026" /></td></tr>
     815      <tr><td class="lineno" valign="top"></td><td class="lblock">   information, including user identifiers, IP addresses, and <span class="delete">user-</span></td><td> </td><td class="rblock">   information, including user identifiers, IP addresses, and</td><td class="lineno" valign="top"></td></tr>
     816      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   provided</span> query parameters, as soon as that information is no longer</td><td> </td><td class="rblock">   <span class="insert">user-provided</span> query parameters, as soon as that information is no</td><td class="lineno" valign="top"></td></tr>
     817      <tr><td class="lineno" valign="top"></td><td class="lblock">   necessary to support operational needs for security, auditing, or</td><td> </td><td class="rblock">   longer necessary to support operational needs for security, auditing,</td><td class="lineno" valign="top"></td></tr>
     818      <tr><td class="lineno" valign="top"></td><td class="lblock">   fraud control.</td><td> </td><td class="rblock">   or fraud control.</td><td class="lineno" valign="top"></td></tr>
     819      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     820      <tr><td class="lineno" valign="top"></td><td class="left">10.  Acknowledgments</td><td> </td><td class="right">10.  Acknowledgments</td><td class="lineno" valign="top"></td></tr>
     821      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     822      <tr><td class="lineno" valign="top"></td><td class="left">   This edition of HTTP/1.1 builds on the many contributions that went</td><td> </td><td class="right">   This edition of HTTP/1.1 builds on the many contributions that went</td><td class="lineno" valign="top"></td></tr>
     823      <tr><td class="lineno" valign="top"></td><td class="left">   into RFC 1945, RFC 2068, RFC 2145, and RFC 2616, including</td><td> </td><td class="right">   into RFC 1945, RFC 2068, RFC 2145, and RFC 2616, including</td><td class="lineno" valign="top"></td></tr>
     824      <tr><td class="lineno" valign="top"></td><td class="left">   substantial contributions made by the previous authors, editors, and</td><td> </td><td class="right">   substantial contributions made by the previous authors, editors, and</td><td class="lineno" valign="top"></td></tr>
     825      <tr><td class="lineno" valign="top"></td><td class="left">   Working Group Chairs: Tim Berners-Lee, Ari Luotonen, Roy T. Fielding,</td><td> </td><td class="right">   Working Group Chairs: Tim Berners-Lee, Ari Luotonen, Roy T. Fielding,</td><td class="lineno" valign="top"></td></tr>
     826      <tr><td class="lineno" valign="top"></td><td class="left">   Henrik Frystyk Nielsen, Jim Gettys, Jeffrey C. Mogul, Larry Masinter,</td><td> </td><td class="right">   Henrik Frystyk Nielsen, Jim Gettys, Jeffrey C. Mogul, Larry Masinter,</td><td class="lineno" valign="top"></td></tr>
     827      <tr><td class="lineno" valign="top"></td><td class="left">   and Paul J. Leach.  Mark Nottingham oversaw this effort as Working</td><td> </td><td class="right">   and Paul J. Leach.  Mark Nottingham oversaw this effort as Working</td><td class="lineno" valign="top"></td></tr>
     828      <tr><td class="lineno" valign="top"></td><td class="left">   Group Chair.</td><td> </td><td class="right">   Group Chair.</td><td class="lineno" valign="top"></td></tr>
     829      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     830      <tr bgcolor="gray" ><td></td><th><a name="part-l26" /><small>skipping to change at</small><em> page 82, line 20</em></th><th> </th><th><a name="part-r26" /><small>skipping to change at</small><em> page 85, line 8</em></th><td></td></tr>
     831      <tr><td class="lineno" valign="top"></td><td class="left">   transfer-coding = "chunked" / "compress" / "deflate" / "gzip" /</td><td> </td><td class="right">   transfer-coding = "chunked" / "compress" / "deflate" / "gzip" /</td><td class="lineno" valign="top"></td></tr>
     832      <tr><td class="lineno" valign="top"></td><td class="left">    transfer-extension</td><td> </td><td class="right">    transfer-extension</td><td class="lineno" valign="top"></td></tr>
     833      <tr><td class="lineno" valign="top"></td><td class="left">   transfer-extension = token *( OWS ";" OWS transfer-parameter )</td><td> </td><td class="right">   transfer-extension = token *( OWS ";" OWS transfer-parameter )</td><td class="lineno" valign="top"></td></tr>
     834      <tr><td class="lineno" valign="top"></td><td class="left">   transfer-parameter = token BWS "=" BWS ( token / quoted-string )</td><td> </td><td class="right">   transfer-parameter = token BWS "=" BWS ( token / quoted-string )</td><td class="lineno" valign="top"></td></tr>
     835      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     836      <tr><td class="lineno" valign="top"></td><td class="left">   uri-host = &lt;host, see [RFC3986], Section 3.2.2&gt;</td><td> </td><td class="right">   uri-host = &lt;host, see [RFC3986], Section 3.2.2&gt;</td><td class="lineno" valign="top"></td></tr>
     837      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     838      <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>
     839      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     840      <tr><td class="lineno" valign="top"></td><td class="left">   A</td><td> </td><td class="right">   A</td><td class="lineno" valign="top"></td></tr>
     841      <tr><td><a name="diff0027" /></td></tr>
     842      <tr><td class="lineno" valign="top"></td><td class="lblock">      absolute-form (of request-target)  4<span class="delete">1</span></td><td> </td><td class="rblock">      absolute-form (of request-target)  4<span class="insert">2</span></td><td class="lineno" valign="top"></td></tr>
     843      <tr><td class="lineno" valign="top"></td><td class="left">      accelerator  10</td><td> </td><td class="right">      accelerator  10</td><td class="lineno" valign="top"></td></tr>
     844      <tr><td><a name="diff0028" /></td></tr>
     845      <tr><td class="lineno" valign="top"></td><td class="lblock">      application/http Media Type  <span class="delete">62</span></td><td> </td><td class="rblock">      application/http Media Type  <span class="insert">63</span></td><td class="lineno" valign="top"></td></tr>
     846      <tr><td class="lineno" valign="top"></td><td class="lblock">      asterisk-form (of request-target)  <span class="delete">42</span></td><td> </td><td class="rblock">      asterisk-form (of request-target)  <span class="insert">43</span></td><td class="lineno" valign="top"></td></tr>
     847      <tr><td class="lineno" valign="top"></td><td class="lblock">      authoritative response  <span class="delete">66</span></td><td> </td><td class="rblock">      authoritative response  <span class="insert">67</span></td><td class="lineno" valign="top"></td></tr>
     848      <tr><td class="lineno" valign="top"></td><td class="lblock">      authority-form (of request-target)  <span class="delete">42</span></td><td> </td><td class="rblock">      authority-form (of request-target)  <span class="insert">42-43</span></td><td class="lineno" valign="top"></td></tr>
     849      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     850      <tr><td class="lineno" valign="top"></td><td class="left">   B</td><td> </td><td class="right">   B</td><td class="lineno" valign="top"></td></tr>
     851      <tr><td class="lineno" valign="top"></td><td class="left">      browser  7</td><td> </td><td class="right">      browser  7</td><td class="lineno" valign="top"></td></tr>
     852      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     853      <tr><td class="lineno" valign="top"></td><td class="left">   C</td><td> </td><td class="right">   C</td><td class="lineno" valign="top"></td></tr>
     854      <tr><td class="lineno" valign="top"></td><td class="left">      cache  11</td><td> </td><td class="right">      cache  11</td><td class="lineno" valign="top"></td></tr>
     855      <tr><td><a name="diff0029" /></td></tr>
     856      <tr><td class="lineno" valign="top"></td><td class="lblock">      cacheable  1<span class="delete">1</span></td><td> </td><td class="rblock">      cacheable  1<span class="insert">2</span></td><td class="lineno" valign="top"></td></tr>
     857      <tr><td class="lineno" valign="top"></td><td class="left">      captive portal  11</td><td> </td><td class="right">      captive portal  11</td><td class="lineno" valign="top"></td></tr>
     858      <tr><td><a name="diff0030" /></td></tr>
     859      <tr><td class="lineno" valign="top"></td><td class="lblock">      chunked (Coding Format)  28, 3<span class="delete">1, 35</span></td><td> </td><td class="rblock">      chunked (Coding Format)  28, 3<span class="insert">2, 36</span></td><td class="lineno" valign="top"></td></tr>
     860      <tr><td class="lineno" valign="top"></td><td class="left">      client  7</td><td> </td><td class="right">      client  7</td><td class="lineno" valign="top"></td></tr>
     861      <tr><td><a name="diff0031" /></td></tr>
     862      <tr><td class="lineno" valign="top"></td><td class="lblock">      close  5<span class="delete">0, 55</span></td><td> </td><td class="rblock">      close  5<span class="insert">1, 56</span></td><td class="lineno" valign="top"></td></tr>
     863      <tr><td class="lineno" valign="top"></td><td class="left">      compress (Coding Format)  38</td><td> </td><td class="right">      compress (Coding Format)  38</td><td class="lineno" valign="top"></td></tr>
     864      <tr><td class="lineno" valign="top"></td><td class="left">      connection  7</td><td> </td><td class="right">      connection  7</td><td class="lineno" valign="top"></td></tr>
     865      <tr><td><a name="diff0032" /></td></tr>
     866      <tr><td class="lineno" valign="top"></td><td class="lblock">      Connection header field  <span class="delete">50, 55</span></td><td> </td><td class="rblock">      Connection header field  <span class="insert">51, 56</span></td><td class="lineno" valign="top"></td></tr>
     867      <tr><td class="lineno" valign="top"></td><td class="lblock">      Content-Length header field  <span class="delete">29</span></td><td> </td><td class="rblock">      Content-Length header field  <span class="insert">30</span></td><td class="lineno" valign="top"></td></tr>
     868      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     869      <tr><td class="lineno" valign="top"></td><td class="left">   D</td><td> </td><td class="right">   D</td><td class="lineno" valign="top"></td></tr>
     870      <tr><td class="lineno" valign="top"></td><td class="left">      deflate (Coding Format)  38</td><td> </td><td class="right">      deflate (Coding Format)  38</td><td class="lineno" valign="top"></td></tr>
     871      <tr><td><a name="diff0033" /></td></tr>
     872      <tr><td class="lineno" valign="top"></td><td class="lblock">      Delimiters  <span class="delete">26</span></td><td> </td><td class="rblock">      Delimiters  <span class="insert">27</span></td><td class="lineno" valign="top"></td></tr>
     873      <tr><td class="lineno" valign="top"></td><td class="lblock">      downstream  <span class="delete">9</span></td><td> </td><td class="rblock">      downstream  <span class="insert">10</span></td><td class="lineno" valign="top"></td></tr>
     874      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     875      <tr><td class="lineno" valign="top"></td><td class="left">   E</td><td> </td><td class="right">   E</td><td class="lineno" valign="top"></td></tr>
     876      <tr><td><a name="diff0034" /></td></tr>
     877      <tr><td class="lineno" valign="top"></td><td class="lblock">      effective request URI  4<span class="delete">4</span></td><td> </td><td class="rblock">      effective request URI  4<span class="insert">5</span></td><td class="lineno" valign="top"></td></tr>
     878      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     879      <tr><td class="lineno" valign="top"></td><td class="left">   G</td><td> </td><td class="right">   G</td><td class="lineno" valign="top"></td></tr>
     880      <tr><td class="lineno" valign="top"></td><td class="left">      gateway  10</td><td> </td><td class="right">      gateway  10</td><td class="lineno" valign="top"></td></tr>
     881      <tr><td class="lineno" valign="top"></td><td class="left">      Grammar</td><td> </td><td class="right">      Grammar</td><td class="lineno" valign="top"></td></tr>
     882      <tr><td><a name="diff0035" /></td></tr>
     883      <tr><td class="lineno" valign="top"></td><td class="lblock">         absolute-form  4<span class="delete">1</span></td><td> </td><td class="rblock">         absolute-form  4<span class="insert">2</span></td><td class="lineno" valign="top"></td></tr>
     884      <tr><td class="lineno" valign="top"></td><td class="left">         absolute-path  16</td><td> </td><td class="right">         absolute-path  16</td><td class="lineno" valign="top"></td></tr>
     885      <tr><td class="lineno" valign="top"></td><td class="left">         absolute-URI  16</td><td> </td><td class="right">         absolute-URI  16</td><td class="lineno" valign="top"></td></tr>
     886      <tr><td class="lineno" valign="top"></td><td class="left">         ALPHA  6</td><td> </td><td class="right">         ALPHA  6</td><td class="lineno" valign="top"></td></tr>
     887      <tr><td><a name="diff0036" /></td></tr>
     888      <tr><td class="lineno" valign="top"></td><td class="lblock">         asterisk-form  41<span class="delete">-42</span></td><td> </td><td class="rblock">         asterisk-form  41<span class="insert">, 43</span></td><td class="lineno" valign="top"></td></tr>
     889      <tr><td class="lineno" valign="top"></td><td class="left">         authority  16</td><td> </td><td class="right">         authority  16</td><td class="lineno" valign="top"></td></tr>
     890      <tr><td><a name="diff0037" /></td></tr>
     891      <tr><td class="lineno" valign="top"></td><td class="lblock">         authority-form  <span class="delete">41-42</span></td><td> </td><td class="rblock">         authority-form  <span class="insert">42-43</span></td><td class="lineno" valign="top"></td></tr>
     892      <tr><td class="lineno" valign="top"></td><td class="lblock">         BWS  <span class="delete">24</span></td><td> </td><td class="rblock">         BWS  <span class="insert">25</span></td><td class="lineno" valign="top"></td></tr>
     893      <tr><td class="lineno" valign="top"></td><td class="lblock">         chunk  <span class="delete">35</span></td><td> </td><td class="rblock">         chunk  <span class="insert">36</span></td><td class="lineno" valign="top"></td></tr>
     894      <tr><td class="lineno" valign="top"></td><td class="lblock">         chunk-data  <span class="delete">35</span></td><td> </td><td class="rblock">         chunk-data  <span class="insert">36</span></td><td class="lineno" valign="top"></td></tr>
     895      <tr><td class="lineno" valign="top"></td><td class="lblock">         chunk-ext  <span class="delete">35-36</span></td><td> </td><td class="rblock">         chunk-ext  <span class="insert">36</span></td><td class="lineno" valign="top"></td></tr>
     896      <tr><td class="lineno" valign="top"></td><td class="left">         chunk-ext-name  36</td><td> </td><td class="right">         chunk-ext-name  36</td><td class="lineno" valign="top"></td></tr>
     897      <tr><td class="lineno" valign="top"></td><td class="left">         chunk-ext-val  36</td><td> </td><td class="right">         chunk-ext-val  36</td><td class="lineno" valign="top"></td></tr>
     898      <tr><td><a name="diff0038" /></td></tr>
     899      <tr><td class="lineno" valign="top"></td><td class="lblock">         chunk-size  <span class="delete">35</span></td><td> </td><td class="rblock">         chunk-size  <span class="insert">36</span></td><td class="lineno" valign="top"></td></tr>
     900      <tr><td class="lineno" valign="top"></td><td class="lblock">         chunked-body  <span class="delete">35-36</span></td><td> </td><td class="rblock">         chunked-body  <span class="insert">36</span></td><td class="lineno" valign="top"></td></tr>
     901      <tr><td class="lineno" valign="top"></td><td class="left">         comment  27</td><td> </td><td class="right">         comment  27</td><td class="lineno" valign="top"></td></tr>
     902      <tr><td><a name="diff0039" /></td></tr>
     903      <tr><td class="lineno" valign="top"></td><td class="lblock">         Connection  <span class="delete">50</span></td><td> </td><td class="rblock">         Connection  <span class="insert">51</span></td><td class="lineno" valign="top"></td></tr>
     904      <tr><td class="lineno" valign="top"></td><td class="lblock">         connection-option  <span class="delete">50</span></td><td> </td><td class="rblock">         connection-option  <span class="insert">51</span></td><td class="lineno" valign="top"></td></tr>
     905      <tr><td class="lineno" valign="top"></td><td class="lblock">         Content-Length  <span class="delete">29</span></td><td> </td><td class="rblock">         Content-Length  <span class="insert">30</span></td><td class="lineno" valign="top"></td></tr>
     906      <tr><td class="lineno" valign="top"></td><td class="left">         CR  6</td><td> </td><td class="right">         CR  6</td><td class="lineno" valign="top"></td></tr>
     907      <tr><td class="lineno" valign="top"></td><td class="left">         CRLF  6</td><td> </td><td class="right">         CRLF  6</td><td class="lineno" valign="top"></td></tr>
     908      <tr><td class="lineno" valign="top"></td><td class="left">         ctext  27</td><td> </td><td class="right">         ctext  27</td><td class="lineno" valign="top"></td></tr>
     909      <tr><td class="lineno" valign="top"></td><td class="left">         CTL  6</td><td> </td><td class="right">         CTL  6</td><td class="lineno" valign="top"></td></tr>
     910      <tr><td class="lineno" valign="top"></td><td class="left">         DIGIT  6</td><td> </td><td class="right">         DIGIT  6</td><td class="lineno" valign="top"></td></tr>
     911      <tr><td class="lineno" valign="top"></td><td class="left">         DQUOTE  6</td><td> </td><td class="right">         DQUOTE  6</td><td class="lineno" valign="top"></td></tr>
     912      <tr><td><a name="diff0040" /></td></tr>
     913      <tr><td class="lineno" valign="top"></td><td class="lblock">         field-content  <span class="delete">22</span></td><td> </td><td class="rblock">         field-content  <span class="insert">23</span></td><td class="lineno" valign="top"></td></tr>
     914      <tr><td class="lineno" valign="top"></td><td class="lblock">         field-name  <span class="delete">22, 39</span></td><td> </td><td class="rblock">         field-name  <span class="insert">23, 40</span></td><td class="lineno" valign="top"></td></tr>
     915      <tr><td class="lineno" valign="top"></td><td class="lblock">         field-value  <span class="delete">22</span></td><td> </td><td class="rblock">         field-value  <span class="insert">23</span></td><td class="lineno" valign="top"></td></tr>
     916      <tr><td class="lineno" valign="top"></td><td class="lblock">         field-vchar  <span class="delete">22</span></td><td> </td><td class="rblock">         field-vchar  <span class="insert">23</span></td><td class="lineno" valign="top"></td></tr>
     917      <tr><td class="lineno" valign="top"></td><td class="left">         fragment  16</td><td> </td><td class="right">         fragment  16</td><td class="lineno" valign="top"></td></tr>
     918      <tr><td><a name="diff0041" /></td></tr>
     919      <tr><td class="lineno" valign="top"></td><td class="lblock">         header-field  2<span class="delete">2, 36</span></td><td> </td><td class="rblock">         header-field  2<span class="insert">3, 37</span></td><td class="lineno" valign="top"></td></tr>
     920      <tr><td class="lineno" valign="top"></td><td class="left">         HEXDIG  6</td><td> </td><td class="right">         HEXDIG  6</td><td class="lineno" valign="top"></td></tr>
     921      <tr><td><a name="diff0042" /></td></tr>
     922      <tr><td class="lineno" valign="top"></td><td class="lblock">         Host  4<span class="delete">3</span></td><td> </td><td class="rblock">         Host  4<span class="insert">4</span></td><td class="lineno" valign="top"></td></tr>
     923      <tr><td class="lineno" valign="top"></td><td class="left">         HTAB  6</td><td> </td><td class="right">         HTAB  6</td><td class="lineno" valign="top"></td></tr>
     924      <tr><td class="lineno" valign="top"></td><td class="left">         HTTP-message  19</td><td> </td><td class="right">         HTTP-message  19</td><td class="lineno" valign="top"></td></tr>
     925      <tr><td><a name="diff0043" /></td></tr>
     926      <tr><td class="lineno" valign="top"></td><td class="lblock">         HTTP-name  <span class="delete">13</span></td><td> </td><td class="rblock">         HTTP-name  <span class="insert">14</span></td><td class="lineno" valign="top"></td></tr>
     927      <tr><td class="lineno" valign="top"></td><td class="lblock">         http-URI  <span class="delete">16</span></td><td> </td><td class="rblock">         http-URI  <span class="insert">17</span></td><td class="lineno" valign="top"></td></tr>
     928      <tr><td class="lineno" valign="top"></td><td class="lblock">         HTTP-version  <span class="delete">13</span></td><td> </td><td class="rblock">         HTTP-version  <span class="insert">14</span></td><td class="lineno" valign="top"></td></tr>
     929      <tr><td class="lineno" valign="top"></td><td class="left">         https-URI  18</td><td> </td><td class="right">         https-URI  18</td><td class="lineno" valign="top"></td></tr>
     930      <tr><td><a name="diff0044" /></td></tr>
     931      <tr><td class="lineno" valign="top"></td><td class="lblock">         last-chunk  3<span class="delete">5</span></td><td> </td><td class="rblock">         last-chunk  3<span class="insert">6</span></td><td class="lineno" valign="top"></td></tr>
     932      <tr><td class="lineno" valign="top"></td><td class="left">         LF  6</td><td> </td><td class="right">         LF  6</td><td class="lineno" valign="top"></td></tr>
     933      <tr><td><a name="diff0045" /></td></tr>
     934      <tr><td class="lineno" valign="top"></td><td class="lblock">         message-body  2<span class="delete">7</span></td><td> </td><td class="rblock">         message-body  2<span class="insert">8</span></td><td class="lineno" valign="top"></td></tr>
     935      <tr><td class="lineno" valign="top"></td><td class="left">         method  21</td><td> </td><td class="right">         method  21</td><td class="lineno" valign="top"></td></tr>
     936      <tr><td><a name="diff0046" /></td></tr>
     937      <tr><td class="lineno" valign="top"></td><td class="lblock">         obs-fold  2<span class="delete">2</span></td><td> </td><td class="rblock">         obs-fold  2<span class="insert">3</span></td><td class="lineno" valign="top"></td></tr>
     938      <tr><td class="lineno" valign="top"></td><td class="left">         obs-text  27</td><td> </td><td class="right">         obs-text  27</td><td class="lineno" valign="top"></td></tr>
     939      <tr><td class="lineno" valign="top"></td><td class="left">         OCTET  6</td><td> </td><td class="right">         OCTET  6</td><td class="lineno" valign="top"></td></tr>
     940      <tr><td><a name="diff0047" /></td></tr>
     941      <tr><td class="lineno" valign="top"></td><td class="lblock">         origin-form  <span class="delete">41</span></td><td> </td><td class="rblock">         origin-form  <span class="insert">42</span></td><td class="lineno" valign="top"></td></tr>
     942      <tr><td class="lineno" valign="top"></td><td class="lblock">         OWS  <span class="delete">24</span></td><td> </td><td class="rblock">         OWS  <span class="insert">25</span></td><td class="lineno" valign="top"></td></tr>
     943      <tr><td class="lineno" valign="top"></td><td class="left">         partial-URI  16</td><td> </td><td class="right">         partial-URI  16</td><td class="lineno" valign="top"></td></tr>
     944      <tr><td class="lineno" valign="top"></td><td class="left">         port  16</td><td> </td><td class="right">         port  16</td><td class="lineno" valign="top"></td></tr>
     945      <tr><td class="lineno" valign="top"></td><td class="left">         protocol-name  47</td><td> </td><td class="right">         protocol-name  47</td><td class="lineno" valign="top"></td></tr>
     946      <tr><td class="lineno" valign="top"></td><td class="left">         protocol-version  47</td><td> </td><td class="right">         protocol-version  47</td><td class="lineno" valign="top"></td></tr>
     947      <tr><td class="lineno" valign="top"></td><td class="left">         pseudonym  47</td><td> </td><td class="right">         pseudonym  47</td><td class="lineno" valign="top"></td></tr>
     948      <tr><td class="lineno" valign="top"></td><td class="left">         qdtext  27</td><td> </td><td class="right">         qdtext  27</td><td class="lineno" valign="top"></td></tr>
     949      <tr><td class="lineno" valign="top"></td><td class="left">         query  16</td><td> </td><td class="right">         query  16</td><td class="lineno" valign="top"></td></tr>
     950      <tr><td class="lineno" valign="top"></td><td class="left">         quoted-pair  27</td><td> </td><td class="right">         quoted-pair  27</td><td class="lineno" valign="top"></td></tr>
     951      <tr><td class="lineno" valign="top"></td><td class="left">         quoted-string  27</td><td> </td><td class="right">         quoted-string  27</td><td class="lineno" valign="top"></td></tr>
     952      <tr><td><a name="diff0048" /></td></tr>
     953      <tr><td class="lineno" valign="top"></td><td class="lblock">         rank  3<span class="delete">8</span></td><td> </td><td class="rblock">         rank  3<span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>
     954      <tr><td class="lineno" valign="top"></td><td class="left">         reason-phrase  22</td><td> </td><td class="right">         reason-phrase  22</td><td class="lineno" valign="top"></td></tr>
     955      <tr><td class="lineno" valign="top"></td><td class="left">         received-by  47</td><td> </td><td class="right">         received-by  47</td><td class="lineno" valign="top"></td></tr>
     956      <tr><td class="lineno" valign="top"></td><td class="left">         received-protocol  47</td><td> </td><td class="right">         received-protocol  47</td><td class="lineno" valign="top"></td></tr>
     957      <tr><td class="lineno" valign="top"></td><td class="left">         request-line  21</td><td> </td><td class="right">         request-line  21</td><td class="lineno" valign="top"></td></tr>
     958      <tr><td class="lineno" valign="top"></td><td class="left">         request-target  41</td><td> </td><td class="right">         request-target  41</td><td class="lineno" valign="top"></td></tr>
     959      <tr><td><a name="diff0049" /></td></tr>
     960      <tr><td class="lineno" valign="top"></td><td class="lblock">         RWS  2<span class="delete">4</span></td><td> </td><td class="rblock">         RWS  2<span class="insert">5</span></td><td class="lineno" valign="top"></td></tr>
     961      <tr><td class="lineno" valign="top"></td><td class="left">         scheme  16</td><td> </td><td class="right">         scheme  16</td><td class="lineno" valign="top"></td></tr>
     962      <tr><td class="lineno" valign="top"></td><td class="left">         segment  16</td><td> </td><td class="right">         segment  16</td><td class="lineno" valign="top"></td></tr>
     963      <tr><td class="lineno" valign="top"></td><td class="left">         SP  6</td><td> </td><td class="right">         SP  6</td><td class="lineno" valign="top"></td></tr>
     964      <tr><td><a name="diff0050" /></td></tr>
     965      <tr><td class="lineno" valign="top"></td><td class="lblock">         start-line  2<span class="delete">0</span></td><td> </td><td class="rblock">         start-line  2<span class="insert">1</span></td><td class="lineno" valign="top"></td></tr>
     966      <tr><td class="lineno" valign="top"></td><td class="left">         status-code  22</td><td> </td><td class="right">         status-code  22</td><td class="lineno" valign="top"></td></tr>
     967      <tr><td class="lineno" valign="top"></td><td class="left">         status-line  22</td><td> </td><td class="right">         status-line  22</td><td class="lineno" valign="top"></td></tr>
     968      <tr><td><a name="diff0051" /></td></tr>
     969      <tr><td class="lineno" valign="top"></td><td class="lblock">         t-codings  <span class="delete">38</span></td><td> </td><td class="rblock">         t-codings  <span class="insert">39</span></td><td class="lineno" valign="top"></td></tr>
     970      <tr><td class="lineno" valign="top"></td><td class="lblock">         t-ranking  <span class="delete">38</span></td><td> </td><td class="rblock">         t-ranking  <span class="insert">39</span></td><td class="lineno" valign="top"></td></tr>
     971      <tr><td class="lineno" valign="top"></td><td class="lblock">         tchar  <span class="delete">26</span></td><td> </td><td class="rblock">         tchar  <span class="insert">27</span></td><td class="lineno" valign="top"></td></tr>
     972      <tr><td class="lineno" valign="top"></td><td class="lblock">         TE  <span class="delete">38</span></td><td> </td><td class="rblock">         TE  <span class="insert">39</span></td><td class="lineno" valign="top"></td></tr>
     973      <tr><td class="lineno" valign="top"></td><td class="lblock">         token  <span class="delete">26</span></td><td> </td><td class="rblock">         token  <span class="insert">27</span></td><td class="lineno" valign="top"></td></tr>
     974      <tr><td class="lineno" valign="top"></td><td class="lblock">         Trailer  <span class="delete">39</span></td><td> </td><td class="rblock">         Trailer  <span class="insert">40</span></td><td class="lineno" valign="top"></td></tr>
     975      <tr><td class="lineno" valign="top"></td><td class="lblock">         trailer-part  <span class="delete">35-36</span></td><td> </td><td class="rblock">         trailer-part  <span class="insert">37</span></td><td class="lineno" valign="top"></td></tr>
     976      <tr><td class="lineno" valign="top"></td><td class="left">         transfer-coding  35</td><td> </td><td class="right">         transfer-coding  35</td><td class="lineno" valign="top"></td></tr>
     977      <tr><td class="lineno" valign="top"></td><td class="left">         Transfer-Encoding  28</td><td> </td><td class="right">         Transfer-Encoding  28</td><td class="lineno" valign="top"></td></tr>
     978      <tr><td class="lineno" valign="top"></td><td class="left">         transfer-extension  35</td><td> </td><td class="right">         transfer-extension  35</td><td class="lineno" valign="top"></td></tr>
     979      <tr><td class="lineno" valign="top"></td><td class="left">         transfer-parameter  35</td><td> </td><td class="right">         transfer-parameter  35</td><td class="lineno" valign="top"></td></tr>
     980      <tr><td><a name="diff0052" /></td></tr>
     981      <tr><td class="lineno" valign="top"></td><td class="lblock">         Upgrade  5<span class="delete">6</span></td><td> </td><td class="rblock">         Upgrade  5<span class="insert">7</span></td><td class="lineno" valign="top"></td></tr>
     982      <tr><td class="lineno" valign="top"></td><td class="left">         uri-host  16</td><td> </td><td class="right">         uri-host  16</td><td class="lineno" valign="top"></td></tr>
     983      <tr><td class="lineno" valign="top"></td><td class="left">         URI-reference  16</td><td> </td><td class="right">         URI-reference  16</td><td class="lineno" valign="top"></td></tr>
     984      <tr><td class="lineno" valign="top"></td><td class="left">         VCHAR  6</td><td> </td><td class="right">         VCHAR  6</td><td class="lineno" valign="top"></td></tr>
     985      <tr><td class="lineno" valign="top"></td><td class="left">         Via  47</td><td> </td><td class="right">         Via  47</td><td class="lineno" valign="top"></td></tr>
     986      <tr><td><a name="diff0053" /></td></tr>
     987      <tr><td class="lineno" valign="top"></td><td class="lblock">      gzip (Coding Format)  3<span class="delete">8</span></td><td> </td><td class="rblock">      gzip (Coding Format)  3<span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>
     988      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     989      <tr><td class="lineno" valign="top"></td><td class="left">   H</td><td> </td><td class="right">   H</td><td class="lineno" valign="top"></td></tr>
     990      <tr><td class="lineno" valign="top"></td><td class="left">      header field  19</td><td> </td><td class="right">      header field  19</td><td class="lineno" valign="top"></td></tr>
     991      <tr><td class="lineno" valign="top"></td><td class="left">      header section  19</td><td> </td><td class="right">      header section  19</td><td class="lineno" valign="top"></td></tr>
     992      <tr><td class="lineno" valign="top"></td><td class="left">      headers  19</td><td> </td><td class="right">      headers  19</td><td class="lineno" valign="top"></td></tr>
     993      <tr><td><a name="diff0054" /></td></tr>
     994      <tr><td class="lineno" valign="top"></td><td class="lblock">      Host header field  <span class="delete">43</span></td><td> </td><td class="rblock">      Host header field  <span class="insert">44</span></td><td class="lineno" valign="top"></td></tr>
     995      <tr><td class="lineno" valign="top"></td><td class="lblock">      http URI scheme  <span class="delete">16</span></td><td> </td><td class="rblock">      http URI scheme  <span class="insert">17</span></td><td class="lineno" valign="top"></td></tr>
     996      <tr><td class="lineno" valign="top"></td><td class="lblock">      https URI scheme  <span class="delete">18</span></td><td> </td><td class="rblock">      https URI scheme  <span class="insert">17</span></td><td class="lineno" valign="top"></td></tr>
     997      <tr><td class="lineno" valign="top"></td><td class="lblock">                                                                         </td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     998      <tr><td class="lineno" valign="top"></td><td class="left">   I</td><td> </td><td class="right">   I</td><td class="lineno" valign="top"></td></tr>
     999      <tr><td class="lineno" valign="top"></td><td class="left">      inbound  9</td><td> </td><td class="right">      inbound  9</td><td class="lineno" valign="top"></td></tr>
     1000      <tr><td class="lineno" valign="top"></td><td class="left">      interception proxy  11</td><td> </td><td class="right">      interception proxy  11</td><td class="lineno" valign="top"></td></tr>
     1001      <tr><td class="lineno" valign="top"></td><td class="left">      intermediary  9</td><td> </td><td class="right">      intermediary  9</td><td class="lineno" valign="top"></td></tr>
     1002      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1003      <tr><td class="lineno" valign="top"></td><td class="left">   M</td><td> </td><td class="right">   M</td><td class="lineno" valign="top"></td></tr>
     1004      <tr><td class="lineno" valign="top"></td><td class="left">      Media Type</td><td> </td><td class="right">      Media Type</td><td class="lineno" valign="top"></td></tr>
     1005      <tr><td><a name="diff0055" /></td></tr>
     1006      <tr><td class="lineno" valign="top"></td><td class="lblock">         application/http  <span class="delete">62</span></td><td> </td><td class="rblock">         application/http  <span class="insert">63</span></td><td class="lineno" valign="top"></td></tr>
     1007      <tr><td class="lineno" valign="top"></td><td class="lblock">         message/http  <span class="delete">61</span></td><td> </td><td class="rblock">         message/http  <span class="insert">62</span></td><td class="lineno" valign="top"></td></tr>
     1008      <tr><td class="lineno" valign="top"></td><td class="left">      message  7</td><td> </td><td class="right">      message  7</td><td class="lineno" valign="top"></td></tr>
     1009      <tr><td><a name="diff0056" /></td></tr>
     1010      <tr><td class="lineno" valign="top"></td><td class="lblock">      message/http Media Type  6<span class="delete">1</span></td><td> </td><td class="rblock">      message/http Media Type  6<span class="insert">2</span></td><td class="lineno" valign="top"></td></tr>
     1011      <tr><td class="lineno" valign="top"></td><td class="left">      method  21</td><td> </td><td class="right">      method  21</td><td class="lineno" valign="top"></td></tr>
     1012      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1013      <tr><td class="lineno" valign="top"></td><td class="left">   N</td><td> </td><td class="right">   N</td><td class="lineno" valign="top"></td></tr>
     1014      <tr><td><a name="diff0057" /></td></tr>
     1015      <tr><td class="lineno" valign="top"></td><td class="lblock">      non-transforming proxy  4<span class="delete">8</span></td><td> </td><td class="rblock">      non-transforming proxy  4<span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>
     1016      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1017      <tr><td class="lineno" valign="top"></td><td class="left">   O</td><td> </td><td class="right">   O</td><td class="lineno" valign="top"></td></tr>
     1018      <tr><td class="lineno" valign="top"></td><td class="left">      origin server  7</td><td> </td><td class="right">      origin server  7</td><td class="lineno" valign="top"></td></tr>
     1019      <tr><td><a name="diff0058" /></td></tr>
     1020      <tr><td class="lineno" valign="top"></td><td class="lblock">      origin-form (of request-target)  <span class="delete">41</span></td><td> </td><td class="rblock">      origin-form (of request-target)  <span class="insert">42</span></td><td class="lineno" valign="top"></td></tr>
     1021      <tr><td class="lineno" valign="top"></td><td class="lblock">      outbound  <span class="delete">9</span></td><td> </td><td class="rblock">      outbound  <span class="insert">10</span></td><td class="lineno" valign="top"></td></tr>
     1022      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1023      <tr><td class="lineno" valign="top"></td><td class="left">   P</td><td> </td><td class="right">   P</td><td class="lineno" valign="top"></td></tr>
     1024      <tr><td><a name="diff0059" /></td></tr>
     1025      <tr><td class="lineno" valign="top"></td><td class="lblock">      phishing  6<span class="delete">6</span></td><td> </td><td class="rblock">      phishing  6<span class="insert">7</span></td><td class="lineno" valign="top"></td></tr>
     1026      <tr><td class="lineno" valign="top"></td><td class="left">      proxy  10</td><td> </td><td class="right">      proxy  10</td><td class="lineno" valign="top"></td></tr>
     1027      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1028      <tr><td class="lineno" valign="top"></td><td class="left">   R</td><td> </td><td class="right">   R</td><td class="lineno" valign="top"></td></tr>
     1029      <tr><td class="lineno" valign="top"></td><td class="left">      recipient  7</td><td> </td><td class="right">      recipient  7</td><td class="lineno" valign="top"></td></tr>
     1030      <tr><td class="lineno" valign="top"></td><td class="left">      request  7</td><td> </td><td class="right">      request  7</td><td class="lineno" valign="top"></td></tr>
     1031      <tr><td class="lineno" valign="top"></td><td class="left">      request-target  21</td><td> </td><td class="right">      request-target  21</td><td class="lineno" valign="top"></td></tr>
     1032      <tr><td class="lineno" valign="top"></td><td class="left">      resource  16</td><td> </td><td class="right">      resource  16</td><td class="lineno" valign="top"></td></tr>
     1033      <tr><td class="lineno" valign="top"></td><td class="left">      response  7</td><td> </td><td class="right">      response  7</td><td class="lineno" valign="top"></td></tr>
     1034      <tr><td class="lineno" valign="top"></td><td class="left">      reverse proxy  10</td><td> </td><td class="right">      reverse proxy  10</td><td class="lineno" valign="top"></td></tr>
     1035      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1036      <tr><td class="lineno" valign="top"></td><td class="left">   S</td><td> </td><td class="right">   S</td><td class="lineno" valign="top"></td></tr>
     1037      <tr><td class="lineno" valign="top"></td><td class="left">      sender  7</td><td> </td><td class="right">      sender  7</td><td class="lineno" valign="top"></td></tr>
     1038      <tr><td class="lineno" valign="top"></td><td class="left">      server  7</td><td> </td><td class="right">      server  7</td><td class="lineno" valign="top"></td></tr>
     1039      <tr><td class="lineno" valign="top"></td><td class="left">      spider  7</td><td> </td><td class="right">      spider  7</td><td class="lineno" valign="top"></td></tr>
     1040      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1041      <tr><td class="lineno" valign="top"></td><td class="left">   T</td><td> </td><td class="right">   T</td><td class="lineno" valign="top"></td></tr>
     1042      <tr><td class="lineno" valign="top"></td><td class="left">      target resource  40</td><td> </td><td class="right">      target resource  40</td><td class="lineno" valign="top"></td></tr>
     1043      <tr><td class="lineno" valign="top"></td><td class="left">      target URI  40</td><td> </td><td class="right">      target URI  40</td><td class="lineno" valign="top"></td></tr>
     1044      <tr><td><a name="diff0060" /></td></tr>
     1045      <tr><td class="lineno" valign="top"></td><td class="lblock">      TE header field  <span class="delete">38</span></td><td> </td><td class="rblock">      TE header field  <span class="insert">39</span></td><td class="lineno" valign="top"></td></tr>
     1046      <tr><td class="lineno" valign="top"></td><td class="lblock">      Trailer header field  <span class="delete">39</span></td><td> </td><td class="rblock">      Trailer header field  <span class="insert">40</span></td><td class="lineno" valign="top"></td></tr>
     1047      <tr><td class="lineno" valign="top"></td><td class="left">      Transfer-Encoding header field  28</td><td> </td><td class="right">      Transfer-Encoding header field  28</td><td class="lineno" valign="top"></td></tr>
     1048      <tr><td><a name="diff0061" /></td></tr>
     1049      <tr><td class="lineno" valign="top"></td><td class="lblock">      transforming proxy  4<span class="delete">8</span></td><td> </td><td class="rblock">      transforming proxy  4<span class="insert">9</span></td><td class="lineno" valign="top"></td></tr>
     1050      <tr><td class="lineno" valign="top"></td><td class="left">      transparent proxy  11</td><td> </td><td class="right">      transparent proxy  11</td><td class="lineno" valign="top"></td></tr>
     1051      <tr><td class="lineno" valign="top"></td><td class="left">      tunnel  10</td><td> </td><td class="right">      tunnel  10</td><td class="lineno" valign="top"></td></tr>
     1052      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1053      <tr><td class="lineno" valign="top"></td><td class="left">   U</td><td> </td><td class="right">   U</td><td class="lineno" valign="top"></td></tr>
     1054      <tr><td><a name="diff0062" /></td></tr>
     1055      <tr><td class="lineno" valign="top"></td><td class="lblock">      Upgrade header field  5<span class="delete">6</span></td><td> </td><td class="rblock">      Upgrade header field  5<span class="insert">7</span></td><td class="lineno" valign="top"></td></tr>
     1056      <tr><td class="lineno" valign="top"></td><td class="left">      upstream  9</td><td> </td><td class="right">      upstream  9</td><td class="lineno" valign="top"></td></tr>
     1057      <tr><td class="lineno" valign="top"></td><td class="left">      URI scheme</td><td> </td><td class="right">      URI scheme</td><td class="lineno" valign="top"></td></tr>
     1058      <tr><td><a name="diff0063" /></td></tr>
     1059      <tr><td class="lineno" valign="top"></td><td class="lblock">         http  <span class="delete">16</span></td><td> </td><td class="rblock">         http  <span class="insert">17</span></td><td class="lineno" valign="top"></td></tr>
     1060      <tr><td class="lineno" valign="top"></td><td class="lblock">         https  <span class="delete">18</span></td><td> </td><td class="rblock">         https  <span class="insert">17</span></td><td class="lineno" valign="top"></td></tr>
     1061      <tr><td class="lineno" valign="top"></td><td class="left">      user agent  7</td><td> </td><td class="right">      user agent  7</td><td class="lineno" valign="top"></td></tr>
     1062      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1063      <tr><td class="lineno" valign="top"></td><td class="left">   V</td><td> </td><td class="right">   V</td><td class="lineno" valign="top"></td></tr>
     1064      <tr><td><a name="diff0064" /></td></tr>
     1065      <tr><td class="lineno" valign="top"></td><td class="lblock">      Via header field  4<span class="delete">6</span></td><td> </td><td class="rblock">      Via header field  4<span class="insert">7</span></td><td class="lineno" valign="top"></td></tr>
     1066      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1067      <tr><td class="lineno" valign="top"></td><td class="left">Authors' Addresses</td><td> </td><td class="right">Authors' Addresses</td><td class="lineno" valign="top"></td></tr>
     1068      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1069      <tr><td class="lineno" valign="top"></td><td class="left">   Roy T. Fielding (editor)</td><td> </td><td class="right">   Roy T. Fielding (editor)</td><td class="lineno" valign="top"></td></tr>
     1070      <tr><td class="lineno" valign="top"></td><td class="left">   Adobe Systems Incorporated</td><td> </td><td class="right">   Adobe Systems Incorporated</td><td class="lineno" valign="top"></td></tr>
     1071      <tr><td class="lineno" valign="top"></td><td class="left">   345 Park Ave</td><td> </td><td class="right">   345 Park Ave</td><td class="lineno" valign="top"></td></tr>
     1072      <tr><td class="lineno" valign="top"></td><td class="left">   San Jose, CA  95110</td><td> </td><td class="right">   San Jose, CA  95110</td><td class="lineno" valign="top"></td></tr>
     1073      <tr><td class="lineno" valign="top"></td><td class="left">   USA</td><td> </td><td class="right">   USA</td><td class="lineno" valign="top"></td></tr>
     1074      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     1075      <tr><td class="lineno" valign="top"></td><td class="left">   EMail: fielding@gbiv.com</td><td> </td><td class="right">   EMail: fielding@gbiv.com</td><td class="lineno" valign="top"></td></tr>
    1291076
    1301077     <tr><td></td><td class="left"></td><td> </td><td class="right"></td><td></td></tr>
    131      <tr bgcolor="gray"><th colspan="5" align="center"><a name="end">&nbsp;End of changes. 7 change blocks.&nbsp;</a></th></tr>
    132      <tr class="stats"><td></td><th><i>20 lines changed or deleted</i></th><th><i> </i></th><th><i>6 lines changed or added</i></th><td></td></tr>
     1078     <tr bgcolor="gray"><th colspan="5" align="center"><a name="end">&nbsp;End of changes. 64 change blocks.&nbsp;</a></th></tr>
     1079     <tr class="stats"><td></td><th><i>260 lines changed or deleted</i></th><th><i> </i></th><th><i>248 lines changed or added</i></th><td></td></tr>
    1331080     <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>
    1341081   </table>
  • draft-ietf-httpbis/latest/auth48/rfc7231.abdiff.txt

    r2710 r2712  
    2424
    2525
    26 Section 11., paragraph 0:
     26INTRODUCTION, paragraph 14:
    2727OLD:
    2828
     
    142142        8.4.1.  Procedure  . . . . . . . . . . . . . . . . . . . . . . 81
    143143        8.4.2.  Registrations  . . . . . . . . . . . . . . . . . . . . 81
    144  
     144
     145NEW:
     146
     147    1. Introduction ....................................................6
     148       1.1. Conformance and Error Handling .............................6
     149       1.2. Syntax Notation ............................................6
     150    2. Resources .......................................................7
     151    3. Representations .................................................7
     152       3.1. Representation Metadata ....................................8
     153            3.1.1. Processing Representation Data ......................8
     154            3.1.2. Encoding for Compression or Integrity ..............11
     155            3.1.3. Audience Language ..................................13
     156            3.1.4. Identification .....................................14
     157       3.2. Representation Data .......................................17
     158       3.3. Payload Semantics .........................................17
     159       3.4. Content Negotiation .......................................18
     160            3.4.1. Proactive Negotiation ..............................19
     161            3.4.2. Reactive Negotiation ...............................20
     162    4. Request Methods ................................................21
     163       4.1. Overview ..................................................21
     164       4.2. Common Method Properties ..................................22
     165            4.2.1. Safe Methods .......................................22
     166            4.2.2. Idempotent Methods .................................23
     167            4.2.3. Cacheable Methods ..................................24
     168       4.3. Method Definitions ........................................24
     169            4.3.1. GET ................................................24
     170            4.3.2. HEAD ...............................................25
     171            4.3.3. POST ...............................................25
     172            4.3.4. PUT ................................................26
     173            4.3.5. DELETE .............................................29
     174            4.3.6. CONNECT ............................................30
     175            4.3.7. OPTIONS ............................................31
     176            4.3.8. TRACE ..............................................32
     177    5. Request Header Fields ..........................................33
     178       5.1. Controls ..................................................33
     179            5.1.1. Expect .............................................34
     180            5.1.2. Max-Forwards .......................................36
     181       5.2. Conditionals ..............................................36
     182       5.3. Content Negotiation .......................................37
     183            5.3.1. Quality Values .....................................37
     184            5.3.2. Accept .............................................38
     185            5.3.3. Accept-Charset .....................................40
     186            5.3.4. Accept-Encoding ....................................41
     187            5.3.5. Accept-Language ....................................42
     188       5.4. Authentication Credentials ................................44
     189       5.5. Request Context ...........................................44
     190            5.5.1. From ...............................................44
     191            5.5.2. Referer ............................................45
     192            5.5.3. User-Agent .........................................46
     193
     194
     195INTRODUCTION, paragraph 15:
     196OLD:
     197
    145198    9.  Security Considerations  . . . . . . . . . . . . . . . . . . . 81
    146199      9.1.  Attacks Based on File and Path Names . . . . . . . . . . . 82
     
    169222NEW:
    170223
    171     1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  6
    172       1.1.  Conformance and Error Handling . . . . . . . . . . . . . .  6
    173       1.2.  Syntax Notation  . . . . . . . . . . . . . . . . . . . . .  6
    174     2.  Resources  . . . . . . . . . . . . . . . . . . . . . . . . . .  7
    175     3.  Representations  . . . . . . . . . . . . . . . . . . . . . . .  7
    176       3.1.  Representation Metadata  . . . . . . . . . . . . . . . . .  8
    177         3.1.1.  Processing Representation Data . . . . . . . . . . . .  8
    178         3.1.2.  Encoding for Compression or Integrity  . . . . . . . . 11
    179         3.1.3.  Audience Language  . . . . . . . . . . . . . . . . . . 13
    180         3.1.4.  Identification . . . . . . . . . . . . . . . . . . . . 14
    181       3.2.  Representation Data  . . . . . . . . . . . . . . . . . . . 17
    182       3.3.  Payload Semantics  . . . . . . . . . . . . . . . . . . . . 17
    183       3.4.  Content Negotiation  . . . . . . . . . . . . . . . . . . . 18
    184         3.4.1.  Proactive Negotiation  . . . . . . . . . . . . . . . . 19
    185         3.4.2.  Reactive Negotiation . . . . . . . . . . . . . . . . . 20
    186     4.  Request Methods  . . . . . . . . . . . . . . . . . . . . . . . 21
    187       4.1.  Overview . . . . . . . . . . . . . . . . . . . . . . . . . 21
    188       4.2.  Common Method Properties . . . . . . . . . . . . . . . . . 22
    189         4.2.1.  Safe Methods . . . . . . . . . . . . . . . . . . . . . 22
    190         4.2.2.  Idempotent Methods . . . . . . . . . . . . . . . . . . 23
    191         4.2.3.  Cacheable Methods  . . . . . . . . . . . . . . . . . . 24
    192       4.3.  Method Definitions . . . . . . . . . . . . . . . . . . . . 24
    193         4.3.1.  GET  . . . . . . . . . . . . . . . . . . . . . . . . . 24
    194         4.3.2.  HEAD . . . . . . . . . . . . . . . . . . . . . . . . . 25
    195         4.3.3.  POST . . . . . . . . . . . . . . . . . . . . . . . . . 25
    196         4.3.4.  PUT  . . . . . . . . . . . . . . . . . . . . . . . . . 26
    197         4.3.5.  DELETE . . . . . . . . . . . . . . . . . . . . . . . . 29
    198         4.3.6.  CONNECT  . . . . . . . . . . . . . . . . . . . . . . . 30
    199         4.3.7.  OPTIONS  . . . . . . . . . . . . . . . . . . . . . . . 31
    200         4.3.8.  TRACE  . . . . . . . . . . . . . . . . . . . . . . . . 32
    201     5.  Request Header Fields  . . . . . . . . . . . . . . . . . . . . 33
    202       5.1.  Controls . . . . . . . . . . . . . . . . . . . . . . . . . 33
    203         5.1.1.  Expect . . . . . . . . . . . . . . . . . . . . . . . . 34
    204         5.1.2.  Max-Forwards . . . . . . . . . . . . . . . . . . . . . 36
     224    6. Response Status Codes ..........................................47
     225       6.1. Overview of Status Codes ..................................48
     226       6.2. Informational 1xx .........................................50
     227            6.2.1. 100 Continue .......................................50
     228            6.2.2. 101 Switching Protocols ............................50
     229       6.3. Successful 2xx ............................................51
     230            6.3.1. 200 OK .............................................51
     231            6.3.2. 201 Created ........................................52
     232            6.3.3. 202 Accepted .......................................52
     233            6.3.4. 203 Non-Authoritative Information ..................52
     234            6.3.5. 204 No Content .....................................53
     235            6.3.6. 205 Reset Content ..................................53
     236       6.4. Redirection 3xx ...........................................54
     237            6.4.1. 300 Multiple Choices ...............................55
     238            6.4.2. 301 Moved Permanently ..............................56
     239            6.4.3. 302 Found ..........................................56
     240            6.4.4. 303 See Other ......................................57
     241            6.4.5. 305 Use Proxy ......................................58
     242            6.4.6. 306 (Unused) .......................................58
     243            6.4.7. 307 Temporary Redirect .............................58
     244       6.5. Client Error 4xx ..........................................58
     245            6.5.1. 400 Bad Request ....................................58
     246            6.5.2. 402 Payment Required ...............................59
     247            6.5.3. 403 Forbidden ......................................59
     248            6.5.4. 404 Not Found ......................................59
     249            6.5.5. 405 Method Not Allowed .............................59
     250            6.5.6. 406 Not Acceptable .................................60
     251            6.5.7. 408 Request Timeout ................................60
     252            6.5.8. 409 Conflict .......................................60
     253            6.5.9. 410 Gone ...........................................60
     254            6.5.10. 411 Length Required ...............................61
     255            6.5.11. 413 Payload Too Large .............................61
     256            6.5.12. 414 URI Too Long ..................................61
     257            6.5.13. 415 Unsupported Media Type ........................62
     258            6.5.14. 417 Expectation Failed ............................62
     259            6.5.15. 426 Upgrade Required ..............................62
     260       6.6. Server Error 5xx ..........................................62
     261            6.6.1. 500 Internal Server Error ..........................63
     262            6.6.2. 501 Not Implemented ................................63
     263            6.6.3. 502 Bad Gateway ....................................63
     264            6.6.4. 503 Service Unavailable ............................63
     265            6.6.5. 504 Gateway Timeout ................................63
     266            6.6.6. 505 HTTP Version Not Supported .....................64
     267    7. Response Header Fields .........................................64
     268       7.1. Control Data ..............................................64
     269            7.1.1. Origination Date ...................................65
     270            7.1.2. Location ...........................................68
     271            7.1.3. Retry-After ........................................69
     272            7.1.4. Vary ...............................................70
     273       7.2. Validator Header Fields ...................................71
     274       7.3. Authentication Challenges .................................72
     275       7.4. Response Context ..........................................72
     276            7.4.1. Allow ..............................................72
     277            7.4.2. Server .............................................73
     278    8. IANA Considerations ............................................73
     279       8.1. Method Registry ...........................................73
     280            8.1.1. Procedure ..........................................74
     281            8.1.2. Considerations for New Methods .....................74
     282            8.1.3. Registrations ......................................75
     283       8.2. Status Code Registry ......................................75
     284            8.2.1. Procedure ..........................................75
     285            8.2.2. Considerations for New Status Codes ................76
     286            8.2.3. Registrations ......................................76
     287       8.3. Header Field Registry .....................................77
     288            8.3.1. Considerations for New Header Fields ...............78
     289            8.3.2. Registrations ......................................80
     290       8.4. Content Coding Registry ...................................81
     291            8.4.1. Procedure ..........................................81
     292            8.4.2. Registrations ......................................81
     293    9. Security Considerations ........................................81
     294       9.1. Attacks Based on File and Path Names ......................82
     295       9.2. Attacks Based on Command, Code, or Query Injection ........82
     296       9.3. Disclosure of Personal Information ........................83
     297       9.4. Disclosure of Sensitive Information in URIs ...............83
     298       9.5. Disclosure of Fragment after Redirects ....................84
     299       9.6. Disclosure of Product Information .........................84
     300       9.7. Browser Fingerprinting ....................................84
     301    10. Acknowledgments ...............................................85
     302    11. References ....................................................85
     303       11.1. Normative References .....................................85
     304       11.2. Informative References ...................................86
     305    Appendix A. Differences between HTTP and MIME .....................89
     306       A.1. MIME-Version ..............................................89
     307       A.2. Conversion to Canonical Form ..............................89
     308       A.3. Conversion of Date Formats ................................90
     309       A.4. Conversion of Content-Encoding ..........................90
     310       A.5. Conversion of Content-Transfer-Encoding .................90
     311       A.6. MHTML and Line Length Limitations .........................90
     312    Appendix B. Changes from RFC 2616 .................................91
     313    Appendix C. Imported ABNF .........................................93
     314    Appendix D. Collected ABNF ........................................94
     315    Index .............................................................97
     316
     317
     318Section 2., paragraph 3:
     319OLD:
     320
     321    One design goal of HTTP is to separate resource identification from
     322    request semantics, which is made possible by vesting the request
     323    semantics in the request method (Section 4) and a few request-
     324    modifying header fields (Section 5).  If there is a conflict between
     325    the method semantics and any semantic implied by the URI itself, as
     326    described in Section 4.2.1, the method semantics take precedence.
     327
     328NEW:
     329
     330    One design goal of HTTP is to separate resource identification from
     331    request semantics, which is made possible by vesting the request
     332    semantics in the request method (Section 4) and a few
     333    request-modifying header fields (Section 5).  If there is a conflict
     334    between the method semantics and any semantic implied by the URI
     335    itself, as described in Section 4.2.1, the method semantics take
     336    precedence.
     337
     338
     339Section 3.1.3.1., paragraph 2:
     340OLD:
     341
     342    HTTP uses language tags within the Accept-Language and Content-
     343    Language header fields.  Accept-Language uses the broader language-
     344    range production defined in Section 5.3.5, whereas Content-Language
     345    uses the language-tag production defined below.
     346
     347NEW:
     348
     349    HTTP uses language tags within the Accept-Language and
     350    Content-Language header fields.  Accept-Language uses the broader
     351    language-range production defined in Section 5.3.5, whereas
     352    Content-Language uses the language-tag production defined below.
     353
     354
     355Section 3.1.4.2., paragraph 6:
     356OLD:
     357
     358    o  For a response to a GET or HEAD request, this is an indication
     359       that the effective request URI refers to a resource that is
     360       subject to content negotiation and the Content-Location field-
     361       value is a more specific identifier for the selected
     362       representation.
     363
     364NEW:
     365
     366    o  For a response to a GET or HEAD request, this is an indication
     367       that the effective request URI refers to a resource that is
     368       subject to content negotiation and the Content-Location
     369       field-value is a more specific identifier for the selected
     370       representation.
     371
     372
     373Section 4.1., paragraph 6:
     374OLD:
     375
     376    This specification defines a number of standardized methods that are
     377    commonly used in HTTP, as outlined by the following table.  By
     378    convention, standardized methods are defined in all-uppercase US-
     379    ASCII letters.
     380
     381NEW:
     382
     383    This specification defines a number of standardized methods that are
     384    commonly used in HTTP, as outlined by the following table.  By
     385    convention, standardized methods are defined in all-uppercase
     386    US-ASCII letters.
     387
     388
     389Section 4.3.3., paragraph 8:
     390OLD:
     391
     392    Responses to POST requests are only cacheable when they include
     393    explicit freshness information (see Section 4.2.1 of [RFC7234]).
     394    However, POST caching is not widely implemented.  For cases where an
     395    origin server wishes the client to be able to cache the result of a
     396    POST in a way that can be reused by a later GET, the origin server
     397    MAY send a 200 (OK) response containing the result and a Content-
     398    Location header field that has the same value as the POST's effective
     399    request URI (Section 3.1.4.2).
     400
     401NEW:
     402
     403    Responses to POST requests are only cacheable when they include
     404    explicit freshness information (see Section 4.2.1 of [RFC7234]).
     405    However, POST caching is not widely implemented.  For cases where an
     406    origin server wishes the client to be able to cache the result of a
     407    POST in a way that can be reused by a later GET, the origin server
     408    MAY send a 200 (OK) response containing the result and a
     409    Content-Location header field that has the same value as the POST's
     410    effective request URI (Section 3.1.4.2).
     411
     412
     413Section 5.1.1., paragraph 5:
     414OLD:
     415
     416    A 100-continue expectation informs recipients that the client is
     417    about to send a (presumably large) message body in this request and
     418    wishes to receive a 100 (Continue) interim response if the request-
     419    line and header fields are not sufficient to cause an immediate
     420    success, redirect, or error response.  This allows the client to wait
     421    for an indication that it is worthwhile to send the message body
     422    before actually doing so, which can improve efficiency when the
     423    message body is huge or when the client anticipates that an error is
     424    likely (e.g., when sending a state-changing method, for the first
     425    time, without previously verified authentication credentials).
     426
     427NEW:
     428
     429    A 100-continue expectation informs recipients that the client is
     430    about to send a (presumably large) message body in this request and
     431    wishes to receive a 100 (Continue) interim response if the
     432    request-line and header fields are not sufficient to cause an
     433    immediate success, redirect, or error response.  This allows the
     434    client to wait for an indication that it is worthwhile to send the
     435    message body before actually doing so, which can improve efficiency
     436    when the message body is huge or when the client anticipates that an
     437    error is likely (e.g., when sending a state-changing method, for the
     438    first time, without previously verified authentication credentials).
     439
     440
     441Section 5.1.1., paragraph 19:
     442OLD:
     443
     444    An origin server MUST, upon receiving an HTTP/1.1 (or later) request-
     445    line and a complete header section that contains a 100-continue
     446    expectation and indicates a request message body will follow, either
     447    send an immediate response with a final status code, if that status
     448    can be determined by examining just the request-line and header
     449    fields, or send an immediate 100 (Continue) response to encourage the
     450    client to send the request's message body.  The origin server MUST
     451    NOT wait for the message body before sending the 100 (Continue)
     452    response.
     453
     454NEW:
     455
     456    An origin server MUST, upon receiving an HTTP/1.1 (or later)
     457    request-line and a complete header section that contains a
     458    100-continue expectation and indicates a request message body will
     459    follow, either send an immediate response with a final status code,
     460    if that status can be determined by examining just the request-line
     461    and header fields, or send an immediate 100 (Continue) response to
     462    encourage the client to send the request's message body.  The origin
     463    server MUST NOT wait for the message body before sending the 100
     464    (Continue) response.
     465
     466
     467Section 5.3.2., paragraph 1:
     468OLD:
     469
     470    The "Accept" header field can be used by user agents to specify
     471    response media types that are acceptable.  Accept header fields can
     472    be used to indicate that the request is specifically limited to a
     473    small set of desired types, as in the case of a request for an in-
     474    line image.
     475
     476NEW:
     477
     478    The "Accept" header field can be used by user agents to specify
     479    response media types that are acceptable.  Accept header fields can
     480    be used to indicate that the request is specifically limited to a
     481    small set of desired types, as in the case of a request for an
     482    in-line image.
     483
     484
     485Section 5.3.3., paragraph 5:
     486OLD:
     487
     488    The special value "*", if present in the Accept-Charset field,
     489    matches every charset that is not mentioned elsewhere in the Accept-
     490    Charset field.  If no "*" is present in an Accept-Charset field, then
     491    any charsets not explicitly mentioned in the field are considered
     492    "not acceptable" to the client.
     493
     494NEW:
     495
     496    The special value "*", if present in the Accept-Charset field,
     497    matches every charset that is not mentioned elsewhere in the
     498    Accept-Charset field.  If no "*" is present in an Accept-Charset
     499    field, then any charsets not explicitly mentioned in the field are
     500    considered "not acceptable" to the client.
     501
     502
     503Section 2., paragraph 0:
     504OLD:
     505
     506    2.  If the representation has no content-coding, then it is
     507        acceptable by default unless specifically excluded by the Accept-
     508        Encoding field stating either "identity;q=0" or "*;q=0" without a
     509        more specific entry for "identity".
     510
     511NEW:
     512
     513    2.  If the representation has no content-coding, then it is
     514        acceptable by default unless specifically excluded by the
     515        Accept-Encoding field stating either "identity;q=0" or "*;q=0"
     516        without a more specific entry for "identity".
     517
     518
     519Section 2., paragraph 1:
     520OLD:
     521
     522    3.  If the representation's content-coding is one of the content-
     523        codings listed in the Accept-Encoding field, then it is
     524        acceptable unless it is accompanied by a qvalue of 0.  (As
     525        defined in Section 5.3.1, a qvalue of 0 means "not acceptable".)
     526
     527NEW:
     528
     529    3.  If the representation's content-coding is one of the
     530        content-codings listed in the Accept-Encoding field, then it is
     531        acceptable unless it is accompanied by a qvalue of 0.  (As
     532        defined in Section 5.3.1, a qvalue of 0 means "not acceptable".)
     533
     534
     535Section 5.3.5., paragraph 10:
     536OLD:
     537
     538    Since intelligibility is highly dependent on the individual user,
     539    user agents need to allow user control over the linguistic preference
     540    (either through configuration of the user agent itself or by
     541    defaulting to a user controllable system setting).  A user agent that
     542    does not provide such control to the user MUST NOT send an Accept-
     543    Language header field.
     544
     545NEW:
     546
     547    Since intelligibility is highly dependent on the individual user,
     548    user agents need to allow user control over the linguistic preference
     549    (either through configuration of the user agent itself or by
     550    defaulting to a user controllable system setting).  A user agent that
     551    does not provide such control to the user MUST NOT send an
     552    Accept-Language header field.
     553
     554
     555Section 5.5.3., paragraph 5:
     556OLD:
     557
     558    A sender SHOULD limit generated product identifiers to what is
     559    necessary to identify the product; a sender MUST NOT generate
     560    advertising or other nonessential information within the product
     561    identifier.  A sender SHOULD NOT generate information in product-
     562    version that is not a version identifier (i.e., successive versions
     563    of the same product name ought to differ only in the product-version
     564    portion of the product identifier).
     565
     566NEW:
     567
     568    A sender SHOULD limit generated product identifiers to what is
     569    necessary to identify the product; a sender MUST NOT generate
     570    advertising or other nonessential information within the product
     571    identifier.  A sender SHOULD NOT generate information in
     572    product-version that is not a version identifier (i.e., successive
     573    versions of the same product name ought to differ only in the
     574    product-version portion of the product identifier).
     575
     576
     577Section 6.1., paragraph 3:
     578OLD:
     579
     580    +------+-------------------------------+--------------------------+
     581    | Code | Reason-Phrase                 | Defined in...            |
     582    +------+-------------------------------+--------------------------+
     583    | 100  | Continue                      | Section 6.2.1            |
     584    | 101  | Switching Protocols           | Section 6.2.2            |
     585    | 200  | OK                            | Section 6.3.1            |
     586    | 201  | Created                       | Section 6.3.2            |
     587    | 202  | Accepted                      | Section 6.3.3            |
     588    | 203  | Non-Authoritative Information | Section 6.3.4            |
     589    | 204  | No Content                    | Section 6.3.5            |
     590    | 205  | Reset Content                 | Section 6.3.6            |
     591    | 206  | Partial Content               | Section 4.1 of [RFC7233] |
     592    | 300  | Multiple Choices              | Section 6.4.1            |
     593    | 301  | Moved Permanently             | Section 6.4.2            |
     594    | 302  | Found                         | Section 6.4.3            |
     595    | 303  | See Other                     | Section 6.4.4            |
     596    | 304  | Not Modified                  | Section 4.1 of [RFC7232] |
     597    | 305  | Use Proxy                     | Section 6.4.5            |
     598    | 307  | Temporary Redirect            | Section 6.4.7            |
     599    | 400  | Bad Request                   | Section 6.5.1            |
     600    | 401  | Unauthorized                  | Section 3.1 of [RFC7235] |
     601    | 402  | Payment Required              | Section 6.5.2            |
     602    | 403  | Forbidden                     | Section 6.5.3            |
     603    | 404  | Not Found                     | Section 6.5.4            |
     604    | 405  | Method Not Allowed            | Section 6.5.5            |
     605    | 406  | Not Acceptable                | Section 6.5.6            |
     606    | 407  | Proxy Authentication Required | Section 3.2 of [RFC7235] |
     607    | 408  | Request Timeout               | Section 6.5.7            |
     608    | 409  | Conflict                      | Section 6.5.8            |
     609    | 410  | Gone                          | Section 6.5.9            |
     610    | 411  | Length Required               | Section 6.5.10           |
     611    | 412  | Precondition Failed           | Section 4.2 of [RFC7232] |
     612    | 413  | Payload Too Large             | Section 6.5.11           |
     613    | 414  | URI Too Long                  | Section 6.5.12           |
     614    | 415  | Unsupported Media Type        | Section 6.5.13           |
     615    | 416  | Range Not Satisfiable         | Section 4.4 of [RFC7233] |
     616    | 417  | Expectation Failed            | Section 6.5.14           |
     617    | 426  | Upgrade Required              | Section 6.5.15           |
     618    | 500  | Internal Server Error         | Section 6.6.1            |
     619    | 501  | Not Implemented               | Section 6.6.2            |
     620    | 502  | Bad Gateway                   | Section 6.6.3            |
     621    | 503  | Service Unavailable           | Section 6.6.4            |
     622    | 504  | Gateway Timeout               | Section 6.6.5            |
     623    | 505  | HTTP Version Not Supported    | Section 6.6.6            |
     624    +------+-------------------------------+--------------------------+
    205625 
    206       5.2.  Conditionals . . . . . . . . . . . . . . . . . . . . . . . 36
    207       5.3.  Content Negotiation  . . . . . . . . . . . . . . . . . . . 37
    208         5.3.1.  Quality Values . . . . . . . . . . . . . . . . . . . . 37
    209         5.3.2.  Accept . . . . . . . . . . . . . . . . . . . . . . . . 38
    210         5.3.3.  Accept-Charset . . . . . . . . . . . . . . . . . . . . 40
    211         5.3.4.  Accept-Encoding  . . . . . . . . . . . . . . . . . . . 41
    212         5.3.5.  Accept-Language  . . . . . . . . . . . . . . . . . . . 42
    213       5.4.  Authentication Credentials . . . . . . . . . . . . . . . . 43
    214       5.5.  Request Context  . . . . . . . . . . . . . . . . . . . . . 44
    215         5.5.1.  From . . . . . . . . . . . . . . . . . . . . . . . . . 44
    216         5.5.2.  Referer  . . . . . . . . . . . . . . . . . . . . . . . 45
    217         5.5.3.  User-Agent . . . . . . . . . . . . . . . . . . . . . . 46
    218     6.  Response Status Codes  . . . . . . . . . . . . . . . . . . . . 47
    219       6.1.  Overview of Status Codes . . . . . . . . . . . . . . . . . 48
    220       6.2.  Informational 1xx  . . . . . . . . . . . . . . . . . . . . 50
    221         6.2.1.  100 Continue . . . . . . . . . . . . . . . . . . . . . 50
    222         6.2.2.  101 Switching Protocols  . . . . . . . . . . . . . . . 50
    223       6.3.  Successful 2xx . . . . . . . . . . . . . . . . . . . . . . 51
    224         6.3.1.  200 OK . . . . . . . . . . . . . . . . . . . . . . . . 51
    225         6.3.2.  201 Created  . . . . . . . . . . . . . . . . . . . . . 51
    226         6.3.3.  202 Accepted . . . . . . . . . . . . . . . . . . . . . 52
    227         6.3.4.  203 Non-Authoritative Information  . . . . . . . . . . 52
    228         6.3.5.  204 No Content . . . . . . . . . . . . . . . . . . . . 53
    229         6.3.6.  205 Reset Content  . . . . . . . . . . . . . . . . . . 53
    230       6.4.  Redirection 3xx  . . . . . . . . . . . . . . . . . . . . . 54
    231         6.4.1.  300 Multiple Choices . . . . . . . . . . . . . . . . . 55
    232         6.4.2.  301 Moved Permanently  . . . . . . . . . . . . . . . . 56
    233         6.4.3.  302 Found  . . . . . . . . . . . . . . . . . . . . . . 56
    234         6.4.4.  303 See Other  . . . . . . . . . . . . . . . . . . . . 57
    235         6.4.5.  305 Use Proxy  . . . . . . . . . . . . . . . . . . . . 57
    236         6.4.6.  306 (Unused) . . . . . . . . . . . . . . . . . . . . . 57
    237         6.4.7.  307 Temporary Redirect . . . . . . . . . . . . . . . . 58
    238       6.5.  Client Error 4xx . . . . . . . . . . . . . . . . . . . . . 58
    239         6.5.1.  400 Bad Request  . . . . . . . . . . . . . . . . . . . 58
    240         6.5.2.  402 Payment Required . . . . . . . . . . . . . . . . . 58
    241         6.5.3.  403 Forbidden  . . . . . . . . . . . . . . . . . . . . 58
    242         6.5.4.  404 Not Found  . . . . . . . . . . . . . . . . . . . . 59
    243         6.5.5.  405 Method Not Allowed . . . . . . . . . . . . . . . . 59
    244         6.5.6.  406 Not Acceptable . . . . . . . . . . . . . . . . . . 59
    245         6.5.7.  408 Request Timeout  . . . . . . . . . . . . . . . . . 60
    246         6.5.8.  409 Conflict . . . . . . . . . . . . . . . . . . . . . 60
    247         6.5.9.  410 Gone . . . . . . . . . . . . . . . . . . . . . . . 60
    248         6.5.10. 411 Length Required  . . . . . . . . . . . . . . . . . 61
    249         6.5.11. 413 Payload Too Large  . . . . . . . . . . . . . . . . 61
    250         6.5.12. 414 URI Too Long . . . . . . . . . . . . . . . . . . . 61
    251         6.5.13. 415 Unsupported Media Type . . . . . . . . . . . . . . 61
    252         6.5.14. 417 Expectation Failed . . . . . . . . . . . . . . . . 62
    253         6.5.15. 426 Upgrade Required . . . . . . . . . . . . . . . . . 62
     626    Note that this list is not exhaustive -- it does not include
     627    extension status codes defined in other specifications.  The complete
     628    list of status codes is maintained by IANA.  See Section 8.2 for
     629    details.
     630
     631NEW:
     632
     633    +------+-------------------------------+--------------------------+
     634    | Code | Reason-Phrase                 | Defined in...            |
     635    +------+-------------------------------+--------------------------+
     636    | 100  | Continue                      | Section 6.2.1            |
     637    | 101  | Switching Protocols           | Section 6.2.2            |
     638    | 200  | OK                            | Section 6.3.1            |
     639    | 201  | Created                       | Section 6.3.2            |
     640    | 202  | Accepted                      | Section 6.3.3            |
     641    | 203  | Non-Authoritative Information | Section 6.3.4            |
     642    | 204  | No Content                    | Section 6.3.5            |
     643    | 205  | Reset Content                 | Section 6.3.6            |
     644    | 206  | Partial Content               | Section 4.1 of [RFC7233] |
     645    | 300  | Multiple Choices              | Section 6.4.1            |
     646    | 301  | Moved Permanently             | Section 6.4.2            |
     647    | 302  | Found                         | Section 6.4.3            |
     648    | 303  | See Other                     | Section 6.4.4            |
     649    | 304  | Not Modified                  | Section 4.1 of [RFC7232] |
     650    | 305  | Use Proxy                     | Section 6.4.5            |
     651    | 307  | Temporary Redirect            | Section 6.4.7            |
     652    | 400  | Bad Request                   | Section 6.5.1            |
     653    | 401  | Unauthorized                  | Section 3.1 of [RFC7235] |
     654    | 402  | Payment Required              | Section 6.5.2            |
     655    | 403  | Forbidden                     | Section 6.5.3            |
     656    | 404  | Not Found                     | Section 6.5.4            |
     657    | 405  | Method Not Allowed            | Section 6.5.5            |
     658    | 406  | Not Acceptable                | Section 6.5.6            |
     659    | 407  | Proxy Authentication Required | Section 3.2 of [RFC7235] |
     660    | 408  | Request Timeout               | Section 6.5.7            |
     661    | 409  | Conflict                      | Section 6.5.8            |
     662    | 410  | Gone                          | Section 6.5.9            |
     663    | 411  | Length Required               | Section 6.5.10           |
     664    | 412  | Precondition Failed           | Section 4.2 of [RFC7232] |
     665    | 413  | Payload Too Large             | Section 6.5.11           |
     666    | 414  | URI Too Long                  | Section 6.5.12           |
     667    | 415  | Unsupported Media Type        | Section 6.5.13           |
     668    | 416  | Range Not Satisfiable         | Section 4.4 of [RFC7233] |
     669    | 417  | Expectation Failed            | Section 6.5.14           |
     670    | 426  | Upgrade Required              | Section 6.5.15           |
     671    | 500  | Internal Server Error         | Section 6.6.1            |
     672    | 501  | Not Implemented               | Section 6.6.2            |
     673    | 502  | Bad Gateway                   | Section 6.6.3            |
     674    | 503  | Service Unavailable           | Section 6.6.4            |
     675    | 504  | Gateway Timeout               | Section 6.6.5            |
     676    | 505  | HTTP Version Not Supported    | Section 6.6.6            |
     677    +------+-------------------------------+--------------------------+
     678    Note that this list is not exhaustive -- it does not include
     679    extension status codes defined in other specifications.  The complete
     680    list of status codes is maintained by IANA.  See Section 8.2 for
     681    details.
     682
     683
     684Section 6.2.1., paragraph 2:
     685OLD:
     686
     687    When the request contains an Expect header field that includes a 100-
     688    continue expectation, the 100 response indicates that the server
     689    wishes to receive the request payload body, as described in
     690    Section 5.1.1.  The client ought to continue sending the request and
     691    discard the 100 response.
     692
     693NEW:
     694
     695    When the request contains an Expect header field that includes a
     696    100-continue expectation, the 100 response indicates that the server
     697    wishes to receive the request payload body, as described in
     698    Section 5.1.1.  The client ought to continue sending the request and
     699    discard the 100 response.
     700
     701
     702Section 6.3.2., paragraph 2:
     703OLD:
     704
     705    The 201 response payload typically describes and links to the
     706    resource(s) created.  See Section 7.2 for a discussion of the meaning
     707    and purpose of validator header fields, such as ETag and Last-
     708    Modified, in a 201 response.
     709
     710NEW:
     711
     712    The 201 response payload typically describes and links to the
     713    resource(s) created.  See Section 7.2 for a discussion of the meaning
     714    and purpose of validator header fields, such as ETag and
     715    Last-Modified, in a 201 response.
     716
     717
     718Section 6.5.11., paragraph 2:
     719OLD:
     720
     721    If the condition is temporary, the server SHOULD generate a Retry-
     722    After header field to indicate that it is temporary and after what
     723    time the client MAY try again.
     724
     725NEW:
     726
     727    If the condition is temporary, the server SHOULD generate a
     728    Retry-After header field to indicate that it is temporary and after
     729    what time the client MAY try again.
     730
     731
     732Section 6.5.13., paragraph 1:
     733OLD:
     734
     735    The 415 (Unsupported Media Type) status code indicates that the
     736    origin server is refusing to service the request because the payload
     737    is in a format not supported by this method on the target resource.
     738    The format problem might be due to the request's indicated Content-
     739    Type or Content-Encoding, or as a result of inspecting the data
     740    directly.
     741
     742NEW:
     743
     744    The 415 (Unsupported Media Type) status code indicates that the
     745    origin server is refusing to service the request because the payload
     746    is in a format not supported by this method on the target resource.
     747    The format problem might be due to the request's indicated
     748    Content-Type or Content-Encoding, or as a result of inspecting the
     749    data directly.
     750
     751
     752Section 7., paragraph 1:
     753OLD:
     754
     755    The response header fields allow the server to pass additional
     756    information about the response beyond what is placed in the status-
     757    line.  These header fields give information about the server, about
     758    further access to the target resource, or about related resources.
     759
     760NEW:
     761
     762    The response header fields allow the server to pass additional
     763    information about the response beyond what is placed in the
     764    status-line.  These header fields give information about the server,
     765    about further access to the target resource, or about related
     766    resources.
     767
     768
     769Section 7.1.1.1., paragraph 7:
     770OLD:
     771
     772    A recipient that parses a timestamp value in an HTTP header field
     773    MUST accept all three HTTP-date formats.  When a sender generates a
     774    header field that contains one or more timestamps defined as HTTP-
     775    date, the sender MUST generate those timestamps in the IMF-fixdate
     776    format.
     777
     778NEW:
     779
     780    A recipient that parses a timestamp value in an HTTP header field
     781    MUST accept all three HTTP-date formats.  When a sender generates a
     782    header field that contains one or more timestamps defined as
     783    HTTP-date, the sender MUST generate those timestamps in the
     784    IMF-fixdate format.
     785
     786
     787Section 7.1.1.1., paragraph 18:
     788OLD:
     789
     790      obs-date     = rfc850-date / asctime-date
     791      rfc850-date  = day-name-l "," SP date2 SP time-of-day SP GMT
     792      date2        = day "-" month "-" 2DIGIT
     793                   ; e.g., 02-Jun-82
     794
     795NEW:
     796
     797      obs-date     = rfc850-date / asctime-date
    254798 
    255       6.6.  Server Error 5xx . . . . . . . . . . . . . . . . . . . . . 62
    256         6.6.1.  500 Internal Server Error  . . . . . . . . . . . . . . 62
    257         6.6.2.  501 Not Implemented  . . . . . . . . . . . . . . . . . 63
    258         6.6.3.  502 Bad Gateway  . . . . . . . . . . . . . . . . . . . 63
    259         6.6.4.  503 Service Unavailable  . . . . . . . . . . . . . . . 63
    260         6.6.5.  504 Gateway Timeout  . . . . . . . . . . . . . . . . . 63
    261         6.6.6.  505 HTTP Version Not Supported . . . . . . . . . . . . 63
    262     7.  Response Header Fields . . . . . . . . . . . . . . . . . . . . 64
    263       7.1.  Control Data . . . . . . . . . . . . . . . . . . . . . . . 64
    264         7.1.1.  Origination Date . . . . . . . . . . . . . . . . . . . 64
    265         7.1.2.  Location . . . . . . . . . . . . . . . . . . . . . . . 68
    266         7.1.3.  Retry-After  . . . . . . . . . . . . . . . . . . . . . 69
    267         7.1.4.  Vary . . . . . . . . . . . . . . . . . . . . . . . . . 70
    268       7.2.  Validator Header Fields  . . . . . . . . . . . . . . . . . 71
    269       7.3.  Authentication Challenges  . . . . . . . . . . . . . . . . 72
    270       7.4.  Response Context . . . . . . . . . . . . . . . . . . . . . 72
    271         7.4.1.  Allow  . . . . . . . . . . . . . . . . . . . . . . . . 72
    272         7.4.2.  Server . . . . . . . . . . . . . . . . . . . . . . . . 73
    273     8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 73
    274       8.1.  Method Registry  . . . . . . . . . . . . . . . . . . . . . 74
    275         8.1.1.  Procedure  . . . . . . . . . . . . . . . . . . . . . . 74
    276         8.1.2.  Considerations for New Methods . . . . . . . . . . . . 74
    277         8.1.3.  Registrations  . . . . . . . . . . . . . . . . . . . . 75
    278       8.2.  Status Code Registry . . . . . . . . . . . . . . . . . . . 75
    279         8.2.1.  Procedure  . . . . . . . . . . . . . . . . . . . . . . 75
    280         8.2.2.  Considerations for New Status Codes  . . . . . . . . . 76
    281         8.2.3.  Registrations  . . . . . . . . . . . . . . . . . . . . 76
    282       8.3.  Header Field Registry  . . . . . . . . . . . . . . . . . . 77
    283         8.3.1.  Considerations for New Header Fields . . . . . . . . . 78
    284         8.3.2.  Registrations  . . . . . . . . . . . . . . . . . . . . 80
    285       8.4.  Content Coding Registry  . . . . . . . . . . . . . . . . . 80
    286         8.4.1.  Procedure  . . . . . . . . . . . . . . . . . . . . . . 81
    287         8.4.2.  Registrations  . . . . . . . . . . . . . . . . . . . . 81
    288     9.  Security Considerations  . . . . . . . . . . . . . . . . . . . 81
    289       9.1.  Attacks Based on File and Path Names . . . . . . . . . . . 82
    290       9.2.  Attacks Based on Command, Code, or Query Injection . . . . 82
    291       9.3.  Disclosure of Personal Information . . . . . . . . . . . . 83
    292       9.4.  Disclosure of Sensitive Information in URIs  . . . . . . . 83
    293       9.5.  Disclosure of Fragment after Redirects . . . . . . . . . . 83
    294       9.6.  Disclosure of Product Information  . . . . . . . . . . . . 84
    295       9.7.  Browser Fingerprinting . . . . . . . . . . . . . . . . . . 84
    296     10. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 85
    297     11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 85
    298       11.1. Normative References . . . . . . . . . . . . . . . . . . . 85
    299       11.2. Informative References . . . . . . . . . . . . . . . . . . 86
    300     Appendix A.  Differences between HTTP and MIME . . . . . . . . . . 88
    301       A.1.  MIME-Version . . . . . . . . . . . . . . . . . . . . . . . 88
    302       A.2.  Conversion to Canonical Form . . . . . . . . . . . . . . . 89
    303       A.3.  Conversion of Date Formats . . . . . . . . . . . . . . . . 89
    304       A.4.  Conversion of Content-Encoding . . . . . . . . . . . . . . 89
    305       A.5.  Conversion of Content-Transfer-Encoding  . . . . . . . . . 90
    306       A.6.  MHTML and Line Length Limitations  . . . . . . . . . . . . 90
    307     Appendix B.  Changes from RFC 2616 . . . . . . . . . . . . . . . . 90
    308     Appendix C.  Imported ABNF . . . . . . . . . . . . . . . . . . . . 93
    309     Appendix D.  Collected ABNF  . . . . . . . . . . . . . . . . . . . 93
    310     Index  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
    311 
     799      rfc850-date  = day-name-l "," SP date2 SP time-of-day SP GMT
     800      date2        = day "-" month "-" 2DIGIT
     801                   ; e.g., 02-Jun-82
     802
     803
     804Section 7.1.1.1., paragraph 21:
     805OLD:
     806
     807    HTTP-date is case sensitive.  A sender MUST NOT generate additional
     808    whitespace in an HTTP-date beyond that specifically included as SP in
     809    the grammar.  The semantics of day-name, day, month, year, and time-
     810    of-day are the same as those defined for the Internet Message Format
     811    constructs with the corresponding name ([RFC5322], Section 3.3).
     812
     813NEW:
     814
     815    HTTP-date is case sensitive.  A sender MUST NOT generate additional
     816    whitespace in an HTTP-date beyond that specifically included as SP in
     817    the grammar.  The semantics of day-name, day, month, year, and
     818    time-of-day are the same as those defined for the Internet Message
     819    Format constructs with the corresponding name ([RFC5322], Section
     820    3.3).
     821
     822
     823Section 7.1.1.1., paragraph 23:
     824OLD:
     825
     826    Recipients of timestamp values are encouraged to be robust in parsing
     827    timestamps unless otherwise restricted by the field definition.  For
     828    example, messages are occasionally forwarded over HTTP from a non-
     829    HTTP source that might generate any of the date and time
     830    specifications defined by the Internet Message Format.
     831
     832NEW:
     833
     834    Recipients of timestamp values are encouraged to be robust in parsing
     835    timestamps unless otherwise restricted by the field definition.  For
     836    example, messages are occasionally forwarded over HTTP from a
     837    non-HTTP source that might generate any of the date and time
     838    specifications defined by the Internet Message Format.
     839
     840
     841Section 7.1.2., paragraph 8:
     842OLD:
     843
     844    which suggests that the user agent redirect to
     845    "http://www.example.org/People.html#tim"
     846 
     847    Likewise, a GET request generated for the URI reference
     848    "http://www.example.org/index.html#larry" might result in a 301
     849    (Moved Permanently) response containing the header field:
     850
     851NEW:
     852
     853    which suggests that the user agent redirect to
     854    "http://www.example.org/People.html#tim"
     855    Likewise, a GET request generated for the URI reference
     856    "http://www.example.org/index.html#larry" might result in a 301
     857    (Moved Permanently) response containing the header field:
     858
     859
     860Section 7.1.4., paragraph 1:
     861OLD:
     862
     863    The "Vary" header field in a response describes what parts of a
     864    request message, aside from the method, Host header field, and
     865    request target, might influence the origin server's process for
     866    selecting and representing this response.  The value consists of
     867    either a single asterisk ("*") or a list of header field names (case-
     868    insensitive).
     869
     870NEW:
     871
     872    The "Vary" header field in a response describes what parts of a
     873    request message, aside from the method, Host header field, and
     874    request target, might influence the origin server's process for
     875    selecting and representing this response.  The value consists of
     876    either a single asterisk ("*") or a list of header field names
     877    (case-insensitive).
     878
     879
     880Section 8.1., paragraph 0:
     881OLD:
     882
     883 8.  IANA Considerations
     884 8.1.  Method Registry
     885
     886NEW:
     887
     888 8.  IANA Considerations
     889 
     890 8.1.  Method Registry
     891
     892
     893Section 8.3.1., paragraph 6:
     894OLD:
     895
     896    Because commas (",") are used as a generic delimiter between field-
     897    values, they need to be treated with care if they are allowed in the
     898    field-value.  Typically, components that might contain a comma are
     899    protected with double-quotes using the quoted-string ABNF production.
     900
     901NEW:
     902
     903    Because commas (",") are used as a generic delimiter between
     904    field-values, they need to be treated with care if they are allowed
     905    in the field-value.  Typically, components that might contain a comma
     906    are protected with double-quotes using the quoted-string ABNF
     907    production.
     908
     909
     910Section 8.3.1., paragraph 9:
     911OLD:
     912
     913    Note that double-quote delimiters almost always are used with the
     914    quoted-string production; using a different syntax inside double-
     915    quotes will likely cause unnecessary confusion.
     916
     917NEW:
     918
     919    Note that double-quote delimiters almost always are used with the
     920    quoted-string production; using a different syntax inside
     921    double-quotes will likely cause unnecessary confusion.
     922
     923
     924Section 8.3.1., paragraph 10:
     925OLD:
     926
     927    Many header fields use a format including (case-insensitively) named
     928    parameters (for instance, Content-Type, defined in Section 3.1.1.5).
     929 
     930    Allowing both unquoted (token) and quoted (quoted-string) syntax for
     931    the parameter value enables recipients to use existing parser
     932    components.  When allowing both forms, the meaning of a parameter
     933    value ought to be independent of the syntax used for it (for an
     934    example, see the notes on parameter handling for media types in
     935    Section 3.1.1.1).
     936
     937NEW:
     938
     939    Many header fields use a format including (case-insensitively) named
     940    parameters (for instance, Content-Type, defined in Section 3.1.1.5).
     941    Allowing both unquoted (token) and quoted (quoted-string) syntax for
     942    the parameter value enables recipients to use existing parser
     943    components.  When allowing both forms, the meaning of a parameter
     944    value ought to be independent of the syntax used for it (for an
     945    example, see the notes on parameter handling for media types in
     946    Section 3.1.1.1).
     947
     948
     949Section 9.4., paragraph 2:
     950OLD:
     951
     952    Authors of services ought to avoid GET-based forms for the submission
     953    of sensitive data because that data will be placed in the request-
     954    target.  Many existing servers, proxies, and user agents log or
     955    display the request-target in places where it might be visible to
     956    third parties.  Such services ought to use POST-based form submission
     957    instead.
     958
     959NEW:
     960
     961    Authors of services ought to avoid GET-based forms for the submission
     962    of sensitive data because that data will be placed in the
     963    request-target.  Many existing servers, proxies, and user agents log
     964    or display the request-target in places where it might be visible to
     965    third parties.  Such services ought to use POST-based form submission
     966    instead.
     967
     968
     969Section 9.7., paragraph 4:
     970OLD:
     971
     972    In addition to the fingerprinting concern, detailed use of the
     973    Accept-Language header field can reveal information the user might
     974    consider to be of a private nature.  For example, understanding a
     975    given language set might be strongly correlated to membership in a
     976    particular ethnic group.  An approach that limits such loss of
     977    privacy would be for a user agent to omit the sending of Accept-
     978    Language except for sites that have been whitelisted, perhaps via
     979    interaction after detecting a Vary header field that indicates
     980    language negotiation might be useful.
     981
     982NEW:
     983
     984    In addition to the fingerprinting concern, detailed use of the
     985    Accept-Language header field can reveal information the user might
     986    consider to be of a private nature.  For example, understanding a
     987    given language set might be strongly correlated to membership in a
     988    particular ethnic group.  An approach that limits such loss of
     989    privacy would be for a user agent to omit the sending of
     990    Accept-Language except for sites that have been whitelisted, perhaps
     991    via interaction after detecting a Vary header field that indicates
     992    language negotiation might be useful.
     993
     994
     995Appendix A., paragraph 4:
     996OLD:
     997
     998    HTTP is not a MIME-compliant protocol.  However, messages can include
     999    a single MIME-Version header field to indicate what version of the
     1000    MIME protocol was used to construct the message.  Use of the MIME-
     1001    Version header field indicates that the message is in full
     1002    conformance with the MIME protocol (as defined in [RFC2045]).
     1003    Senders are responsible for ensuring full conformance (where
     1004    possible) when exporting HTTP messages to strict MIME environments.
     1005
     1006NEW:
     1007
     1008    HTTP is not a MIME-compliant protocol.  However, messages can include
     1009    a single MIME-Version header field to indicate what version of the
     1010    MIME protocol was used to construct the message.  Use of the
     1011    MIME-Version header field indicates that the message is in full
     1012    conformance with the MIME protocol (as defined in [RFC2045]).
     1013    Senders are responsible for ensuring full conformance (where
     1014    possible) when exporting HTTP messages to strict MIME environments.
     1015
     1016
     1017Appendix A., paragraph 12:
     1018OLD:
     1019
     1020    MIME does not include any concept equivalent to HTTP/1.1's Content-
     1021    Encoding header field.  Since this acts as a modifier on the media
     1022    type, proxies and gateways from HTTP to MIME-compliant protocols
     1023    ought to either change the value of the Content-Type header field or
     1024    decode the representation before forwarding the message.  (Some
     1025    experimental applications of Content-Type for Internet mail have used
     1026    a media-type parameter of ";conversions=<content-coding>" to perform
     1027    a function equivalent to Content-Encoding.  However, this parameter
     1028    is not part of the MIME standards).
     1029
     1030NEW:
     1031
     1032    MIME does not include any concept equivalent to HTTP/1.1's
     1033    Content-Encoding header field.  Since this acts as a modifier on the
     1034    media type, proxies and gateways from HTTP to MIME-compliant
     1035    protocols ought to either change the value of the Content-Type header
     1036    field or decode the representation before forwarding the message.
     1037    (Some experimental applications of Content-Type for Internet mail
     1038    have used a media-type parameter of ";conversions=<content-coding>"
     1039    to perform a function equivalent to Content-Encoding.  However, this
     1040    parameter is not part of the MIME standards).
     1041
     1042
     1043Appendix B., paragraph 9:
     1044OLD:
     1045
     1046    The OPTIONS and TRACE request methods have been defined as being
     1047    safe.  (Section 4.3.7 and Section 4.3.8)
     1048 
     1049    The Expect header field's extension mechanism has been removed due to
     1050    widely-deployed broken implementations.  (Section 5.1.1)
     1051
     1052NEW:
     1053
     1054    The OPTIONS and TRACE request methods have been defined as being
     1055    safe.  (Section 4.3.7 and Section 4.3.8)
     1056    The Expect header field's extension mechanism has been removed due to
     1057    widely-deployed broken implementations.  (Section 5.1.1)
     1058
     1059
     1060Appendix B., paragraph 20:
     1061OLD:
     1062
     1063    The 426 (Upgrade Required) status code has been incorporated from
     1064    [RFC2817].  (Section 6.5.15)
     1065 
     1066    The target of requirements on HTTP-date and the Date header field
     1067    have been reduced to those systems generating the date, rather than
     1068    all systems sending a date.  (Section 7.1.1)
     1069
     1070NEW:
     1071
     1072    The 426 (Upgrade Required) status code has been incorporated from
     1073    [RFC2817].  (Section 6.5.15)
     1074    The target of requirements on HTTP-date and the Date header field
     1075    have been reduced to those systems generating the date, rather than
     1076    all systems sending a date.  (Section 7.1.1)
     1077
     1078
     1079Section 1.2, paragraph 3:
     1080OLD:
     1081
     1082    Content-Encoding = *( "," OWS ) content-coding *( OWS "," [ OWS
     1083     content-coding ] )
     1084    Content-Language = *( "," OWS ) language-tag *( OWS "," [ OWS
     1085     language-tag ] )
     1086    Content-Location = absolute-URI / partial-URI
     1087    Content-Type = media-type
     1088    Date = HTTP-date
     1089
     1090NEW:
     1091
     1092    Content-Encoding = *( "," OWS ) content-coding *( OWS "," [ OWS
     1093     content-coding ] )
     1094    Content-Language = *( "," OWS ) language-tag *( OWS "," [ OWS
     1095     language-tag ] )
     1096    Content-Location = absolute-URI / partial-URI
     1097    Content-Type = media-type
     1098 
     1099    Date = HTTP-date
     1100
     1101
     1102Section 1.2, paragraph 12:
     1103OLD:
     1104
     1105    RWS = <RWS, see [RFC7230], Section 3.2.3>
     1106    Referer = absolute-URI / partial-URI
     1107    Retry-After = HTTP-date / delay-seconds
     1108 
     1109    Server = product *( RWS ( product / comment ) )
     1110
     1111NEW:
     1112
     1113    RWS = <RWS, see [RFC7230], Section 3.2.3>
     1114    Referer = absolute-URI / partial-URI
     1115    Retry-After = HTTP-date / delay-seconds
     1116    Server = product *( RWS ( product / comment ) )
     1117
     1118
     1119Section 1.2, paragraph 21:
     1120OLD:
     1121
     1122    mailbox = <mailbox, see [RFC5322], Section 3.4>
     1123    media-range = ( "*/*" / ( type "/*" ) / ( type "/" subtype ) ) *( OWS
     1124     ";" OWS parameter )
     1125    media-type = type "/" subtype *( OWS ";" OWS parameter )
     1126    method = token
     1127    minute = 2DIGIT
     1128    month = %x4A.61.6E ; Jan
     1129     / %x46.65.62 ; Feb
     1130     / %x4D.61.72 ; Mar
     1131     / %x41.70.72 ; Apr
     1132     / %x4D.61.79 ; May
     1133     / %x4A.75.6E ; Jun
     1134     / %x4A.75.6C ; Jul
     1135     / %x41.75.67 ; Aug
     1136     / %x53.65.70 ; Sep
     1137     / %x4F.63.74 ; Oct
     1138     / %x4E.6F.76 ; Nov
     1139     / %x44.65.63 ; Dec
     1140
     1141NEW:
     1142
     1143    mailbox = <mailbox, see [RFC5322], Section 3.4>
     1144    media-range = ( "*/*" / ( type "/*" ) / ( type "/" subtype ) ) *( OWS
     1145     ";" OWS parameter )
     1146 
     1147    media-type = type "/" subtype *( OWS ";" OWS parameter )
     1148    method = token
     1149    minute = 2DIGIT
     1150    month = %x4A.61.6E ; Jan
     1151     / %x46.65.62 ; Feb
     1152     / %x4D.61.72 ; Mar
     1153     / %x41.70.72 ; Apr
     1154     / %x4D.61.79 ; May
     1155     / %x4A.75.6E ; Jun
     1156     / %x4A.75.6C ; Jul
     1157     / %x41.75.67 ; Aug
     1158     / %x53.65.70 ; Sep
     1159     / %x4F.63.74 ; Oct
     1160     / %x4E.6F.76 ; Nov
     1161     / %x44.65.63 ; Dec
     1162
     1163
     1164Section 1.2, paragraph 36:
     1165OLD:
     1166
     1167    2
     1168       200 OK (status code)  51
     1169       201 Created (status code)  51
     1170       202 Accepted (status code)  52
     1171       203 Non-Authoritative Information (status code)  52
     1172       204 No Content (status code)  53
     1173       205 Reset Content (status code)  53
     1174
     1175NEW:
     1176
     1177    2
     1178       200 OK (status code)  51
     1179       201 Created (status code)  52
     1180       202 Accepted (status code)  52
     1181       203 Non-Authoritative Information (status code)  52
     1182       204 No Content (status code)  53
     1183       205 Reset Content (status code)  53
     1184
     1185
     1186Section 1.2, paragraph 37:
     1187OLD:
     1188
     1189    3
     1190       300 Multiple Choices (status code)  55
     1191       301 Moved Permanently (status code)  56
     1192       302 Found (status code)  56
     1193       303 See Other (status code)  57
     1194       305 Use Proxy (status code)  57
     1195       306 (Unused) (status code)  57
     1196       307 Temporary Redirect (status code)  58
     1197
     1198NEW:
     1199
     1200    3
     1201       300 Multiple Choices (status code)  55
     1202       301 Moved Permanently (status code)  56
     1203       302 Found (status code)  56
     1204       303 See Other (status code)  57
     1205       305 Use Proxy (status code)  58
     1206       306 (Unused) (status code)  58
     1207       307 Temporary Redirect (status code)  58
     1208
     1209
     1210Section 1.2, paragraph 38:
     1211OLD:
     1212
     1213    4
     1214       400 Bad Request (status code)  58
     1215       402 Payment Required (status code)  58
     1216       403 Forbidden (status code)  58
     1217       404 Not Found (status code)  59
     1218       405 Method Not Allowed (status code)  59
     1219       406 Not Acceptable (status code)  59
     1220       408 Request Timeout (status code)  60
     1221       409 Conflict (status code)  60
     1222       410 Gone (status code)  60
     1223       411 Length Required (status code)  61
     1224       413 Payload Too Large (status code)  61
     1225       414 URI Too Long (status code)  61
     1226       415 Unsupported Media Type (status code)  61
     1227       417 Expectation Failed (status code)  62
     1228       426 Upgrade Required (status code)  62
     1229
     1230NEW:
     1231
     1232    4
     1233       400 Bad Request (status code)  58
     1234       402 Payment Required (status code)  59
     1235       403 Forbidden (status code)  59
     1236       404 Not Found (status code)  59
     1237       405 Method Not Allowed (status code)  59
     1238       406 Not Acceptable (status code)  59
     1239       408 Request Timeout (status code)  60
     1240       409 Conflict (status code)  60
     1241       410 Gone (status code)  60
     1242       411 Length Required (status code)  61
     1243       413 Payload Too Large (status code)  61
     1244       414 URI Too Long (status code)  61
     1245       415 Unsupported Media Type (status code)  62
     1246       417 Expectation Failed (status code)  62
     1247       426 Upgrade Required (status code)  62
     1248
     1249
     1250Section 1.2, paragraph 39:
     1251OLD:
     1252
     1253    5
     1254       500 Internal Server Error (status code)  62
     1255       501 Not Implemented (status code)  63
     1256       502 Bad Gateway (status code)  63
     1257       503 Service Unavailable (status code)  63
     1258       504 Gateway Timeout (status code)  63
     1259       505 HTTP Version Not Supported (status code)  63
     1260
     1261NEW:
     1262
     1263    5
     1264       500 Internal Server Error (status code)  63
     1265       501 Not Implemented (status code)  63
     1266       502 Bad Gateway (status code)  63
     1267       503 Service Unavailable (status code)  63
     1268       504 Gateway Timeout (status code)  63
     1269       505 HTTP Version Not Supported (status code)  64
     1270
     1271
     1272Section 1.2, paragraph 41:
     1273OLD:
     1274
     1275    C
     1276       cacheable  24
     1277       compress (content coding)  11
     1278       conditional request  36
     1279       CONNECT method  30
     1280       content coding  11
     1281       content negotiation  6
     1282       Content-Encoding header field  12
     1283       Content-Language header field  13
     1284       Content-Location header field  15
     1285       Content-Transfer-Encoding header field  90
     1286       Content-Type header field  10
     1287
     1288NEW:
     1289
     1290    C
     1291       cacheable  24
     1292       compress (content coding)  11
     1293       conditional request  36
     1294       CONNECT method  30
     1295       content coding  11
     1296       content negotiation  6
     1297       Content-Encoding header field  12
     1298       Content-Language header field  13
     1299       Content-Location header field  15
     1300       Content-Transfer-Encoding header field  89
     1301       Content-Type header field  10
     1302
     1303
     1304Section 1.2, paragraph 45:
     1305OLD:
     1306
     1307    G
     1308       GET method  24
     1309       Grammar
     1310          Accept  38
     1311          Accept-Charset  40
     1312          Accept-Encoding  41
     1313          accept-ext  38
     1314          Accept-Language  42
     1315          accept-params  38
     1316          Allow  72
     1317          asctime-date  67
     1318          charset  9
     1319          codings  41
     1320          content-coding  11
     1321          Content-Encoding  12
     1322          Content-Language  13
     1323          Content-Location  15
     1324          Content-Type  10
     1325          Date  67
     1326          date1  66
     1327          day  66
     1328          day-name  66
     1329          day-name-l  66
     1330          delay-seconds  70
     1331          Expect  34
     1332          From  44
     1333          GMT  66
     1334          hour  66
     1335          HTTP-date  64
     1336          IMF-fixdate  66
     1337          language-range  42
     1338          language-tag  13
     1339          Location  68
     1340          Max-Forwards  36
     1341          media-range  38
     1342          media-type  8
     1343          method  21
     1344          minute  66
     1345          month  66
     1346          obs-date  66
     1347          parameter  8
     1348          product  46
     1349          product-version  46
     1350          qvalue  38
     1351          Referer  45
     1352          Retry-After  70
     1353          rfc850-date  67
     1354          second  66
     1355          Server  73
     1356          subtype  8
     1357          time-of-day  66
     1358          type  8
     1359          User-Agent  46
     1360          Vary  70
     1361          weight  38
     1362          year  66
     1363       gzip (content coding)  11
     1364
     1365NEW:
     1366
     1367    G
     1368       GET method  24
     1369       Grammar
     1370          Accept  38
     1371          Accept-Charset  40
     1372          Accept-Encoding  41
     1373          accept-ext  38
     1374          Accept-Language  42
     1375          accept-params  38
     1376          Allow  72
     1377          asctime-date  66
     1378          charset  9
     1379          codings  41
     1380          content-coding  11
     1381          Content-Encoding  12
     1382          Content-Language  13
     1383          Content-Location  15
     1384          Content-Type  10
     1385          Date  67
     1386          date1  65
     1387          day  65
     1388          day-name  65
     1389          day-name-l  65
     1390          delay-seconds  69
     1391          Expect  34
     1392          From  44
     1393          GMT  65
     1394          hour  65
     1395          HTTP-date  65
     1396          IMF-fixdate  65
     1397          language-range  42
     1398          language-tag  13
     1399          Location  68
     1400          Max-Forwards  36
     1401          media-range  38
     1402          media-type  8
     1403          method  21
     1404          minute  65
     1405          month  65
     1406          obs-date  66
     1407          parameter  8
     1408          product  46
     1409          product-version  46
     1410          qvalue  38
     1411          Referer  45
     1412          Retry-After  69
     1413          rfc850-date  66
     1414          second  65
     1415          Server  73
     1416          subtype  8
     1417          time-of-day  65
     1418          type  8
     1419          User-Agent  46
     1420          Vary  70
     1421          weight  38
     1422          year  65
     1423       gzip (content coding)  11
     1424
     1425
     1426Section 1.2, paragraph 49:
     1427OLD:
     1428
     1429    M
     1430       Max-Forwards header field  36
     1431       MIME-Version header field  88
     1432
     1433NEW:
     1434
     1435    M
     1436       Max-Forwards header field  36
     1437       MIME-Version header field  89
     1438
  • draft-ietf-httpbis/latest/auth48/rfc7231.diff.html

    r2710 r2712  
    66  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    77  <meta http-equiv="Content-Style-Type" content="text/css" />
    8   <title>Diff: p2-semantics.unpg.txt - rfc7231-to-be.unpg.txt</title>
     8  <title>Diff: p2-semantics.unpg.txt - rfc7231.txt</title>
    99  <style type="text/css">
    1010    body    { margin: 0.4ex; margin-right: auto; }
     
    3636<body >
    3737  <table border="0" cellpadding="0" cellspacing="0">
    38   <tr bgcolor="orange"><th></th><th>&nbsp;p2-semantics.unpg.txt&nbsp;</th><th> </th><th>&nbsp;rfc7231-to-be.unpg.txt&nbsp;</th><th></th></tr>
     38  <tr bgcolor="orange"><th></th><th>&nbsp;p2-semantics.unpg.txt&nbsp;</th><th> </th><th>&nbsp;rfc7231.txt&nbsp;</th><th></th></tr>
    3939      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
    4040      <tr bgcolor="gray" ><td></td><th><a name="part-l1" /><small>skipping to change at</small><em> page 1, line 22</em></th><th> </th><th><a name="part-r1" /><small>skipping to change at</small><em> page 1, line 22</em></th><td></td></tr>
     
    7474      <tr><td class="lineno" valign="top"></td><td class="left">   Internet Standards is available in Section 2 of RFC 5741.</td><td> </td><td class="right">   Internet Standards is available in Section 2 of RFC 5741.</td><td class="lineno" valign="top"></td></tr>
    7575      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     76      <tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
     77      <tr bgcolor="gray" ><td></td><th><a name="part-l2" /><small>skipping to change at</small><em> page 2, line 34</em></th><th> </th><th><a name="part-r2" /><small>skipping to change at</small><em> page 3, line 7</em></th><td></td></tr>
     78      <tr><td class="lineno" valign="top"></td><td class="left">   modifications of such material outside the IETF Standards Process.</td><td> </td><td class="right">   modifications of such material outside the IETF Standards Process.</td><td class="lineno" valign="top"></td></tr>
     79      <tr><td class="lineno" valign="top"></td><td class="left">   Without obtaining an adequate license from the person(s) controlling</td><td> </td><td class="right">   Without obtaining an adequate license from the person(s) controlling</td><td class="lineno" valign="top"></td></tr>
     80      <tr><td class="lineno" valign="top"></td><td class="left">   the copyright in such materials, this document may not be modified</td><td> </td><td class="right">   the copyright in such materials, this document may not be modified</td><td class="lineno" valign="top"></td></tr>
     81      <tr><td class="lineno" valign="top"></td><td class="left">   outside the IETF Standards Process, and derivative works of it may</td><td> </td><td class="right">   outside the IETF Standards Process, and derivative works of it may</td><td class="lineno" valign="top"></td></tr>
     82      <tr><td class="lineno" valign="top"></td><td class="left">   not be created outside the IETF Standards Process, except to format</td><td> </td><td class="right">   not be created outside the IETF Standards Process, except to format</td><td class="lineno" valign="top"></td></tr>
     83      <tr><td class="lineno" valign="top"></td><td class="left">   it for publication as an RFC or to translate it into languages other</td><td> </td><td class="right">   it for publication as an RFC or to translate it into languages other</td><td class="lineno" valign="top"></td></tr>
     84      <tr><td class="lineno" valign="top"></td><td class="left">   than English.</td><td> </td><td class="right">   than English.</td><td class="lineno" valign="top"></td></tr>
     85      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     86      <tr><td class="lineno" valign="top"></td><td class="left">Table of Contents</td><td> </td><td class="right">Table of Contents</td><td class="lineno" valign="top"></td></tr>
     87      <tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
     88      <tr><td><a name="diff0002" /></td></tr>
     89      <tr><td class="lineno" valign="top"></td><td class="lblock">   1.  Introduction <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . .  6</span></td><td> </td><td class="rblock">   1. Introduction <span class="insert">....................................................6</span></td><td class="lineno" valign="top"></td></tr>
     90      <tr><td class="lineno" valign="top"></td><td class="lblock">     1.1.  Conformance and Error Handling <span class="delete">. . . . . . . . . . . . . .  6</span></td><td> </td><td class="rblock">      1.1. Conformance and Error Handling <span class="insert">.............................6</span></td><td class="lineno" valign="top"></td></tr>
     91      <tr><td class="lineno" valign="top"></td><td class="lblock">     1.2.  Syntax Notation  <span class="delete">. . . . . . . . . . . . . . . . . . . . .  6</span></td><td> </td><td class="rblock">      1.2. Syntax Notation <span class="insert">............................................6</span></td><td class="lineno" valign="top"></td></tr>
     92      <tr><td class="lineno" valign="top"></td><td class="lblock">   2.  Resources  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . .  7</span></td><td> </td><td class="rblock">   2. Resources <span class="insert">.......................................................7</span></td><td class="lineno" valign="top"></td></tr>
     93      <tr><td class="lineno" valign="top"></td><td class="lblock">   3.  Representations  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . .  7</span></td><td> </td><td class="rblock">   3. Representations <span class="insert">.................................................7</span></td><td class="lineno" valign="top"></td></tr>
     94      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.1.  Representation Metadata  <span class="delete">. . . . . . . . . . . . . . . . .  8</span></td><td> </td><td class="rblock">      3.1. Representation Metadata <span class="insert">....................................8</span></td><td class="lineno" valign="top"></td></tr>
     95      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.1.1.  Processing Representation Data <span class="delete">. . . . . . . . . . . .  8</span></td><td> </td><td class="rblock">           3.1.1. Processing Representation Data <span class="insert">......................8</span></td><td class="lineno" valign="top"></td></tr>
     96      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.1.2.  Encoding for Compression or Integrity  <span class="delete">. . . . . . . . 11</span></td><td> </td><td class="rblock">           3.1.2. Encoding for Compression or Integrity <span class="insert">..............11</span></td><td class="lineno" valign="top"></td></tr>
     97      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.1.3.  Audience Language  <span class="delete">. . . . . . . . . . . . . . . . . . 13</span></td><td> </td><td class="rblock">           3.1.3. Audience Language <span class="insert">..................................13</span></td><td class="lineno" valign="top"></td></tr>
     98      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.1.4.  Identification <span class="delete">. . . . . . . . . . . . . . . . . . . . 14</span></td><td> </td><td class="rblock">           3.1.4. Identification <span class="insert">.....................................14</span></td><td class="lineno" valign="top"></td></tr>
     99      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.2.  Representation Data  <span class="delete">. . . . . . . . . . . . . . . . . . . 17</span></td><td> </td><td class="rblock">      3.2. Representation Data <span class="insert">.......................................17</span></td><td class="lineno" valign="top"></td></tr>
     100      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.3.  Payload Semantics  <span class="delete">. . . . . . . . . . . . . . . . . . . . 17</span></td><td> </td><td class="rblock">      3.3. Payload Semantics <span class="insert">.........................................17</span></td><td class="lineno" valign="top"></td></tr>
     101      <tr><td class="lineno" valign="top"></td><td class="lblock">     3.4.  Content Negotiation  <span class="delete">. . . . . . . . . . . . . . . . . . . 18</span></td><td> </td><td class="rblock">      3.4. Content Negotiation <span class="insert">.......................................18</span></td><td class="lineno" valign="top"></td></tr>
     102      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.4.1.  Proactive Negotiation  <span class="delete">. . . . . . . . . . . . . . . . 19</span></td><td> </td><td class="rblock">           3.4.1. Proactive Negotiation <span class="insert">..............................19</span></td><td class="lineno" valign="top"></td></tr>
     103      <tr><td class="lineno" valign="top"></td><td class="lblock">       3.4.2.  Reactive Negotiation <span class="delete">. . . . . . . . . . . . . . . . . 20</span></td><td> </td><td class="rblock">           3.4.2. Reactive Negotiation <span class="insert">...............................20</span></td><td class="lineno" valign="top"></td></tr>
     104      <tr><td class="lineno" valign="top"></td><td class="lblock">   4.  Request Methods  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock">   4. Request Methods <span class="insert">................................................21</span></td><td class="lineno" valign="top"></td></tr>
     105      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.1.  Overview <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 21</span></td><td> </td><td class="rblock">      4.1. Overview <span class="insert">..................................................21</span></td><td class="lineno" valign="top"></td></tr>
     106      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.2.  Common Method Properties <span class="delete">. . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock">      4.2. Common Method Properties <span class="insert">..................................22</span></td><td class="lineno" valign="top"></td></tr>
     107      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.2.1.  Safe Methods <span class="delete">. . . . . . . . . . . . . . . . . . . . . 22</span></td><td> </td><td class="rblock">           4.2.1. Safe Methods <span class="insert">.......................................22</span></td><td class="lineno" valign="top"></td></tr>
     108      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.2.2.  Idempotent Methods <span class="delete">. . . . . . . . . . . . . . . . . . 23</span></td><td> </td><td class="rblock">           4.2.2. Idempotent Methods <span class="insert">.................................23</span></td><td class="lineno" valign="top"></td></tr>
     109      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.2.3.  Cacheable Methods  <span class="delete">. . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock">           4.2.3. Cacheable Methods <span class="insert">..................................24</span></td><td class="lineno" valign="top"></td></tr>
     110      <tr><td class="lineno" valign="top"></td><td class="lblock">     4.3.  Method Definitions <span class="delete">. . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock">      4.3. Method Definitions <span class="insert">........................................24</span></td><td class="lineno" valign="top"></td></tr>
     111      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.1.  GET  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 24</span></td><td> </td><td class="rblock">           4.3.1. GET <span class="insert">................................................24</span></td><td class="lineno" valign="top"></td></tr>
     112      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.2.  HEAD <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 25</span></td><td> </td><td class="rblock">           4.3.2. HEAD <span class="insert">...............................................25</span></td><td class="lineno" valign="top"></td></tr>
     113      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.3.  POST <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 25</span></td><td> </td><td class="rblock">           4.3.3. POST <span class="insert">...............................................25</span></td><td class="lineno" valign="top"></td></tr>
     114      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.4.  PUT  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 26</span></td><td> </td><td class="rblock">           4.3.4. PUT <span class="insert">................................................26</span></td><td class="lineno" valign="top"></td></tr>
     115      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.5.  DELETE <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 29</span></td><td> </td><td class="rblock">           4.3.5. DELETE <span class="insert">.............................................29</span></td><td class="lineno" valign="top"></td></tr>
     116      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.6.  CONNECT  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 30</span></td><td> </td><td class="rblock">           4.3.6. CONNECT <span class="insert">............................................30</span></td><td class="lineno" valign="top"></td></tr>
     117      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.7.  OPTIONS  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 31</span></td><td> </td><td class="rblock">           4.3.7. OPTIONS <span class="insert">............................................31</span></td><td class="lineno" valign="top"></td></tr>
     118      <tr><td class="lineno" valign="top"></td><td class="lblock">       4.3.8.  TRACE  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 32</span></td><td> </td><td class="rblock">           4.3.8. TRACE <span class="insert">..............................................32</span></td><td class="lineno" valign="top"></td></tr>
     119      <tr><td class="lineno" valign="top"></td><td class="lblock">   5.  Request Header Fields  <span class="delete">. . . . . . . . . . . . . . . . . . . . 33</span></td><td> </td><td class="rblock">   5. Request Header Fields <span class="insert">..........................................33</span></td><td class="lineno" valign="top"></td></tr>
     120      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.1.  Controls <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 33</span></td><td> </td><td class="rblock">      5.1. Controls <span class="insert">..................................................33</span></td><td class="lineno" valign="top"></td></tr>
     121      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.1.1.  Expect <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 34</span></td><td> </td><td class="rblock">           5.1.1. Expect <span class="insert">.............................................34</span></td><td class="lineno" valign="top"></td></tr>
     122      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.1.2.  Max-Forwards <span class="delete">. . . . . . . . . . . . . . . . . . . . . 36</span></td><td> </td><td class="rblock">           5.1.2. Max-Forwards <span class="insert">.......................................36</span></td><td class="lineno" valign="top"></td></tr>
     123      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.2.  Conditionals <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 36</span></td><td> </td><td class="rblock">      5.2. Conditionals <span class="insert">..............................................36</span></td><td class="lineno" valign="top"></td></tr>
     124      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.3.  Content Negotiation  <span class="delete">. . . . . . . . . . . . . . . . . . . 37</span></td><td> </td><td class="rblock">      5.3. Content Negotiation <span class="insert">.......................................37</span></td><td class="lineno" valign="top"></td></tr>
     125      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.1.  Quality Values <span class="delete">. . . . . . . . . . . . . . . . . . . . 37</span></td><td> </td><td class="rblock">           5.3.1. Quality Values <span class="insert">.....................................37</span></td><td class="lineno" valign="top"></td></tr>
     126      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.2.  Accept <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . 38</span></td><td> </td><td class="rblock">           5.3.2. Accept <span class="insert">.............................................38</span></td><td class="lineno" valign="top"></td></tr>
     127      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.3.  Accept-Charset <span class="delete">. . . . . . . . . . . . . . . . . . . . 40</span></td><td> </td><td class="rblock">           5.3.3. Accept-Charset <span class="insert">.....................................40</span></td><td class="lineno" valign="top"></td></tr>
     128      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.4.  Accept-Encoding  <span class="delete">. . . . . . . . . . . . . . . . . . . 41</span></td><td> </td><td class="rblock">           5.3.4. Accept-Encoding <span class="insert">....................................41</span></td><td class="lineno" valign="top"></td></tr>
     129      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.3.5.  Accept-Language  <span class="delete">. . . . . . . . . . . . . . . . . . . 42</span></td><td> </td><td class="rblock">           5.3.5. Accept-Language <span class="insert">....................................42</span></td><td class="lineno" valign="top"></td></tr>
     130      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.4.  Authentication Credentials <span class="delete">. . . . . . . . . . . . . . . . 43</span></td><td> </td><td class="rblock">      5.4. Authentication Credentials <span class="insert">................................44</span></td><td class="lineno" valign="top"></td></tr>
     131      <tr><td class="lineno" valign="top"></td><td class="lblock">     5.5.  Request Context  <span class="delete">. . . . . . . . . . . . . . . . . . . . . 44</span></td><td> </td><td class="rblock">      5.5. Request Context <span class="insert">...........................................44</span></td><td class="lineno" valign="top"></td></tr>
     132      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.5.1.  From <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . . . 44</span></td><td> </td><td class="rblock">           5.5.1. From <span class="insert">...............................................44</span></td><td class="lineno" valign="top"></td></tr>
     133      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.5.2.  Referer  <span class="delete">. . . . . . . . . . . . . . . . . . . . . . . 45</span></td><td> </td><td class="rblock">           5.5.2. Referer <span class="insert">............................................45</span></td><td class="lineno" valign="top"></td></tr>
     134      <tr><td class="lineno" valign="top"></td><td class="lblock">       5.5.3.  User-Agent <span class="delete">. . . . . . . . . . . . . . . . . . . . . . 46</span></td><td> </td><td class="rblock">           5.5.3. User-Agent <span class="insert">.........................................46</span></td><td class="lineno" valign="top"></td></tr>
     135      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   6.  Response Status Codes  . . . . . . . . . . . . . . . . . . . . 47</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     136      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     6.1.  Overview of Status Codes . . . . . . . . . . . . . . . . . 48</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     137      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     6.2.  Informational 1xx  . . . . . . . . . . . . . . . . . . . . 50</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     138      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.2.1.  100 Continue . . . . . . . . . . . . . . . . . . . . . 50</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     139      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.2.2.  101 Switching Protocols  . . . . . . . . . . . . . . . 50</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     140      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     6.3.  Successful 2xx . . . . . . . . . . . . . . . . . . . . . . 51</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     141      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.3.1.  200 OK . . . . . . . . . . . . . . . . . . . . . . . . 51</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     142      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.3.2.  201 Created  . . . . . . . . . . . . . . . . . . . . . 51</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     143      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.3.3.  202 Accepted . . . . . . . . . . . . . . . . . . . . . 52</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     144      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.3.4.  203 Non-Authoritative Information  . . . . . . . . . . 52</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     145      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.3.5.  204 No Content . . . . . . . . . . . . . . . . . . . . 53</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     146      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.3.6.  205 Reset Content  . . . . . . . . . . . . . . . . . . 53</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     147      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     6.4.  Redirection 3xx  . . . . . . . . . . . . . . . . . . . . . 54</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     148      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.1.  300 Multiple Choices . . . . . . . . . . . . . . . . . 55</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     149      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.2.  301 Moved Permanently  . . . . . . . . . . . . . . . . 56</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     150      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.3.  302 Found  . . . . . . . . . . . . . . . . . . . . . . 56</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     151      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.4.  303 See Other  . . . . . . . . . . . . . . . . . . . . 57</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     152      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.5.  305 Use Proxy  . . . . . . . . . . . . . . . . . . . . 57</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     153      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.6.  306 (Unused) . . . . . . . . . . . . . . . . . . . . . 57</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     154      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.4.7.  307 Temporary Redirect . . . . . . . . . . . . . . . . 58</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     155      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     6.5.  Client Error 4xx . . . . . . . . . . . . . . . . . . . . . 58</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     156      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.1.  400 Bad Request  . . . . . . . . . . . . . . . . . . . 58</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     157      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.2.  402 Payment Required . . . . . . . . . . . . . . . . . 58</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     158      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.3.  403 Forbidden  . . . . . . . . . . . . . . . . . . . . 58</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     159      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.4.  404 Not Found  . . . . . . . . . . . . . . . . . . . . 59</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     160      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.5.  405 Method Not Allowed . . . . . . . . . . . . . . . . 59</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     161      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.6.  406 Not Acceptable . . . . . . . . . . . . . . . . . . 59</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     162      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.7.  408 Request Timeout  . . . . . . . . . . . . . . . . . 60</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     163      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.8.  409 Conflict . . . . . . . . . . . . . . . . . . . . . 60</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     164      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.9.  410 Gone . . . . . . . . . . . . . . . . . . . . . . . 60</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     165      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.10. 411 Length Required  . . . . . . . . . . . . . . . . . 61</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     166      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.11. 413 Payload Too Large  . . . . . . . . . . . . . . . . 61</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     167      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.12. 414 URI Too Long . . . . . . . . . . . . . . . . . . . 61</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     168      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.13. 415 Unsupported Media Type . . . . . . . . . . . . . . 61</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     169      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.14. 417 Expectation Failed . . . . . . . . . . . . . . . . 62</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     170      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.5.15. 426 Upgrade Required . . . . . . . . . . . . . . . . . 62</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     171      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     6.6.  Server Error 5xx . . . . . . . . . . . . . . . . . . . . . 62</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     172      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.6.1.  500 Internal Server Error  . . . . . . . . . . . . . . 62</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     173      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.6.2.  501 Not Implemented  . . . . . . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     174      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.6.3.  502 Bad Gateway  . . . . . . . . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     175      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.6.4.  503 Service Unavailable  . . . . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     176      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.6.5.  504 Gateway Timeout  . . . . . . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     177      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       6.6.6.  505 HTTP Version Not Supported . . . . . . . . . . . . 63</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     178      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">   7.  Response Header Fields . . . . . . . . . . . . . . . . . . . . 64</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     179      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">     7.1.  Control Data . . . . . . . . . . . . . . . . . . . . . . . 64</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     180      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       7.1.1.  Origination Date . . . . . . . . . . . . . . . . . . . 64</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     181      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       7.1.2.  Location . . . . . . . . . . . . . . . . . . . . . . . 68</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     182      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       7.1.3.  Retry-After  . . . . . . . . . . . . . . . . . . . . . 69</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     183      <tr><td class="lineno" valign="top"></td><td class="lblock"><span class="delete">       7.1.4.  Vary . . . . . . . . . . . . . . . . . . . . . . . . . 70</span></td><td> </td><td class="rblock"></td><td class="lineno" valign="top"></td></tr>
     184      <tr><td class