Module Name: src Committed By: drochner Date: Thu Feb 17 17:10:18 UTC 2011
Modified Files: src/sys/opencrypto: deflate.c Log Message: The decompressor in sys/net/zlib.c has a bug: It returns Z_BUF_ERROR after a successful decompression in rare cases. A necessary but not sufficient condition seems to be that the decompressed data end exactly at the end of an allocated output buffer. (I can reproduce this reliably with a userland program built against kernel zlib. Userland libz is much newer and not affected.) Since kernel zlib is based on an old version and heavily modified, I don't dare to touch it. So catch this case in the wrapper. Being here, reorder deflate/inflate error handling and add comments to make understandable what is tested and why. To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/sys/opencrypto/deflate.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.