diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2016-08-19 23:28:29 +0100 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2016-08-24 14:17:53 +0100 |
commit | 1027ad4f34c30b8585592764b9a670ba36888269 (patch) | |
tree | 81387556b042c6fc2226df693b825270193e1668 | |
parent | 0fff5065884d5ac61123a604bbcee30a53c808ff (diff) |
Avoid overflow in MDC2_Update()
Thanks to Shi Lei for reporting this issue.
CVE-2016-6303
Reviewed-by: Matt Caswell <matt@openssl.org>
(cherry picked from commit 55d83bf7c10c7b205fffa23fa7c3977491e56c07)
-rw-r--r-- | crypto/mdc2/mdc2dgst.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/mdc2/mdc2dgst.c b/crypto/mdc2/mdc2dgst.c index 6615cf84d7..2dce493633 100644 --- a/crypto/mdc2/mdc2dgst.c +++ b/crypto/mdc2/mdc2dgst.c @@ -91,7 +91,7 @@ int MDC2_Update(MDC2_CTX *c, const unsigned char *in, size_t len) i = c->num; if (i != 0) { - if (i + len < MDC2_BLOCK) { + if (len < MDC2_BLOCK - i) { /* partial block */ memcpy(&(c->data[i]), in, len); c->num += (int)len; |