diff options
author | Matt Caswell <matt@openssl.org> | 2015-04-29 09:58:10 +0100 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2015-04-30 23:12:39 +0100 |
commit | 3deeeeb61b0c5b9b5f0993a67b7967d2f85186da (patch) | |
tree | cc581fa0b192b232abbc92d80264be53cc385379 /crypto/ec/eck_prn.c | |
parent | cb0f400b0cea2d2943f99b1e89c04ff6ed748cd5 (diff) |
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/ec/eck_prn.c')
-rw-r--r-- | crypto/ec/eck_prn.c | 4 |
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) |