Compare parameters when comparing public keys.
This commit is contained in:
parent
4d62ec32e0
commit
0cb8499b73
@ -167,14 +167,6 @@ static int dsa_pub_encode(X509_PUBKEY *pk, const EVP_PKEY *pkey)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int dsa_pub_cmp(const EVP_PKEY *a, const EVP_PKEY *b)
|
||||
{
|
||||
if (BN_cmp(b->pkey.dsa->pub_key,a->pkey.dsa->pub_key) != 0)
|
||||
return 0;
|
||||
else
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* In PKCS#8 DSA: you just get a private key integer and parameters in the
|
||||
* AlgorithmIdentifier the pubkey must be recalculated.
|
||||
*/
|
||||
@ -389,6 +381,16 @@ static int dsa_cmp_parameters(const EVP_PKEY *a, const EVP_PKEY *b)
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int dsa_pub_cmp(const EVP_PKEY *a, const EVP_PKEY *b)
|
||||
{
|
||||
if (dsa_cmp_parameters(a, b) == 0)
|
||||
return 0;
|
||||
if (BN_cmp(b->pkey.dsa->pub_key,a->pkey.dsa->pub_key) != 0)
|
||||
return 0;
|
||||
else
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void int_dsa_free(EVP_PKEY *pkey)
|
||||
{
|
||||
DSA_free(pkey->pkey.dsa);
|
||||
|
Loading…
x
Reference in New Issue
Block a user