summaryrefslogtreecommitdiffstats
path: root/ffi
AgeCommit message (Collapse)Author
2020-02-09openpgp: Add new error, PolicyViolation.Neal H. Walfield
2020-02-07Release 0.14.0.v0.14.0Justus Winter
2020-02-06openpgp: Rename ComponentBinding to ComponentBundle, etc.Justus Winter
- Likewise KeyBinding, UserIDBinding, UserAttributeBinding, UnknownBinding, etc. - Reason: a self-signature on a component is a binding, but revocations and TPSes are not bindings. - Consistently call collections of components and associated signatures bundles now. Likewise for fields, methods. - Fixes #425.
2020-02-05python: Fix handling of armored writers.Justus Winter
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-07openpgp-ffi, ffi: Always rebuild C doctests.Justus Winter
2020-01-02openpgp: Mark enum Error non-exhaustive.Justus Winter
- See #405.
2019-12-20Release 0.13.0.v0.13.0Justus Winter
2019-12-20Remove nettle dependency where it's unnecessaryIgor Matuszewski
2019-12-09openpgp: New errors Expired and NotYetLive.Justus Winter
2019-11-28Call TPKs Certificates, update identifiers, documentation.Justus Winter
- Fixes #387.
2019-11-25Release 0.12.0.v0.12.0Justus Winter
2019-11-21openpgp: Replace time crate with std::time.Justus Winter
- In sq and sqv, use chrono to interface with the user. - Fixes #341.
2019-10-31Change license to GPLv2+.Neal H. Walfield
2019-10-30Update authors.Neal H. Walfield
2019-10-25Release 0.11.0.v0.11.0Justus Winter
2019-09-18store: Rename store::Pool to Store.Justus Winter
2019-09-18store: Rename store::Store to Mapping.Justus Winter
- Fixes #88.
2019-09-06Release 0.10.0.v0.10.0Justus Winter
2019-09-06openpgp: Rework streaming encryptor.Justus Winter
- Instead of giving a set of TPKs to the encryptor, hand in a set of recipients, which are (keyid, key)-tuples, conveniently created from key queries over TPKs. This simplifies the encryptor, and makes the key selection explicit. - Drop the EncryptionMode type. - As a nice side effect, we can now generate encrypted messages with wildcard recipient addresses.
2019-08-27openpgp: Limit size of non-data packets.Justus Winter
- This introduces a configurable limit for non-data (i.e. non-container) packets. This prevents a trivial DoS on our parser, which previously assumed that all non-data packets can be buffered. - Fixes #242.
2019-08-20ffi: Free resources in test.Justus Winter
2019-08-20openpgp-ffi, ffi: Honor CFLAGS in c-tests, add -Wall.Justus Winter
2019-08-20net: Drop SKS pool in favor of keys.openpgp.org.Justus Winter
2019-08-19net: Drop the sync variant.Justus Winter
- The sync wrapper hide the async nature of the implementation, and while this may seem convenient, it may cause subtle problems if it is invoked from a different event loop. - Furthermore, 'async' is a reserved keyword in the 2018 edition, requiring awkward escaping. - Fixes #307.
2019-07-15Switch to Rust 2018.Justus Winter
2019-07-15Prepare for Rust 2018.Justus Winter
- This is the result of running `cargo fix --edition`, with some manual adjustments. - The vast majority of changes merely qualify module paths with 'crate::'. - Two instances of adding an anonymous pattern to a trait's function. - `async` is a keyword in Rust 2018, and hence it needs to be escaped (e.g. in the case of the net::r#async module). - The manual adjustments were needed due to various shortcomings of the analysis employed by `cargo fix`, e.g. unexpanded macros, procedural macros, lalrpop grammars.
2019-07-08Release 0.9.0.v0.9.0Justus Winter
2019-06-26openpgp-ffi, ffi, ffi-macros: Avoid deprecated integer types.Justus Winter
2019-06-14Release 0.8.0.v0.8.0Justus Winter
2019-05-28Bump memsec to 0.5.6.Hussein
- 0.5.6 fixes cross-building from macOS for Android. - Fixes #284.
2019-05-21openpgp: New error for unsupported compression algorithms.Justus Winter
2019-05-15core, store, tool: Use realm instead of domain.Justus Winter
- Remove the domain parameter from core::Context. - Replace it with a realm to be passed in when opening a store. - For sq, merge store name and realm into the --store parameter. - Fixes #105.
2019-05-13openpgp-ffi, ffi: Improve c-tests.rs.Justus Winter
- Use failure, improve error message when invoking make fails.
2019-05-11openpgp: Make {is,possible}_{message,keyring,tpk} return a ResultNeal H. Walfield
- PacketParserEOF::is_message, PacketParserEOF::is_keyring, PacketParserEOF::is_tpk, PacketParserResult::possible_message, PacketParserResult::possible_keyring, and PacketParserResult::possible_tpk returned a boolean. - Change them to return a Result<()> instead, which is more Rusty, and, in particular, allows the caller to determine why the message didn't parse.
2019-05-10Release 0.7.0.v0.7.0Justus Winter
2019-05-07openpgp-ffi, ffi: Reword.Justus Winter
2019-05-07openpgp-ffi, ffi: Improve 6911aed9.Justus Winter
- To preserve location information, replace the include.
2019-05-07openpgp-ffi, ffi: Fix calling convention on Windows.Justus Winter
- Use `extern "C"` instead of `extern "system"`. The latter selects stdcall, which is only appropriate for talking to the Windows API.
2019-05-07openpgp-ffi: Remove '#include <error.h>' from doctests.Justus Winter
2019-04-29openpgp-ffi: Introduce a new Packet type.Justus Winter
- See #156.
2019-04-12Release 0.6.0.v0.6.0Justus Winter
- Also bump rfc2822 to 0.6.0. After all, we create tags for the versions.
2019-03-28Fix intra-workspace dependencies.Justus Winter
- Specify versions for intra-workspace dependencies in the crates that are not yet released.
2019-03-28Point to the version-specific documentation.Justus Winter
2019-03-25openpgp-ffi: Wrap crypto::SessionKey and crypto::Password.Justus Winter
2019-03-22Fix build on macOS.Justus Winter
- Use GNU install, use the correct extension for dynamic libraries. - Fixes #226.
2019-03-22openpgp-ffi: Replace glibc's error function.Justus Winter
- To make the tests and examples more portable, provide our own roughly compatible replacement for glibc's error(3).
2019-03-22openpgp, core: Return old value in setters.Justus Winter
- Fixes #147.
2019-03-21openpgp-ffi: Use crate for futimes fiddling.Justus Winter
- The previous solution of using libc::futimes turned out to be not portable because different platforms have differently sized timestamps. Use a crate for that instead. - Also, bring ffi's c-tests up-to-speed. - Fixes #225.