summaryrefslogtreecommitdiffstats
path: root/openpgp/src/lib.rs
AgeCommit message (Collapse)Author
2020-12-08openpgp: Use parens for assert_send_and_sync!.Azul
2020-12-08openpgp: Ensure public types are Send and Sync.Azul
- See #627.
2020-12-01openpgp: Don't mention the unreleased sequoia-core.Justus Winter
- Fixes #602.
2020-11-24openpgp: Assert that Error is Send + Sync.Justus Winter
- See #615.
2020-11-06openpgp: Use non_exhaustive attribute.Nora Widdecke
- Fixes #563 - With an MSRV >= 1.40.0, we can use #[non_exhaustive], as mentioned in #406. - This is also a clippy lint: https://rust-lang.github.io/rust-clippy/master/index.html#manual_non_exhaustive
2020-10-26openpgp: seal the Preferences traitAzul
[Seal] the `cert::Preferences` trait so it cannot be implemented for types outside this crate. Therefore it can be extended in a non-breaking way. Attempts to implement the trait will not compile. refers: #538 [seal]: https://rust-lang.github.io/api-guidelines/future-proofing.html#sealed-traits-protect-against-downstream-implementations-c-sealed
2020-10-14Replace most 'extern crate' directives with 'use'.Justus Winter
- See #480.
2020-08-13openpgp: Allow compiling with other crypto backendsIgor Matuszewski
2020-06-04openpgp: Typo.Justus Winter
2020-04-30openpgp: Make Error implement Eq.Justus Winter
2020-04-16openpgp: Add version constant.Justus Winter
2020-04-06openpgp: Introduce (mandatory, for now) crypto-nettle feature flagIgor Matuszewski
2020-03-31openpgp: Remove explicit extern cratesIgor Matuszewski
2020-03-31openpgp: Improve summary line of modules and types.Justus Winter
- Avoid repeating the type name. - Avoid self referential, trivial descriptions. - Avoid the terms OpenPGP and Sequoia. - Fix mistakes from the Message -> PacketPile rework.
2020-03-31openpgp: Move definition of enum Packet.Justus Winter
2020-03-31openpgp: Move definition of struct Message.Justus Winter
2020-03-31openpgp: Move definition of struct Fingerprint.Justus Winter
2020-03-31openpgp: Move definition of struct KeyID.Justus Winter
2020-03-31openpgp: Move definition of struct PacketPile.Justus Winter
- Implement Default for PacketPile, add internal accessor for the top-level.
2020-03-30openpgp: Express Packet::kind more concisely.Justus Winter
2020-03-27openpgp: Improve policy violation wording.Justus Winter
2020-03-27openpgp: Define equality using the serialized OpenPGP form.Justus Winter
- All packets should be considered equal if the serialized OpenPGP form is equal, modulo framing (i.e. CTB type, packet length encoding, partial body chunking). - In cases this may lead to surprising outcomes, discuss this in the documentation, and provide additional equality predicates. - Fixes #92.
2020-03-27openpgp: Format timestamps in error messages.Justus Winter
- Fixes #459.
2020-03-09Switch from failure to anyhow.Justus Winter
- Use the anyhow crate instead of failure to implement the dynamic side of our error handling. anyhow::Error derefs to dyn std::error::Error, allowing better interoperability with other stdlib-based error handling libraries. - Fixes #444.
2020-03-09openpgp: Define openpgp::Error using thiserror.Justus Winter
2020-03-03openpgp: Update documentation.Justus Winter
2020-03-03openpgp: Mark experimental features.Justus Winter
- Fixes #446.
2020-02-26openpgp: Improve documentation.Neal H. Walfield
2020-02-20openpgp: Improve assert_match!.Justus Winter
- Emit a block so that the macro can be used as expression.
2020-02-19openpgp: Move RevocationStatus to module types.Justus Winter
2020-02-09openpgp: Add new error, PolicyViolation.Neal H. Walfield
2020-02-06autocrypt: New crate.Justus Winter
- Move the autocrypt-related functionality to a new crate. - Fixes #424.
2020-01-31openpgp: Add a policy object.Neal H. Walfield
- Change all functions that need to evaluate the validity of a signature (either directly or indirectly to take a policy object. - Use the policy object to allow the user to place additional constraints on a signature's validity. - This addresses the first half of #274 (it introduces the policy object, but does not yet implement any policy).
2020-01-24openpgp: Optimize drop(Vec<u8>::drain(..n)) in debug mode.Justus Winter
- Similar to Vec<u8>::truncate(_), this operation is very slow in debug mode due to the dropping of drained elements. Provide an optimized version in debug mode.
2020-01-14openpgp: Rework stream verification logic.Neal H. Walfield
- Select keys only when verifying the signatures: the relevant keys depend on the timestamp in the signature, and different signatures may have different time stamps. - If the signature doens't have a Signature Creation Time stamp, return that the signature is invalid.
2020-01-08openpgp: Include a reference time in KeyAmalgamation.Neal H. Walfield
- 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.
2020-01-02openpgp: Mark enum Error non-exhaustive.Justus Winter
- See #405.
2020-01-02openpgp: Mark enum Packet non-exhaustive.Justus Winter
- See #405.
2019-12-20openpgp: Fix comparing streamed containers.Justus Winter
- Compute a digest over the streamed data and use it to implement equality. - Fixes #93.
2019-12-20openpgp: Keep track whether a container has been streamed.Justus Winter
- 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.
2019-12-09openpgp: New errors Expired and NotYetLive.Justus Winter
2019-12-09openpgp, openpgp-ffi: Fix small issues introduced when renaming TPK.Justus Winter
2019-12-03openpgp: Move byte order conversion functions.Justus Winter
2019-12-03openpgp: Rename openpgp::conversions to openpgp::fmt.Justus Winter
2019-12-03openpgp: Convert uses of Time::from_pgp.Justus Winter
2019-11-28Call TPKs Certificates, update identifiers, documentation.Justus Winter
- Fixes #387.
2019-11-27openpgp: Rename ID to KeyHandle.Justus Winter
2019-11-26openpgp: New type ID.Justus Winter
- ID is either a KeyID or a Fingerprint. - Fixes #282.
2019-11-26openpgp: Implement PartialOrd, Ord for Fingerprint.Justus Winter
2019-11-25openpgp: Rename openpgp::constants to openpgp::types.Justus Winter
- Fixes #381.