Remove kinv/r fields from DSA structure.

The kinv/r fields in the DSA structure are not used by OpenSSL internally
and should not be used in general.

Reviewed-by: Rich Salz <rsalz@openssl.org>
This commit is contained in:
Dr. Stephen Henson 2016-03-07 17:31:00 +00:00
parent f7c4584b15
commit e1d9f1ab39
3 changed files with 2 additions and 14 deletions

View File

@ -180,8 +180,6 @@ void DSA_free(DSA *r)
BN_clear_free(r->g);
BN_clear_free(r->pub_key);
BN_clear_free(r->priv_key);
BN_clear_free(r->kinv);
BN_clear_free(r->r);
OPENSSL_free(r);
}

View File

@ -158,16 +158,8 @@ static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa)
if (ctx == NULL)
goto err;
redo:
if ((dsa->kinv == NULL) || (dsa->r == NULL)) {
if (!dsa_sign_setup(dsa, ctx, &kinv, &r, dgst, dlen))
goto err;
} else {
kinv = dsa->kinv;
dsa->kinv = NULL;
r = dsa->r;
dsa->r = NULL;
noredo = 1;
}
if (!dsa_sign_setup(dsa, ctx, &kinv, &r, dgst, dlen))
goto err;
if (dlen > BN_num_bytes(dsa->q))
/*

View File

@ -164,8 +164,6 @@ struct dsa_st {
BIGNUM *g;
BIGNUM *pub_key; /* y public key */
BIGNUM *priv_key; /* x private key */
BIGNUM *kinv; /* Signing pre-calc */
BIGNUM *r; /* Signing pre-calc */
int flags;
/* Normally used to cache montgomery values */
BN_MONT_CTX *method_mont_p;