summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorNeal H. Walfield <neal@pep.foundation>2020-01-06 10:29:13 +0100
committerNeal H. Walfield <neal@pep.foundation>2020-01-06 14:34:03 +0100
commit7e78e716610ac3a9bff86035c52b344b437951a2 (patch)
tree8897a006fd588a019c4beffabdf0050bdc1b8c5b /net
parenta01b070c9599be7f2be4dfaa25dd9ff01efe8a57 (diff)
openpgp: Pass a timestamp to the KeyIter instead of each filter.
- KeyIter::revoked and KeyIter::key_flags (and its variants) didn't take a time stamp so they could only be used for filtering keys based on their current state, not their state at some time in the past. Adding a time stamp to each of the filters would have fixed the problem, but it would have made the interface ugly: callers always want the same time stamp for all filters. - Split KeyIter into two structures: a KeyIter and a ValidKeyIter. - Add KeyIter::policy. It takes a time stamp, which is then used for filters like `alive` and `revoked`, and it returns a ValidKeyIter, which exposes filters that require a time stamp.
Diffstat (limited to 'net')
-rw-r--r--net/src/lib.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/src/lib.rs b/net/src/lib.rs
index f7add939..048031fe 100644
--- a/net/src/lib.rs
+++ b/net/src/lib.rs
@@ -182,8 +182,8 @@ impl KeyServer {
Some(armor::Kind::PublicKey)));
match Cert::from_reader(r) {
Ok(cert) => {
- if cert.keys().any(|ka| {
- KeyID::from(ka.key().fingerprint())
+ if cert.keys().any(|key| {
+ KeyID::from(key.fingerprint())
== keyid_want
}) {
future::done(Ok(cert))