summaryrefslogtreecommitdiffstats
path: root/openpgp
AgeCommit message (Collapse)Author
2019-12-20openpgp: Simplify key iteration interface.Neal H. Walfield
- 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().
2019-12-19openpgp: Change KeyIter to return a struct instead of a tuple.Neal H. Walfield
- A tuple is just an unnamed, inflexible struct. Use a struct instead. - Fixes #400.
2019-12-19openpgp: Encrypt passwords in memory.Justus Winter
2019-12-19openpgp: Make crypto::mem public and improve the documentation.Justus Winter
2019-12-19openpgp: Prepare to encrypt passwords.Justus Winter
- Remove direct access, provide Password::map instead.
2019-12-19Don't use misleading `<&[T; N] as IntoIterator>::into_iter`Igor Matuszewski
See https://github.com/rust-lang/rust/pull/65819. Warned against by default since Rust 1.41. Right now `into_iter` returns references to objects inside an array rather than moving the values (as one would expect) so it makes sense to use `iter()` or for-in-borrowed (which calls the same thing) to retain the behaviour but make it less confusing.
2019-12-19openpgp: Remove redundant importsIgor Matuszewski
2019-12-18openpgp: Fix name of conversion functions.Justus Winter
2019-12-18openpgp: Make test more robust.Justus Winter
2019-12-18openpgp: Make type aliases for keys pub(crate).Justus Winter
- They can still be used as a convenience, but the documentation will refer to them as their expanded counterparts. - This makes the structure of they Key<_, _> type more visible.
2019-12-18openpgp: Make functions polymorphic over key parts if appropriate.Justus Winter
2019-12-18openpgp: Make SubpacketValue::EmbeddedSignature take a Signature.Justus Winter
- Now that we eagerly check the syntax, there no longer is the need for storing Unknown packets there.
2019-12-18openpgp: Drop SubpacketValue::Invalid.Justus Winter
- As of 2524e1aa5fc2419956e7ab14e9fb6554f7c1d350, this variant is no longer needed.
2019-12-18openpgp: Tune field names to make them fit in the hex dump.Justus Winter
2019-12-18openpgp: Handle malformed subpackets when parsing.Justus Winter
- 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.
2019-12-17openpgp: Improve test.Justus Winter
2019-12-17openpgp: Make Subpacket own the data.Justus Winter
- 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.
2019-12-17openpgp: Improve SubpacketLength.Justus Winter
2019-12-17openpgp: Remove odd remarks.Justus Winter
2019-12-17openpgp: Make Features and KeyServerPreferences impl Eq, Hash.Justus Winter
2019-12-16openpgp: Add methods for primary key binding signatures.Justus Winter
- Fixes #402.
2019-12-16openpgp: Fail subkey binding verification if backsig is missing.Justus Winter
- Don't just return false, return a meaningful error.
2019-12-16openpgp: Fix terminology.Justus Winter
- What the code called a "primary key binding" is actually a direct key signature. Primary key bindings are signatures by signing-capable subkeys over primary and subkey. - See #402.
2019-12-16openpgp: Fix corner case.Justus Winter
- Previously, if a zero-sized read was requested, we concluded that we reached the end of the armored block. - Fixes #404.
2019-12-13openpgp: Improve signature reordering heuristic.Justus Winter
- When reordering signatures, take the signature type into account. This way we can avoid useless computations, and decrease the chance of putting a signature into the wrong bin.
2019-12-13openpgp: Fix documentation.Justus Winter
- `KeyIter::unfiltered` got removed, but did in fact the same as `Cert::keys_all`.
2019-12-13openpgp: Make signature::Builder::sign_subkey_binding more flexible.Justus Winter
- Allow the primary key to be a secret key.
2019-12-13openpgp: Check that signatures do not predate the signing key.Justus Winter
- Fixes #401.
2019-12-13openpgp: Fix test.Justus Winter
2019-12-13openpgp: Rename hashing functions.Justus Winter
- Verb hash: use hash_xxx instead of xxx_hash.
2019-12-13openpgp: Make Signature4's mutators private.Justus Winter
- Signatures should not be mutated, because doing so invalidates the signature. While this doesn't hold for set_digest_prefix and set_level, these seem quite pointless and are indeed unused, and we should strive for a minimal interface.
2019-12-13openpgp: Rename the hash prefix to digest prefix.Justus Winter
2019-12-13openpgp: Likewise for MDC.Justus Winter
2019-12-13openpgp: Call the computed hash a digest.Justus Winter
2019-12-13openpgp: Make Signature4::set_computed_hash private.Justus Winter
2019-12-13openpgp: Rename function.Justus Winter
2019-12-13openpgp: Make functions polymorphic over byte slice refs.Justus Winter
2019-12-13openpgp: Remove superfluous parameter.Justus Winter
2019-12-13openpgp: Remove hash algorithm from computed hash.Justus Winter
- The signature knows the hash algorithm.
2019-12-13openpgp: Make Key4::set_creation_time more flexible.Justus Winter
2019-12-12openpgp: Fix interpretation of expiration times.Justus Winter
- Signatures and keys should be considered live iff creation time <= time < creation time + expiration time, i.e. the endpoint of the interval should be excluded. - Fixes #398.
2019-12-11openpgp: Derive Debug for KeyHandle.Justus Winter
2019-12-11openpgp: Remove KeyIter::empty.Justus Winter
- std::mem::zeroed can be used to momentarily replace the KeyIter.
2019-12-11openpgp: Remove KeyIter::unfiltered.Justus Winter
- This is the default. If one needs an unfiltered iterator, calling Cert::keys_all() will return one.
2019-12-11openpgp: Make the PacketPileParser interface safe.Justus Winter
- Do not expose the PacketParserResult, improve error handling. - Fixes #278.
2019-12-09openpgp: Remove Signature::key_expired.Justus Winter
- Fixes #371.
2019-12-09openpgp: Remove Signature::signature_expired.Justus Winter
- See #371.
2019-12-09openpgp: Return result from Cert::alive, remove Cert::expired.Justus Winter
- See #371.
2019-12-09openpgp: Return Result from Signature::key_alive.Justus Winter
- See #371.
2019-12-09openpgp: Return Result from Signature::signature_alive.Justus Winter
- See #371.