diff options
author | Bodo Möller <bodo@openssl.org> | 2011-02-03 15:03:51 +0300 |
---|---|---|
committer | Bodo Möller <bodo@openssl.org> | 2011-02-03 15:03:51 +0300 |
commit | e2b798c8b329d88e4f38ca4f5c4445eddcfad4ca (patch) | |
tree | e30ad81264713f64d75bdfb3dadf46e74e51638f /crypto/comp/c_rle.c | |
parent | 9bda745876ef9e239ca9e294ba27e1b0b1906bf1 (diff) |
Assorted bugfixes:
- safestack macro changes for C++ were incomplete
- RLE decompression boundary case
- SSL 2.0 key arg length check
Submitted by: Google (Adam Langley, Neel Mehta, Bodo Moeller)
Diffstat (limited to 'crypto/comp/c_rle.c')
-rw-r--r-- | crypto/comp/c_rle.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/crypto/comp/c_rle.c b/crypto/comp/c_rle.c index efd366fa22..18bceae51e 100644 --- a/crypto/comp/c_rle.c +++ b/crypto/comp/c_rle.c @@ -46,7 +46,7 @@ static int rle_expand_block(COMP_CTX *ctx, unsigned char *out, { int i; - if (olen < (ilen-1)) + if (ilen == 0 || olen < (ilen-1)) { /* ZZZZZZZZZZZZZZZZZZZZZZ */ return(-1); @@ -59,4 +59,3 @@ static int rle_expand_block(COMP_CTX *ctx, unsigned char *out, } return(ilen-1); } - |