Age | Commit message (Collapse) | Author |
|
|
|
- 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.
|
|
|
|
- We found this function to be not very useful for filtering, and it
also turns the TPK into a TSK at the same time, which mixes two
concerns. Drop it. We will eventually replace it with something
more useful. See also #21.
|
|
|
|
|
|
|
|
|
|
- Refine field 'frame' to 'CTB' and 'length'.
|
|
- MPI::parse() is used to parse MPIs from unknown algorithms, which
may use an encoding unknown to us. Therefore, we need to be extra
careful only to consume the data once we found a well-formed MPI.
|
|
- Return `None` on unknown public keys and curves.
|