diff options
author | Neal H. Walfield <neal@sequoia-pgp.org> | 2024-01-24 14:15:21 +0100 |
---|---|---|
committer | Neal H. Walfield <neal@sequoia-pgp.org> | 2024-01-24 14:27:46 +0100 |
commit | de51f1680d2a9a449639c2f32312fc1cba707a16 (patch) | |
tree | 0f7870edc1e753e2114d71b5f04ee78d39351853 /openpgp/src/cert.rs | |
parent | 7fefbc950a9fc39437a89443dc5eb8ad824a7bb0 (diff) |
openpgp: Use KeyHandle::aliases to check for a fingerprint.
- When checking of a list of issuers contains a fingerprint, use
`KeyHandle::aliases`, don't search for the fingerprint, and then the
key ID.
Diffstat (limited to 'openpgp/src/cert.rs')
-rw-r--r-- | openpgp/src/cert.rs | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/openpgp/src/cert.rs b/openpgp/src/cert.rs index 81a05c5d..f5579605 100644 --- a/openpgp/src/cert.rs +++ b/openpgp/src/cert.rs @@ -1794,7 +1794,6 @@ impl Cert { } let primary_fp: KeyHandle = self.key_handle(); - let primary_keyid = KeyHandle::KeyID(primary_fp.clone().into()); 'outer: for (unknown_idx, mut sig) in bad_sigs { // Did we find a new place for sig? @@ -1805,8 +1804,7 @@ impl Cert { sig.get_issuers(); let is_selfsig = issuers.is_empty() - || issuers.contains(&primary_fp) - || issuers.contains(&primary_keyid); + || issuers.iter().any(|kh| kh.aliases(&primary_fp)); macro_rules! check_one { ($desc:expr, $sigs:expr, $sig:expr, @@ -2091,9 +2089,8 @@ impl Cert { // Split signatures on unknown components. let primary_fp: KeyHandle = self.key_handle(); - let primary_keyid = KeyHandle::KeyID(primary_fp.clone().into()); for c in self.unknowns.iter_mut() { - parser::split_sigs(&primary_fp, &primary_keyid, c); + parser::split_sigs(&primary_fp, c); } // Sort again. We may have moved signatures to the right |