diff options
Diffstat (limited to 'g10/ringedit.c')
-rw-r--r-- | g10/ringedit.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/g10/ringedit.c b/g10/ringedit.c index ba71f0e67..1ec35b811 100644 --- a/g10/ringedit.c +++ b/g10/ringedit.c @@ -517,6 +517,13 @@ keyring_search( PACKET *req, KBPOS *kbpos, IOBUF iobuf, const char *fname ) && !mpi_cmp( req_skc->d.elg.y, skc->d.elg.y ) && !mpi_cmp( req_skc->d.elg.x, skc->d.elg.x ) ) + || ( skc->pubkey_algo == PUBKEY_ALGO_DSA + && !mpi_cmp( req_skc->d.dsa.p, skc->d.dsa.p ) + && !mpi_cmp( req_skc->d.dsa.q, skc->d.dsa.q ) + && !mpi_cmp( req_skc->d.dsa.g, skc->d.dsa.g ) + && !mpi_cmp( req_skc->d.dsa.y, skc->d.dsa.y ) + && !mpi_cmp( req_skc->d.dsa.x, skc->d.dsa.x ) + ) || ( skc->pubkey_algo == PUBKEY_ALGO_RSA && !mpi_cmp( req_skc->d.rsa.rsa_n, skc->d.rsa.rsa_n ) && !mpi_cmp( req_skc->d.rsa.rsa_e, skc->d.rsa.rsa_e ) @@ -537,6 +544,12 @@ keyring_search( PACKET *req, KBPOS *kbpos, IOBUF iobuf, const char *fname ) && !mpi_cmp( req_pkc->d.elg.g, pkc->d.elg.g ) && !mpi_cmp( req_pkc->d.elg.y, pkc->d.elg.y ) ) + || ( pkc->pubkey_algo == PUBKEY_ALGO_DSA + && !mpi_cmp( req_pkc->d.dsa.p, pkc->d.dsa.p ) + && !mpi_cmp( req_pkc->d.dsa.q, pkc->d.dsa.q ) + && !mpi_cmp( req_pkc->d.dsa.g, pkc->d.dsa.g ) + && !mpi_cmp( req_pkc->d.dsa.y, pkc->d.dsa.y ) + ) || ( pkc->pubkey_algo == PUBKEY_ALGO_RSA && !mpi_cmp( req_pkc->d.rsa.rsa_n, pkc->d.rsa.rsa_n ) && !mpi_cmp( req_pkc->d.rsa.rsa_e, pkc->d.rsa.rsa_e ) |