Age | Commit message (Collapse) | Author |
|
- Add a new trait `sequoia_openpgp::Policy`. Currently, this trait
only has one method that returns the current time. This time is
used when evaluating signatures.
- Use this trait in TPK::{revocation_status,alive,expired}. Remove
the corresponding *_at() functions.
- Fixes #274.
|
|
- Add TPKBuilder::set_expiration to allow the caller to control the
expiration time.
|
|
|
|
- Use the new framework instead of including the files everywhere.
|
|
- Fixes #267.
|
|
- `TPK::revoked` returns a revocation status, not a boolean. Rename
it to `TPK::revocation_status()`, like it is called in the FFI.
- Like other methods, provide a `foo_at()` method and a `foo()`
method.
|
|
- Fixes #267.
|
|
|
|
- For short messages where the signature size dominates, compression
algorithms may inflate the message size considerably.
|
|
|
|
- Change the KeyringValidator to allow trust packets anywhere a
signature packet is allowed.
- This is needed to parse GnuPG Keyrings.
|
|
- To ease debugging, include the path of the packet that caused the
parse error.
|
|
- To ease debugging, include the path of the packet that caused the
parse error.
|
|
- A TPK is not a message in our terminology.
|
|
- 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.
|
|
|
|
- Fixes #122.
|
|
|
|
- This way we can .collect() into a SubpacketArea.
|
|
|
|
|
|
- Add a strict "mode" to the armor reader that requires an armor
header line, but doesn't care what the header is.
- Closes issue #254.
|
|
|
|
|
|
- Fixes 0ac9db8b1e039b498169d63fcb01cbd11ee204ec.
- Fixes #177.
|
|
|
|
- Fixes #100.
|
|
|
|
- User IDs don't need to be UTF-8 and at the lowest level we don't
assume that they are.
|
|
|
|
- These functions are quite unflexible, and are therefore quite
opinionated. Nowadays, we have a more flexible way of adding
components to a TPK.
- Fixes #175.
|
|
|
|
- Add a convenience method to TPKBuilder to create a typical,
general-purpose key, i.e., one with a certification- and
signing-capable primary key, and an encryption-capable subkey.
|
|
|
|
- One would think that TPKBuilder::default would return something
filled with useful defaults, but it just returns a nearly empty
builder. Rename it to TPKBuilder::new, which is less misleading.
|
|
- Provide a function to return a normalized email address, which is
appropriate when comparing email addresses for equality.
|
|
|
|
|
|
|
|
|
|
- Implement NetLength for all the packets that previously didn't
implement it, and use it do compute the serialized length.
|
|
- Assume that the object will fit into the buffer, and return the
appropriate error on short writes.
- Add test demonstrating this behavior.
|
|
|
|
- Change get_base64_prefix to really only return valid base64 data.
- Simplify is_armored_pgp_blob to exploit this assumption.
|
|
|
|
- Don't decode base64 data that definitely can't possibly contain a
valid OpenPGP message.
|
|
- Change the function signature to take a mut reference to a trait
object instead. This trades the cost of a dynamic dispatch for
executable size. The results are modest, but a step in the right
direction. On my system, libsequoia_openpgp_ffi.so in release
mode shrunk by 2.2% (61440 bytes) after stripping.
- Fixes #250.
|
|
- With a1e226f8f1418de43e577fdaa1d087b68bbb09ae in place, we have a
more general way to add components to a TPK. Retire the current
`TSK` type and replace it with a thin shim that only allows
serialization of secret keys.
- Fixes #107.
|
|
|
|
- This adds a flexible interface to create binding signatures,
certificates, and revocation signatures for userids, user
attributes, and subkeys.
|