summaryrefslogtreecommitdiffstats
path: root/crypto/ecdsa
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2011-04-06 18:06:41 +0000
committerDr. Stephen Henson <steve@openssl.org>2011-04-06 18:06:41 +0000
commitacd410dc15cf1a70477989b7e753a2c13f22ee41 (patch)
treea0c17cbb510df2fd2e83918bdd8f5e50cff65165 /crypto/ecdsa
parent161cc82df13b2f491706b77004ba834f35d0cd8c (diff)
check buffer is larger enough before overwriting
Diffstat (limited to 'crypto/ecdsa')
-rw-r--r--crypto/ecdsa/ecdsatest.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/crypto/ecdsa/ecdsatest.c b/crypto/ecdsa/ecdsatest.c
index d524534448..7590f6f5b0 100644
--- a/crypto/ecdsa/ecdsatest.c
+++ b/crypto/ecdsa/ecdsatest.c
@@ -168,10 +168,9 @@ int fbytes(unsigned char *buf, int num)
return 0;
}
fbytes_counter ++;
- ret = BN_bn2bin(tmp, buf);
- if (ret == 0 || ret != num)
+ if (num != BN_num_bytes(tmp) || !BN_bn2bin(tmp, buf))
ret = 0;
- else
+ else
ret = 1;
if (tmp)
BN_free(tmp);