| # Feed this file to script/make-artificial.go |
| |
| make deflate |
| |
| # RFC 1951 section 3.2.6 says that for fixed Huffman codes, "distance codes |
| # 30-31 will never actually occur in the compressed data", and likewise for |
| # literal/length values 286-287. |
| # |
| # This dates from a more innocent time, before widespread concerns about |
| # malicious actors deliberately supplying invalid input to probe for security |
| # vulnerabilities. Upon encountering such input, a robust decoder shouldn't |
| # enter an internally inconsistent state. |
| # |
| # In terms of the Wuffs implementation (and error message convention), we |
| # should return an error, as it is indeed invalid input, but we shouldn't |
| # return an "internal error". |
| blockFixedHuffman (final) { |
| len 3 distCode 31 |
| } |