Commit e1d9f1ab authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

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: default avatarRich Salz <rsalz@openssl.org>
parent f7c4584b
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -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);
}

+2 −10
Original line number Diff line number Diff line
@@ -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 (dlen > BN_num_bytes(dsa->q))
        /*
+0 −2
Original line number Diff line number Diff line
@@ -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;