diff options
author | Werner Koch <[email protected]> | 2000-09-18 14:35:34 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2000-09-18 14:35:34 +0000 |
commit | 986d928ce2a561b04fda7730de6a94f9b1e703d6 (patch) | |
tree | 9d815bcf427ee76f678153f4b000d8843816a2bd /g10/ringedit.c | |
parent | See ChangeLog: Tue Aug 22 14:31:15 CEST 2000 Werner Koch (diff) | |
download | gnupg-986d928ce2a561b04fda7730de6a94f9b1e703d6.tar.gz gnupg-986d928ce2a561b04fda7730de6a94f9b1e703d6.zip |
See ChangeLog: Mon Sep 18 16:35:45 CEST 2000 Werner Koch
Diffstat (limited to '')
-rw-r--r-- | g10/ringedit.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/g10/ringedit.c b/g10/ringedit.c index 3a29654d2..311cf41fc 100644 --- a/g10/ringedit.c +++ b/g10/ringedit.c @@ -1114,7 +1114,13 @@ cmp_seckey( PKT_secret_key *req_sk, PKT_secret_key *sk ) n = pubkey_get_nskey( req_sk->pubkey_algo ); for(i=0; i < n; i++ ) { - if( mpi_cmp( req_sk->skey[i], sk->skey[i] ) ) + /* Note: because v4 protected keys have nothing in the + * mpis except for the first one, we skip all NULL MPIs. + * This might not be always correct in cases where the both + * keys do not match in their secret parts but we can ignore that + * because the need for this function is quite ugly. */ + if( req_sk->skey[1] && sk->skey[i] + && mpi_cmp( req_sk->skey[i], sk->skey[i] ) ) return -1; } return 0; |