aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2015-04-29 09:58:10 +0100
committerMatt Caswell <matt@openssl.org>2015-04-30 23:12:39 +0100
commit3deeeeb61b0c5b9b5f0993a67b7967d2f85186da (patch)
treecc581fa0b192b232abbc92d80264be53cc385379 /crypto
parentcb0f400b0cea2d2943f99b1e89c04ff6ed748cd5 (diff)
downloadopenssl-3deeeeb61b0c5b9b5f0993a67b7967d2f85186da.tar.gz
Add sanity check to print_bin function
Add a sanity check to the print_bin function to ensure that the |off| argument is positive. Thanks to Kevin Wojtysiak (Int3 Solutions) and Paramjot Oberoi (Int3 Solutions) for reporting this issue. Reviewed-by: Andy Polyakov <appro@openssl.org>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/ec/eck_prn.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/crypto/ec/eck_prn.c b/crypto/ec/eck_prn.c
index e39aa711d8..e1f5b69c76 100644
--- a/crypto/ec/eck_prn.c
+++ b/crypto/ec/eck_prn.c
@@ -345,12 +345,14 @@ static int print_bin(BIO *fp, const char *name, const unsigned char *buf,
if (buf == NULL)
return 1;
- if (off) {
+ if (off > 0) {
if (off > 128)
off = 128;
memset(str, ' ', off);
if (BIO_write(fp, str, off) <= 0)
return 0;
+ } else {
+ off = 0;
}
if (BIO_printf(fp, "%s", name) <= 0)