RE: What is Content-Length?
John Franks (john@math.nwu.edu)
Fri, 12 Dec 1997 10:32:45 -0600 (CST)
On Thu, 11 Dec 1997, Paul Leach wrote:
> An alternate proposal, which I believe is simpler and requires less
> modification:
I like this proposal. It does seem simpler.
>
> Content-Length, if validly present, is the length of the entity-body (which
> is the message-body after transfer codings are removed). It is also the
> length of the message-body if no transfer-coding is used.
> Content-Length MUST NOT be present if a transfer coding is used. If it is
> present in such cases, it is invalid, and the robustness principle says it
> should be ignored.
>
<snip>
>
> Transfer-Length, if validly present, is the length of the message-body.
> Transfer-Length MUST NOT be present on self-delimiting transfer codings. If
> it is present in this case, it is invalid, and the robustness principle says
> it should be ignored.
>
This makes it crucially important for every transfer encoding to be
EXPLICITLY DEFINED as self-delimiting or non-self-delimiting.
> Under these rules, Content-Length is still logically end-to-end -- the
> header may not physically be present, but its value if it is ever present is
> well-defined end-to-end and the same end-to-end.
>
This is a virtue of Paul's proposal.
>
> Digest Auth should drop all reference to Content-Length and replaces it with
> "length of entity-body", which is always well-defined and always
> determinable given the above rules.
>
Agreed.
John Franks
john@math.nwu.edu