Clarification of the term "deflate"

Below is the definition of "deflate" from RFC 2616, section 3.5 "Content
Codings"

  deflate
    The "zlib" format defined in RFC 1950 [31] in combination with
    the "deflate" compression mechanism described in RFC 1951 [29].

There is ambiguity in that definition because of the inconsistent use of the
term "deflate". This has resulted in a long standing confusion about how to
implement "deflate" encoding. 

There was a time a few years back when most of the high profile browser and
some http server implementations incorrectly implemented http "deflate"
encoding using RFC 1951 without the RFC 1950 wrapper. Admittedly most, if
not all, of the incorrect implementations have now been fixed, but the fix
applied recognises the reality that there are incorrect implementations of
"deflate" out in the wild. All browsers now seem to be able to cope with
"deflate" in both its RFC1950 or RFC1951 incarnations.

So I suggest there are two issues that need to be addressed

1. The definition of "deflate" needs to be rewritten to remove the
ambiguity.

2. Document the reality that there are incorrect implementations, and
recommend that anyone writing a "deflate" decoder should cope with both
forms.

cheers
Paul

Received on Tuesday, 7 August 2007 13:21:48 UTC