From 26141babcfad85469383c3919dcff5713fecad16 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Wed, 1 Feb 2017 00:46:09 +0100 Subject: [PATCH] bntest: make sure that equalBN takes note of negative zero Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/2335) --- test/bntest.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/test/bntest.c b/test/bntest.c index f9e36869c2..77c7af62c2 100644 --- a/test/bntest.c +++ b/test/bntest.c @@ -146,8 +146,14 @@ static int equalBN(const char *op, const BIGNUM *expected, const BIGNUM *actual) if (BN_cmp(expected, actual) == 0) return 1; - exstr = BN_bn2hex(expected); - actstr = BN_bn2hex(actual); + if (BN_is_zero(expected) && BN_is_negative(expected)) + exstr = OPENSSL_strdup("-0"); + else + exstr = BN_bn2hex(expected); + if (BN_is_zero(actual) && BN_is_negative(actual)) + actstr = OPENSSL_strdup("-0"); + else + actstr = BN_bn2hex(actual); if (exstr == NULL || actstr == NULL) goto err; -- 2.34.1