From: Pekka Riikonen Date: Tue, 26 Sep 2006 06:03:40 +0000 (+0000) Subject: Check for equal data lengths in verification X-Git-Tag: silc.client.1.1.beta1~256 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=53c44ff07775925292f656f524b62d6553d0c0d2 Check for equal data lengths in verification --- diff --git a/lib/silccrypt/silcpkcs1.c b/lib/silccrypt/silcpkcs1.c index 88355e76..0094e130 100644 --- a/lib/silccrypt/silcpkcs1.c +++ b/lib/silccrypt/silcpkcs1.c @@ -679,10 +679,13 @@ SilcBool silc_pkcs1_verify_no_oid(void *public_key, if (hash) { silc_hash_make(hash, data, data_len, hashr); data = hashr; + data_len = silc_hash_len(hash); } /* Compare */ - if (memcmp(data, unpadded, len)) + if (len != data_len) + ret = FALSE; + else if (memcmp(data, unpadded, len)) ret = FALSE; memset(verify, 0, verify_len);