* WGs marked with an * asterisk has had at least one new draft made available during the last 5 days

Changeset 707


Ignore:
Timestamp:
2009-10-07 07:52:42 (5 years ago)
Author:
julian.reschke@gmx.de
Message:

Disallow line folding in chunk extensions (see #173)

Location:
draft-ietf-httpbis/latest
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • draft-ietf-httpbis/latest/p1-messaging.html

    r706 r707  
    14981498         necessary for the recipient to verify that it has received the full message. 
    14991499      </p> 
    1500       <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span><span id="rfc.iref.g.79"></span><span id="rfc.iref.g.80"></span><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span>  <a href="#chunked.encoding" class="smpl">Chunked-Body</a>   = *<a href="#chunked.encoding" class="smpl">chunk</a> 
     1500      <div id="rfc.figure.u.48"></div><pre class="inline"><span id="rfc.iref.g.77"></span><span id="rfc.iref.g.78"></span><span id="rfc.iref.g.79"></span><span id="rfc.iref.g.80"></span><span id="rfc.iref.g.81"></span><span id="rfc.iref.g.82"></span><span id="rfc.iref.g.83"></span><span id="rfc.iref.g.84"></span><span id="rfc.iref.g.85"></span><span id="rfc.iref.g.86"></span><span id="rfc.iref.g.87"></span>  <a href="#chunked.encoding" class="smpl">Chunked-Body</a>   = *<a href="#chunked.encoding" class="smpl">chunk</a> 
    15011501                   <a href="#chunked.encoding" class="smpl">last-chunk</a> 
    15021502                   <a href="#chunked.encoding" class="smpl">trailer-part</a> 
     
    15111511                      [ "=" <a href="#chunked.encoding" class="smpl">chunk-ext-val</a> ] *WSP ) 
    15121512  <a href="#chunked.encoding" class="smpl">chunk-ext-name</a> = <a href="#rule.token.separators" class="smpl">token</a> 
    1513   <a href="#chunked.encoding" class="smpl">chunk-ext-val</a>  = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#rule.quoted-string" class="smpl">quoted-string</a> 
     1513  <a href="#chunked.encoding" class="smpl">chunk-ext-val</a>  = <a href="#rule.token.separators" class="smpl">token</a> / <a href="#chunked.encoding" class="smpl">quoted-str-nf</a> 
    15141514  <a href="#chunked.encoding" class="smpl">chunk-data</a>     = 1*<a href="#core.rules" class="smpl">OCTET</a> ; a sequence of chunk-size octets 
    15151515  <a href="#chunked.encoding" class="smpl">trailer-part</a>   = *( <a href="#abnf.dependencies" class="smpl">entity-header</a> <a href="#core.rules" class="smpl">CRLF</a> ) 
     1516   
     1517  <a href="#chunked.encoding" class="smpl">quoted-str-nf</a>  = <a href="#core.rules" class="smpl">DQUOTE</a> *( <a href="#chunked.encoding" class="smpl">qdtext-nf</a> / <a href="#rule.quoted-pair" class="smpl">quoted-pair</a> ) <a href="#core.rules" class="smpl">DQUOTE</a> 
     1518                 ; like <a href="#rule.quoted-string" class="smpl">quoted-string</a>, but disallowing line folding 
     1519  <a href="#chunked.encoding" class="smpl">qdtext-nf</a>      = <a href="#core.rules" class="smpl">WSP</a> / %x21 / %x23-5B / %x5D-7E / <a href="#rule.quoted-string" class="smpl">obs-text</a> 
     1520                 ; <a href="#core.rules" class="smpl">WSP</a> / &lt;<a href="#core.rules" class="smpl">VCHAR</a> except <a href="#core.rules" class="smpl">DQUOTE</a> and "\"&gt; / <a href="#rule.quoted-string" class="smpl">obs-text</a>  
    15161521</pre><p id="rfc.section.6.2.1.p.3">The chunk-size field is a string of hex digits indicating the size of the chunk-data in octets. The chunked encoding is ended 
    15171522         by any chunk whose size is zero, followed by the trailer, which is terminated by an empty line. 
     
    15751580      <p id="rfc.section.6.2.2.2.p.1">The "zlib" format is defined in <a href="#RFC1950" id="rfc.xref.RFC1950.1"><cite title="ZLIB Compressed Data Format Specification version 3.3">[RFC1950]</cite></a> in combination with the "deflate" compression mechanism described in <a href="#RFC1951" id="rfc.xref.RFC1951.1"><cite title="DEFLATE Compressed Data Format Specification version 1.3">[RFC1951]</cite></a>. 
    15761581      </p> 
    1577       <div id="rfc.iref.g.86"></div> 
     1582      <div id="rfc.iref.g.88"></div> 
    15781583      <div id="rfc.iref.c.10"></div> 
    15791584      <h4 id="rfc.section.6.2.2.3"><a href="#rfc.section.6.2.2.3">6.2.2.3</a>&nbsp;<a id="gzip.coding" href="#gzip.coding">Gzip Coding</a></h4> 
     
    15991604         By convention, the products are listed in order of their significance for identifying the application. 
    16001605      </p> 
    1601       <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.87"></span><span id="rfc.iref.g.88"></span>  <a href="#product.tokens" class="smpl">product</a>         = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 
     1606      <div id="rfc.figure.u.50"></div><pre class="inline"><span id="rfc.iref.g.89"></span><span id="rfc.iref.g.90"></span>  <a href="#product.tokens" class="smpl">product</a>         = <a href="#rule.token.separators" class="smpl">token</a> ["/" <a href="#product.tokens" class="smpl">product-version</a>] 
    16021607  <a href="#product.tokens" class="smpl">product-version</a> = <a href="#rule.token.separators" class="smpl">token</a> 
    16031608</pre><p id="rfc.section.6.3.p.3">Examples:</p> 
     
    16111616         a quality value of 0, then content with this parameter is `not acceptable' for the client. HTTP/1.1 applications <em class="bcp14">MUST NOT</em> generate more than three digits after the decimal point. User configuration of these values <em class="bcp14">SHOULD</em> also be limited in this fashion. 
    16121617      </p> 
    1613       <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.89"></span>  <a href="#quality.values" class="smpl">qvalue</a>         = ( "0" [ "." 0*3<a href="#core.rules" class="smpl">DIGIT</a> ] ) 
     1618      <div id="rfc.figure.u.52"></div><pre class="inline"><span id="rfc.iref.g.91"></span>  <a href="#quality.values" class="smpl">qvalue</a>         = ( "0" [ "." 0*3<a href="#core.rules" class="smpl">DIGIT</a> ] ) 
    16141619                 / ( "1" [ "." 0*3("0") ] ) 
    16151620</pre><div class="note">  
     
    18231828      </p> 
    18241829      <p id="rfc.section.9.1.p.2">The Connection header's value has the following grammar:</p> 
    1825       <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.90"></span><span id="rfc.iref.g.91"></span><span id="rfc.iref.g.92"></span>  <a href="#header.connection" class="smpl">Connection</a>       = "Connection" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a> 
     1830      <div id="rfc.figure.u.53"></div><pre class="inline"><span id="rfc.iref.g.92"></span><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span>  <a href="#header.connection" class="smpl">Connection</a>       = "Connection" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.connection" class="smpl">Connection-v</a> 
    18261831  <a href="#header.connection" class="smpl">Connection-v</a>     = 1#<a href="#header.connection" class="smpl">connection-token</a> 
    18271832  <a href="#header.connection" class="smpl">connection-token</a> = <a href="#rule.token.separators" class="smpl">token</a> 
     
    18521857         to the HEAD method, it indicates the size of the entity-body that would have been sent had the request been a GET. 
    18531858      </p> 
    1854       <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.93"></span><span id="rfc.iref.g.94"></span>  <a href="#header.content-length" class="smpl">Content-Length</a>   = "Content-Length" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a> 
     1859      <div id="rfc.figure.u.55"></div><pre class="inline"><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span>  <a href="#header.content-length" class="smpl">Content-Length</a>   = "Content-Length" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 1*<a href="#header.content-length" class="smpl">Content-Length-v</a> 
    18551860  <a href="#header.content-length" class="smpl">Content-Length-v</a> = 1*<a href="#core.rules" class="smpl">DIGIT</a> 
    18561861</pre><p id="rfc.section.9.2.p.3">An example is</p> 
     
    18701875         as orig-date in <a href="http://tools.ietf.org/html/rfc5322#section-3.6.1">Section 3.6.1</a> of <a href="#RFC5322" id="rfc.xref.RFC5322.4"><cite title="Internet Message Format">[RFC5322]</cite></a>. The field value is an HTTP-date, as described in <a href="#date.time.formats.full.date" title="Date/Time Formats: Full Date">Section&nbsp;6.1</a>; it <em class="bcp14">MUST</em> be sent in rfc1123-date format. 
    18711876      </p> 
    1872       <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.95"></span><span id="rfc.iref.g.96"></span>  <a href="#header.date" class="smpl">Date</a>   = "Date" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a> 
     1877      <div id="rfc.figure.u.57"></div><pre class="inline"><span id="rfc.iref.g.97"></span><span id="rfc.iref.g.98"></span>  <a href="#header.date" class="smpl">Date</a>   = "Date" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.date" class="smpl">Date-v</a> 
    18731878  <a href="#header.date" class="smpl">Date-v</a> = <a href="#date.time.formats.full.date" class="smpl">HTTP-date</a> 
    18741879</pre><p id="rfc.section.9.3.p.3">An example is</p> 
     
    19111916         resource (generally an http URI, as described in <a href="#http.uri" title="http URI scheme">Section&nbsp;2.6.1</a>). 
    19121917      </p> 
    1913       <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.97"></span><span id="rfc.iref.g.98"></span>  <a href="#header.host" class="smpl">Host</a>   = "Host" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a> 
     1918      <div id="rfc.figure.u.59"></div><pre class="inline"><span id="rfc.iref.g.99"></span><span id="rfc.iref.g.100"></span>  <a href="#header.host" class="smpl">Host</a>   = "Host" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.host" class="smpl">Host-v</a> 
    19141919  <a href="#header.host" class="smpl">Host-v</a> = <a href="#uri" class="smpl">uri-host</a> [ ":" <a href="#uri" class="smpl">port</a> ] ; <a href="#http.uri" title="http URI scheme">Section&nbsp;2.6.1</a> 
    19151920</pre><p id="rfc.section.9.4.p.4">A "host" without any trailing port information implies the default port for the service requested (e.g., "80" for an HTTP 
     
    19331938         accept parameters (as described in <a href="#transfer.codings" title="Transfer Codings">Section&nbsp;6.2</a>). 
    19341939      </p> 
    1935       <div id="rfc.figure.u.61"></div><pre class="inline"><span id="rfc.iref.g.99"></span><span id="rfc.iref.g.100"></span><span id="rfc.iref.g.101"></span><span id="rfc.iref.g.102"></span><span id="rfc.iref.g.103"></span>  <a href="#header.te" class="smpl">TE</a>        = "TE" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a> 
     1940      <div id="rfc.figure.u.61"></div><pre class="inline"><span id="rfc.iref.g.101"></span><span id="rfc.iref.g.102"></span><span id="rfc.iref.g.103"></span><span id="rfc.iref.g.104"></span><span id="rfc.iref.g.105"></span>  <a href="#header.te" class="smpl">TE</a>        = "TE" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.te" class="smpl">TE-v</a> 
    19361941  <a href="#header.te" class="smpl">TE-v</a>      = #<a href="#header.te" class="smpl">t-codings</a> 
    19371942  <a href="#header.te" class="smpl">t-codings</a> = "trailers" / ( <a href="#transfer.codings" class="smpl">transfer-extension</a> [ <a href="#header.te" class="smpl">te-params</a> ] ) 
     
    19791984         with chunked transfer-coding. 
    19801985      </p> 
    1981       <div id="rfc.figure.u.63"></div><pre class="inline"><span id="rfc.iref.g.104"></span><span id="rfc.iref.g.105"></span>  <a href="#header.trailer" class="smpl">Trailer</a>   = "Trailer" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a> 
     1986      <div id="rfc.figure.u.63"></div><pre class="inline"><span id="rfc.iref.g.106"></span><span id="rfc.iref.g.107"></span>  <a href="#header.trailer" class="smpl">Trailer</a>   = "Trailer" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.trailer" class="smpl">Trailer-v</a> 
    19821987  <a href="#header.trailer" class="smpl">Trailer-v</a> = 1#<a href="#header.fields" class="smpl">field-name</a> 
    19831988</pre><p id="rfc.section.9.6.p.3">An HTTP/1.1 message <em class="bcp14">SHOULD</em> include a Trailer header field in a message using chunked transfer-coding with a non-empty trailer. Doing so allows the recipient 
     
    20002005         are not. 
    20012006      </p> 
    2002       <div id="rfc.figure.u.64"></div><pre class="inline"><span id="rfc.iref.g.106"></span><span id="rfc.iref.g.107"></span>  <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>   = "Transfer-Encoding" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 
     2007      <div id="rfc.figure.u.64"></div><pre class="inline"><span id="rfc.iref.g.108"></span><span id="rfc.iref.g.109"></span>  <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding</a>   = "Transfer-Encoding" ":" <a href="#rule.whitespace" class="smpl">OWS</a> 
    20032008                        <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> 
    20042009  <a href="#header.transfer-encoding" class="smpl">Transfer-Encoding-v</a> = 1#<a href="#transfer.codings" class="smpl">transfer-coding</a> 
     
    20162021         to. 
    20172022      </p> 
    2018       <div id="rfc.figure.u.66"></div><pre class="inline"><span id="rfc.iref.g.108"></span><span id="rfc.iref.g.109"></span>  <a href="#header.upgrade" class="smpl">Upgrade</a>   = "Upgrade" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a> 
     2023      <div id="rfc.figure.u.66"></div><pre class="inline"><span id="rfc.iref.g.110"></span><span id="rfc.iref.g.111"></span>  <a href="#header.upgrade" class="smpl">Upgrade</a>   = "Upgrade" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.upgrade" class="smpl">Upgrade-v</a> 
    20192024  <a href="#header.upgrade" class="smpl">Upgrade-v</a> = 1#<a href="#product.tokens" class="smpl">product</a> 
    20202025</pre><p id="rfc.section.9.8.p.3">For example,</p> 
     
    20722077         of all senders along the request/response chain. 
    20732078      </p> 
    2074       <div id="rfc.figure.u.68"></div><pre class="inline"><span id="rfc.iref.g.110"></span><span id="rfc.iref.g.111"></span><span id="rfc.iref.g.112"></span><span id="rfc.iref.g.113"></span><span id="rfc.iref.g.114"></span><span id="rfc.iref.g.115"></span><span id="rfc.iref.g.116"></span>  <a href="#header.via" class="smpl">Via</a>               = "Via" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a> 
     2079      <div id="rfc.figure.u.68"></div><pre class="inline"><span id="rfc.iref.g.112"></span><span id="rfc.iref.g.113"></span><span id="rfc.iref.g.114"></span><span id="rfc.iref.g.115"></span><span id="rfc.iref.g.116"></span><span id="rfc.iref.g.117"></span><span id="rfc.iref.g.118"></span>  <a href="#header.via" class="smpl">Via</a>               = "Via" ":" <a href="#rule.whitespace" class="smpl">OWS</a> <a href="#header.via" class="smpl">Via-v</a> 
    20752080  <a href="#header.via" class="smpl">Via-v</a>             = 1#( <a href="#header.via" class="smpl">received-protocol</a> <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#header.via" class="smpl">received-by</a> 
    20762081                          [ <a href="#rule.whitespace" class="smpl">RWS</a> <a href="#rule.comment" class="smpl">comment</a> ] ) 
     
    28092814      <p id="rfc.section.B.4.p.4">Remove reference to non-existant identity transfer-coding value tokens. (Sections <a href="#transfer.codings" title="Transfer Codings">6.2</a> and <a href="#message.length" title="Message Length">3.4</a>) 
    28102815      </p> 
    2811       <p id="rfc.section.B.4.p.5">Clarification that the chunk length does not include the count of the octets in the chunk header and trailer. (<a href="#chunked.encoding" title="Chunked Transfer Coding">Section&nbsp;6.2.1</a>) 
    2812       </p> 
    2813       <p id="rfc.section.B.4.p.6">Require that invalid whitespace around field-names be rejected. (<a href="#header.fields" title="Header Fields">Section&nbsp;3.2</a>) 
    2814       </p> 
    2815       <p id="rfc.section.B.4.p.7">Update use of abs_path production from RFC1808 to the path-absolute + query components of RFC3986. (<a href="#request-target" title="request-target">Section&nbsp;4.1.2</a>) 
     2816      <p id="rfc.section.B.4.p.5">Require that invalid whitespace around field-names be rejected. (<a href="#header.fields" title="Header Fields">Section&nbsp;3.2</a>) 
     2817      </p> 
     2818      <p id="rfc.section.B.4.p.6">Update use of abs_path production from RFC1808 to the path-absolute + query components of RFC3986. (<a href="#request-target" title="request-target">Section&nbsp;4.1.2</a>) 
     2819      </p> 
     2820      <p id="rfc.section.B.4.p.7">Clarification that the chunk length does not include the count of the octets in the chunk header and trailer. Furthermore 
     2821         disallowed line folding in chunk extensions. (<a href="#chunked.encoding" title="Chunked Transfer Coding">Section&nbsp;6.2.1</a>) 
    28162822      </p> 
    28172823      <p id="rfc.section.B.4.p.8">Clarify exactly when close connection options must be sent. (<a href="#header.connection" id="rfc.xref.header.connection.8" title="Connection">Section&nbsp;9.1</a>) 
     
    28872893<a href="#chunked.encoding" class="smpl">chunk-ext</a> = *( ";" *WSP chunk-ext-name [ "=" chunk-ext-val ] *WSP ) 
    28882894<a href="#chunked.encoding" class="smpl">chunk-ext-name</a> = token 
    2889 <a href="#chunked.encoding" class="smpl">chunk-ext-val</a> = token / quoted-string 
     2895<a href="#chunked.encoding" class="smpl">chunk-ext-val</a> = token / quoted-str-nf 
    28902896<a href="#chunked.encoding" class="smpl">chunk-size</a> = 1*HEXDIG 
    28912897<a href="#rule.comment" class="smpl">comment</a> = "(" *( ctext / quoted-cpair / comment ) ")" 
     
    29652971 / %x5D-7E ; ']'-'~' 
    29662972 / obs-text 
     2973<a href="#chunked.encoding" class="smpl">qdtext-nf</a> = WSP / "!" / %x23-5B ; '#'-'[' 
     2974 / %x5D-7E ; ']'-'~' 
     2975 / obs-text 
    29672976<a href="#uri" class="smpl">query</a> = &lt;query, defined in [RFC3986], Section 3.4&gt; 
    29682977<a href="#rule.quoted-cpair" class="smpl">quoted-cpair</a> = "\" ( WSP / VCHAR / obs-text ) 
    29692978<a href="#rule.quoted-pair" class="smpl">quoted-pair</a> = "\" ( WSP / VCHAR / obs-text ) 
     2979<a href="#chunked.encoding" class="smpl">quoted-str-nf</a> = DQUOTE *( qdtext-nf / quoted-pair ) DQUOTE 
    29702980<a href="#rule.quoted-string" class="smpl">quoted-string</a> = DQUOTE *( qdtext / quoted-pair ) DQUOTE 
    29712981<a href="#quality.values" class="smpl">qvalue</a> = ( "0" [ "." *3DIGIT ] ) / ( "1" [ "." *3"0" ] ) 
     
    32143224         </li> 
    32153225         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/172">http://tools.ietf.org/wg/httpbis/trac/ticket/172</a>&gt;: "take over HTTP Upgrade Token Registry" 
     3226         </li> 
     3227         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/173">http://tools.ietf.org/wg/httpbis/trac/ticket/173</a>&gt;: "CR and LF in chunk extension values" 
    32163228         </li> 
    32173229         <li> &lt;<a href="http://tools.ietf.org/wg/httpbis/trac/ticket/184">http://tools.ietf.org/wg/httpbis/trac/ticket/184</a>&gt;: "HTTP/0.9 support" 
     
    32853297                        <li class="indline1"><tt>Chunked-Body</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.77"><b>6.2.1</b></a></li> 
    32863298                        <li class="indline1"><tt>comment</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.39"><b>3.2</b></a></li> 
    3287                         <li class="indline1"><tt>Connection</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.90"><b>9.1</b></a></li> 
    3288                         <li class="indline1"><tt>connection-token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.92"><b>9.1</b></a></li> 
    3289                         <li class="indline1"><tt>Connection-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.91"><b>9.1</b></a></li> 
    3290                         <li class="indline1"><tt>Content-Length</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.93"><b>9.2</b></a></li> 
    3291                         <li class="indline1"><tt>Content-Length-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.94"><b>9.2</b></a></li> 
     3299                        <li class="indline1"><tt>Connection</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.92"><b>9.1</b></a></li> 
     3300                        <li class="indline1"><tt>connection-token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.94"><b>9.1</b></a></li> 
     3301                        <li class="indline1"><tt>Connection-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.93"><b>9.1</b></a></li> 
     3302                        <li class="indline1"><tt>Content-Length</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.95"><b>9.2</b></a></li> 
     3303                        <li class="indline1"><tt>Content-Length-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.96"><b>9.2</b></a></li> 
    32923304                        <li class="indline1">CR&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.2"><b>1.2</b></a></li> 
    32933305                        <li class="indline1">CRLF&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.3"><b>1.2</b></a></li> 
    32943306                        <li class="indline1"><tt>ctext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.40"><b>3.2</b></a></li> 
    32953307                        <li class="indline1">CTL&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.4"><b>1.2</b></a></li> 
    3296                         <li class="indline1"><tt>Date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.95"><b>9.3</b></a></li> 
    3297                         <li class="indline1"><tt>Date-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.96"><b>9.3</b></a></li> 
     3308                        <li class="indline1"><tt>Date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.97"><b>9.3</b></a></li> 
     3309                        <li class="indline1"><tt>Date-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.98"><b>9.3</b></a></li> 
    32983310                        <li class="indline1"><tt>date1</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.56"><b>6.1</b></a></li> 
    32993311                        <li class="indline1"><tt>date2</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.75"><b>6.2</b></a></li> 
     
    33133325                        <li class="indline1"><tt>header-field</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.35"><b>3.2</b></a></li> 
    33143326                        <li class="indline1">HEXDIG&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.7"><b>1.2</b></a></li> 
    3315                         <li class="indline1"><tt>Host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.97"><b>9.4</b></a></li> 
    3316                         <li class="indline1"><tt>Host-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.98"><b>9.4</b></a></li> 
     3327                        <li class="indline1"><tt>Host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.99"><b>9.4</b></a></li> 
     3328                        <li class="indline1"><tt>Host-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.100"><b>9.4</b></a></li> 
    33173329                        <li class="indline1"><tt>hour</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.58"><b>6.1</b></a></li> 
    33183330                        <li class="indline1"><tt>HTTP-date</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.54"><b>6.1</b></a></li> 
     
    33343346                        <li class="indline1"><tt>path-absolute</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.28"><b>2.6</b></a></li> 
    33353347                        <li class="indline1"><tt>port</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.29"><b>2.6</b></a></li> 
    3336                         <li class="indline1"><tt>product</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.87"><b>6.3</b></a></li> 
    3337                         <li class="indline1"><tt>product-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.88"><b>6.3</b></a></li> 
    3338                         <li class="indline1"><tt>protocol-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.113"><b>9.9</b></a></li> 
    3339                         <li class="indline1"><tt>protocol-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.114"><b>9.9</b></a></li> 
    3340                         <li class="indline1"><tt>pseudonym</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.116"><b>9.9</b></a></li> 
     3348                        <li class="indline1"><tt>product</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.89"><b>6.3</b></a></li> 
     3349                        <li class="indline1"><tt>product-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.90"><b>6.3</b></a></li> 
     3350                        <li class="indline1"><tt>protocol-name</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.115"><b>9.9</b></a></li> 
     3351                        <li class="indline1"><tt>protocol-version</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.116"><b>9.9</b></a></li> 
     3352                        <li class="indline1"><tt>pseudonym</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.118"><b>9.9</b></a></li> 
    33413353                        <li class="indline1"><tt>qdtext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.19"><b>1.2.2</b></a></li> 
     3354                        <li class="indline1"><tt>qdtext-nf</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.87"><b>6.2.1</b></a></li> 
    33423355                        <li class="indline1"><tt>query</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.30"><b>2.6</b></a></li> 
    33433356                        <li class="indline1"><tt>quoted-cpair</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.41"><b>3.2</b></a></li> 
    33443357                        <li class="indline1"><tt>quoted-pair</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.21"><b>1.2.2</b></a></li> 
     3358                        <li class="indline1"><tt>quoted-str-nf</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.86"><b>6.2.1</b></a></li> 
    33453359                        <li class="indline1"><tt>quoted-string</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.18"><b>1.2.2</b></a></li> 
    3346                         <li class="indline1"><tt>qvalue</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.89"><b>6.4</b></a></li> 
     3360                        <li class="indline1"><tt>qvalue</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.91"><b>6.4</b></a></li> 
    33473361                        <li class="indline1"><tt>Reason-Phrase</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.53"><b>5.1.1</b></a></li> 
    3348                         <li class="indline1"><tt>received-by</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.115"><b>9.9</b></a></li> 
    3349                         <li class="indline1"><tt>received-protocol</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.112"><b>9.9</b></a></li> 
     3362                        <li class="indline1"><tt>received-by</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.117"><b>9.9</b></a></li> 
     3363                        <li class="indline1"><tt>received-protocol</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.114"><b>9.9</b></a></li> 
    33503364                        <li class="indline1"><tt>Request</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.44"><b>4</b></a></li> 
    33513365                        <li class="indline1"><tt>Request-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.45"><b>4.1</b></a></li> 
     
    33593373                        <li class="indline1"><tt>Status-Code</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.51"><b>5.1.1</b></a></li> 
    33603374                        <li class="indline1"><tt>Status-Line</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.50"><b>5.1</b></a></li> 
    3361                         <li class="indline1"><tt>t-codings</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.101"><b>9.5</b></a></li> 
     3375                        <li class="indline1"><tt>t-codings</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.103"><b>9.5</b></a></li> 
    33623376                        <li class="indline1"><tt>tchar</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.17"><b>1.2.2</b></a></li> 
    3363                         <li class="indline1"><tt>TE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.99"><b>9.5</b></a></li> 
    3364                         <li class="indline1"><tt>te-ext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.103"><b>9.5</b></a></li> 
    3365                         <li class="indline1"><tt>te-params</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.102"><b>9.5</b></a></li> 
    3366                         <li class="indline1"><tt>TE-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.100"><b>9.5</b></a></li> 
     3377                        <li class="indline1"><tt>TE</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.101"><b>9.5</b></a></li> 
     3378                        <li class="indline1"><tt>te-ext</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.105"><b>9.5</b></a></li> 
     3379                        <li class="indline1"><tt>te-params</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.104"><b>9.5</b></a></li> 
     3380                        <li class="indline1"><tt>TE-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.102"><b>9.5</b></a></li> 
    33673381                        <li class="indline1"><tt>time-of-day</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.57"><b>6.1</b></a></li> 
    33683382                        <li class="indline1"><tt>token</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.16"><b>1.2.2</b></a></li> 
    3369                         <li class="indline1"><tt>Trailer</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.104"><b>9.6</b></a></li> 
     3383                        <li class="indline1"><tt>Trailer</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.106"><b>9.6</b></a></li> 
    33703384                        <li class="indline1"><tt>trailer-part</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.85"><b>6.2.1</b></a></li> 
    3371                         <li class="indline1"><tt>Trailer-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.105"><b>9.6</b></a></li> 
     3385                        <li class="indline1"><tt>Trailer-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.107"><b>9.6</b></a></li> 
    33723386                        <li class="indline1"><tt>transfer-coding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.70"><b>6.2</b></a></li> 
    3373                         <li class="indline1"><tt>Transfer-Encoding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.106"><b>9.7</b></a></li> 
    3374                         <li class="indline1"><tt>Transfer-Encoding-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.107"><b>9.7</b></a></li> 
     3387                        <li class="indline1"><tt>Transfer-Encoding</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.108"><b>9.7</b></a></li> 
     3388                        <li class="indline1"><tt>Transfer-Encoding-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.109"><b>9.7</b></a></li> 
    33753389                        <li class="indline1"><tt>transfer-extension</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.71"><b>6.2</b></a></li> 
    33763390                        <li class="indline1"><tt>transfer-parameter</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.72"><b>6.2</b></a></li> 
    3377                         <li class="indline1"><tt>Upgrade</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.108"><b>9.8</b></a></li> 
    3378                         <li class="indline1"><tt>Upgrade-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.109"><b>9.8</b></a></li> 
     3391                        <li class="indline1"><tt>Upgrade</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.110"><b>9.8</b></a></li> 
     3392                        <li class="indline1"><tt>Upgrade-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.111"><b>9.8</b></a></li> 
    33793393                        <li class="indline1"><tt>uri-host</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.31"><b>2.6</b></a></li> 
    33803394                        <li class="indline1"><tt>URI-reference</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.25"><b>2.6</b></a></li> 
    33813395                        <li class="indline1"><tt>value</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.74"><b>6.2</b></a></li> 
    33823396                        <li class="indline1">VCHAR&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.11"><b>1.2</b></a></li> 
    3383                         <li class="indline1"><tt>Via</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.110"><b>9.9</b></a></li> 
    3384                         <li class="indline1"><tt>Via-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.111"><b>9.9</b></a></li> 
     3397                        <li class="indline1"><tt>Via</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.112"><b>9.9</b></a></li> 
     3398                        <li class="indline1"><tt>Via-v</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.113"><b>9.9</b></a></li> 
    33853399                        <li class="indline1">WSP&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.12"><b>1.2</b></a></li> 
    33863400                        <li class="indline1"><tt>year</tt>&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.65"><b>6.1</b></a></li> 
    33873401                     </ul> 
    33883402                  </li> 
    3389                   <li class="indline1">gzip (Coding Format)&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.86">6.2.2.3</a></li> 
     3403                  <li class="indline1">gzip (Coding Format)&nbsp;&nbsp;<a class="iref" href="#rfc.iref.g.88">6.2.2.3</a></li> 
    33903404               </ul> 
    33913405            </li> 
  • draft-ietf-httpbis/latest/p1-messaging.xml

    r706 r707  
    18341834  <x:anchor-alias value="last-chunk"/> 
    18351835  <x:anchor-alias value="trailer-part"/> 
     1836  <x:anchor-alias value="quoted-str-nf"/> 
     1837  <x:anchor-alias value="qdtext-nf"/> 
    18361838<t> 
    18371839   The chunked encoding modifies the body of a message in order to 
     
    18421844   received the full message. 
    18431845</t> 
    1844 <figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Chunked-Body"/><iref primary="true" item="Grammar" subitem="chunk"/><iref primary="true" item="Grammar" subitem="chunk-size"/><iref primary="true" item="Grammar" subitem="last-chunk"/><iref primary="true" item="Grammar" subitem="chunk-ext"/><iref primary="true" item="Grammar" subitem="chunk-ext-name"/><iref primary="true" item="Grammar" subitem="chunk-ext-val"/><iref primary="true" item="Grammar" subitem="chunk-data"/><iref primary="true" item="Grammar" subitem="trailer-part"/> 
     1846<figure><artwork type="abnf2616"><iref primary="true" item="Grammar" subitem="Chunked-Body"/><iref primary="true" item="Grammar" subitem="chunk"/><iref primary="true" item="Grammar" subitem="chunk-size"/><iref primary="true" item="Grammar" subitem="last-chunk"/><iref primary="true" item="Grammar" subitem="chunk-ext"/><iref primary="true" item="Grammar" subitem="chunk-ext-name"/><iref primary="true" item="Grammar" subitem="chunk-ext-val"/><iref primary="true" item="Grammar" subitem="chunk-data"/><iref primary="true" item="Grammar" subitem="trailer-part"/><iref primary="true" item="Grammar" subitem="quoted-str-nf"/><iref primary="true" item="Grammar" subitem="qdtext-nf"/> 
    18451847  <x:ref>Chunked-Body</x:ref>   = *<x:ref>chunk</x:ref> 
    18461848                   <x:ref>last-chunk</x:ref> 
     
    18561858                      [ "=" <x:ref>chunk-ext-val</x:ref> ] *WSP ) 
    18571859  <x:ref>chunk-ext-name</x:ref> = <x:ref>token</x:ref> 
    1858   <x:ref>chunk-ext-val</x:ref>  = <x:ref>token</x:ref> / <x:ref>quoted-string</x:ref> 
     1860  <x:ref>chunk-ext-val</x:ref>  = <x:ref>token</x:ref> / <x:ref>quoted-str-nf</x:ref> 
    18591861  <x:ref>chunk-data</x:ref>     = 1*<x:ref>OCTET</x:ref> ; a sequence of chunk-size octets 
    18601862  <x:ref>trailer-part</x:ref>   = *( <x:ref>entity-header</x:ref> <x:ref>CRLF</x:ref> ) 
     1863   
     1864  <x:ref>quoted-str-nf</x:ref>  = <x:ref>DQUOTE</x:ref> *( <x:ref>qdtext-nf</x:ref> / <x:ref>quoted-pair</x:ref> ) <x:ref>DQUOTE</x:ref> 
     1865                 ; like <x:ref>quoted-string</x:ref>, but disallowing line folding 
     1866  <x:ref>qdtext-nf</x:ref>      = <x:ref>WSP</x:ref> / %x21 / %x23-5B / %x5D-7E / <x:ref>obs-text</x:ref> 
     1867                 ; <x:ref>WSP</x:ref> / &lt;<x:ref>VCHAR</x:ref> except <x:ref>DQUOTE</x:ref> and "\"&gt; / <x:ref>obs-text</x:ref>  
    18611868</artwork></figure> 
    18621869<t> 
     
    46404647</t> 
    46414648<t> 
    4642   Clarification that the chunk length does not include 
    4643   the count of the octets in the chunk header and trailer. 
    4644   (<xref target="chunked.encoding"/>) 
    4645 </t> 
    4646 <t> 
    46474649  Require that invalid whitespace around field-names be rejected. 
    46484650  (<xref target="header.fields"/>) 
     
    46524654  components of RFC3986. 
    46534655  (<xref target="request-target"/>) 
     4656</t> 
     4657<t> 
     4658  Clarification that the chunk length does not include the count of the octets 
     4659  in the chunk header and trailer. Furthermore disallowed line folding 
     4660  in chunk extensions. 
     4661  (<xref target="chunked.encoding"/>) 
    46544662</t> 
    46554663<t> 
     
    47334741<x:ref>chunk-ext</x:ref> = *( ";" *WSP chunk-ext-name [ "=" chunk-ext-val ] *WSP ) 
    47344742<x:ref>chunk-ext-name</x:ref> = token 
    4735 <x:ref>chunk-ext-val</x:ref> = token / quoted-string 
     4743<x:ref>chunk-ext-val</x:ref> = token / quoted-str-nf 
    47364744<x:ref>chunk-size</x:ref> = 1*HEXDIG 
    47374745<x:ref>comment</x:ref> = "(" *( ctext / quoted-cpair / comment ) ")" 
     
    48114819 / %x5D-7E ; ']'-'~' 
    48124820 / obs-text 
     4821<x:ref>qdtext-nf</x:ref> = WSP / "!" / %x23-5B ; '#'-'[' 
     4822 / %x5D-7E ; ']'-'~' 
     4823 / obs-text 
    48134824<x:ref>query</x:ref> = &lt;query, defined in [RFC3986], Section 3.4&gt; 
    48144825<x:ref>quoted-cpair</x:ref> = "\" ( WSP / VCHAR / obs-text ) 
    48154826<x:ref>quoted-pair</x:ref> = "\" ( WSP / VCHAR / obs-text ) 
     4827<x:ref>quoted-str-nf</x:ref> = DQUOTE *( qdtext-nf / quoted-pair ) DQUOTE 
    48164828<x:ref>quoted-string</x:ref> = DQUOTE *( qdtext / quoted-pair ) DQUOTE 
    48174829<x:ref>qvalue</x:ref> = ( "0" [ "." *3DIGIT ] ) / ( "1" [ "." *3"0" ] ) 
     
    52725284    </t> 
    52735285    <t> 
     5286      <eref target="http://tools.ietf.org/wg/httpbis/trac/ticket/173"/>: 
     5287      "CR and LF in chunk extension values" 
     5288    </t> 
     5289    <t> 
    52745290      <eref target="http://tools.ietf.org/wg/httpbis/trac/ticket/184"/>: 
    52755291      "HTTP/0.9 support" 
Note: See TracChangeset for help on using the changeset viewer.