Age | Commit message (Collapse) | Author |
|
- Including the reference time in the KeyAmalgamation structure
rather than having the user supply it to the individual
methods (like `KeyAmalgamation::alive`) helps ensure that the key
is used consistent. For instance, this makes it harder to
mistakenly query key's liveness at time t, but then use the
current time to determine the key's capabilities.
|
|
- Only the amalgamation allows proper checking of a key's
properties, the binding signature alone isn't sufficient.
- Fixes #408.
|
|
|
|
|
|
|
|
- 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.
|
|
|
|
|
|
- The hash context knows the algorithm now.
|
|
- The module contains only one exported item.
|
|
|
|
- Makes it possible to construct unknown packets with arbitrary
subpacket tags.
- Fixes a regression.
|
|
- Fixes #405.
|
|
- See #405.
|
|
|
|
- Compute a digest over the streamed data and use it to implement
equality.
- Fixes #93.
|
|
- Embed Container in Literal and Unknown. This reuses code.
- More importantly, Literal and Unknown now correctly implement
PartialEq.
- Unknown cannot implement Ord. Remove PartialOrd as well, it seems
like an obscure use case to order packets.
- An unfortunate consequence of Unknown not implementing Eq is that
Cert cannot, because it holds unknown packets. We consider that
unacceptable.
- See #93.
|
|
- Rewind the dup reader, so that the caller has a chance to buffer
the whole body of the unknown packet. This is important for
roundtripping signatures that we don't understand.
|
|
- If a container was streamed, we can no longer compare it to other
packets. Keep track of that, and use it in Container::PartialEq.
- See #93.
|
|
|
|
- Vec::with_capacity(0) is guaranteed not to allocate, and the
Option encodes no other information. This simplifies code a lot.
|
|
- This allows us to implement PartialEq and related traits more
selectively. See #93.
|
|
|
|
|
|
- With this change, packet::Common is only used by container
packets.
|
|
- Cert::keys_valid() is just a short-cut for
Cert::keys_all().alive().revoked(false).
- Remove Cert::keys_valid() and rename Cert::keys_all() to
Cert::keys().
|
|
- A tuple is just an unnamed, inflexible struct. Use a struct
instead.
- Fixes #400.
|
|
- Now that we eagerly check the syntax, there no longer is the need
for storing Unknown packets there.
|
|
|
|
- If a syntactically malformed subpacket is encountered, we do the
same as for malformed packets, we turn the whole signature into an
unknown packet.
- Fixes #200.
|
|
- The subpacket areas now have a vector of subpackets. Change some
accessors here and there to accommodate this.
- This requires bit-perfect roundtripping of subpackets so that
signatures are not invalidated.
- First step towards fixing #200.
|
|
|
|
|
|
|
|
- The signature knows the hash algorithm.
|
|
- Do not expose the PacketParserResult, improve error handling.
- Fixes #278.
|
|
- See #371.
|
|
- See #371.
|
|
- Fixes #359.
|
|
- See #359.
|
|
- Modify the streaming verifiers to account for clock skew when
using the current time.
|
|
|
|
- And drop Literal::set_filename_from_bytes.
|
|
- Now that we store timestamps in OpenPGP's native encoding, the
canonicalization happens when converting to it.
|
|
|
|
|
|
- Fixes #387.
|
|
- To that end, make VerificationHelper::get_public_keys take
KeyHandles for all the issuers.
|
|
- A signature can contain multiple hints as to who created the
signature. Return all those hints to the caller.
- Adapt all callers accordingly.
- Fixes #264.
|
|
|