aboutsummaryrefslogtreecommitdiffstats
path: root/engines
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2015-03-25 14:41:58 +0100
committerRichard Levitte <levitte@openssl.org>2015-03-30 05:31:58 +0200
commit06affe3dac65592a341547f5a47e52cedb7b71f8 (patch)
tree8ce005d4f53f785e5b0082998bf8db9c66cc2c68 /engines
parentb1a5d1c652086257930a1f62ae51c9cdee654b2c (diff)
downloadopenssl-06affe3dac65592a341547f5a47e52cedb7b71f8.tar.gz
Initialised 'ok' and redo the logic.
The logic with how 'ok' was calculated didn't quite convey what's "ok", so the logic is slightly redone to make it less confusing. Reviewed-by: Andy Polyakov <appro@openssl.org>
Diffstat (limited to 'engines')
-rw-r--r--engines/ccgost/gost_sign.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/engines/ccgost/gost_sign.c b/engines/ccgost/gost_sign.c
index b3e1007dbb..fad2004361 100644
--- a/engines/ccgost/gost_sign.c
+++ b/engines/ccgost/gost_sign.c
@@ -167,7 +167,7 @@ int gost_do_verify(const unsigned char *dgst, int dgst_len,
BIGNUM *q2 = NULL;
BIGNUM *u = NULL, *v = NULL, *z1 = NULL, *z2 = NULL;
BIGNUM *tmp2 = NULL, *tmp3 = NULL;
- int ok;
+ int ok = 0;
BN_CTX *ctx = BN_CTX_new();
if(!ctx) {
GOSTerr(GOST_F_GOST_DO_VERIFY, ERR_R_MALLOC_FAILURE);
@@ -208,9 +208,9 @@ int gost_do_verify(const unsigned char *dgst, int dgst_len,
BN_mod_exp(tmp2, dsa->pub_key, z2, dsa->p, ctx);
BN_mod_mul(tmp3, tmp, tmp2, dsa->p, ctx);
BN_mod(u, tmp3, dsa->q, ctx);
- ok = BN_cmp(u, sig->r);
+ ok = (BN_cmp(u, sig->r) == 0);
- if (ok != 0) {
+ if (!ok) {
GOSTerr(GOST_F_GOST_DO_VERIFY, GOST_R_SIGNATURE_MISMATCH);
}
err:
@@ -219,7 +219,7 @@ err:
BN_CTX_end(ctx);
BN_CTX_free(ctx);
}
- return (ok == 0);
+ return ok;
}
/*