]> asedeno.scripts.mit.edu Git - PuTTY.git/blobdiff - sshzlib.c
Surround process protection with an #ifndef UNPROTECT
[PuTTY.git] / sshzlib.c
index 8a64e3563ee6318104d26a19b753dacd8385cd2a..c69edfb81f9a09648baa67c5cf909b3e83aaabcc 100644 (file)
--- a/sshzlib.c
+++ b/sshzlib.c
@@ -1234,6 +1234,8 @@ int zlib_decompress_block(void *handle, unsigned char *block, int len,
                goto finished;
            if (code == -2)
                goto decode_error;
+           if (code >= 30)            /* dist symbols 30 and 31 are invalid */
+               goto decode_error;
            dctx->state = GOTDISTSYM;
            dctx->sym = code;
            break;