diff options
author | Guy Harris <guy@alum.mit.edu> | 2011-05-09 17:53:45 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2011-05-09 17:53:45 +0000 |
commit | f4a752873fcf3e30828467016bd5ebcd6dd933c1 (patch) | |
tree | de3b7335162e77cfb3e69b6a54f94caf3ce362b7 /wiretap/file_wrappers.c | |
parent | 5a4598a1c419c7deafdb0429c6dddd347f4c4e83 (diff) |
Note that compressed Windows Sniffer files might have a CRC, just not
one computed the right way (as specified by RFC 1952).
svn path=/trunk/; revision=37032
Diffstat (limited to 'wiretap/file_wrappers.c')
-rw-r--r-- | wiretap/file_wrappers.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/wiretap/file_wrappers.c b/wiretap/file_wrappers.c index bd4207d885..31c70f7638 100644 --- a/wiretap/file_wrappers.c +++ b/wiretap/file_wrappers.c @@ -506,6 +506,15 @@ zlib_read(FILE_T state, unsigned char *buf, unsigned int count) if (ret == Z_STREAM_END) { if (gz_next4(state, &crc) != -1 && gz_next4(state, &len) != -1) { + /* + * XXX - compressed Windows Sniffer don't + * all have the same CRC value; is it just + * random crap, or are they running the + * CRC on a different set of data than + * you're supposed to (e.g., not CRCing + * some of the data), or something such + * as that? + */ if (crc != strm->adler && !state->dont_check_crc) { state->err = WTAP_ERR_DECOMPRESS; state->err_info = "bad CRC"; |