Age | Commit message (Collapse) | Author |
|
- 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.
|
|
|
|
|
|
- The unknown components and bad signatures were stripped during
serialization.
|
|
- Instead of using key.fingerprint.to_keyid(), use key.keyid().
|
|
- Also, mark locations where we don't handle encrypted secret keys.
|
|
- Fixes #228.
|
|
- See #228.
|
|
- Fixes #224.
|
|
- See #224.
|
|
- TPK::select_keys mixes iterating and filtering.
- Make KeyIter an implicit builder, which supports convenient
filtering.
- Provide a convenience function to key an iterator with a
reasonable filter default.
|
|
- Historically, signature subpackets that constrain the primary key,
as well as preference and feature subpackets have been stored on
userid bindings by GnuPG.
- Make an effort to use the same set of subpackets on every userid
binding signature. Otherwise, key constraints, preferences, or
features may change as a side effect of stripping a userid.
|
|
Adds TSK::sign_{subkey, user_attribute, userid} and TSK::with_{subkey,
user_attribute, userid}. Also moves code for signing UserID,
UserAttribute and *Subkey packets from TPKBuilder to TSK.
|
|
- Drop trivial docstrings for implementations of Serialize.
- Mention failure modes for the encrypted containers.
|
|
- TPKBuilder::autocrypt created a TPK with a single User ID, as
required by the Autocrypt specification. Since no User ID was
passed, it used the empty string.
- An empty User ID is a bit surprising, and it is unclear if it is
even a reasonable default (GnuPG rejects it). But, even if the
programmer is aware of this, adding a new user ID does not replace
the empty User ID, and removing the empty User ID is a pain.
- Change the API to better match typical usage: have the constructor
take the User ID.
- Nevertheless, preserve the flexibility by making the User ID
optional to allow the caller to add a User ID later. In this
case, a non-autocrypt compliant TPK with no User ID is created
instead of an empty User ID.
- Closes #146.
|
|
- Change TPKBuilder::add_userid to take an Into<Cow<'a, str>>>
instead of a &str.
|
|
|
|
|
|
|
|
This adds TSK::certify_key(TPK) which signs the primary userid binding.
It also adds TSK::certify_userid(key, UserID) to sign a specific UID.
Fixes #117
|
|
- Trait Parse introduces a uniform interface to parse packets,
messages, keys, and related data structures.
|
|
- Fixes #95.
|
|
|
|
|
|
|
|
- Move tag to openpgp::packet.
|
|
|
|
- Change Signature::verify_userid_binding to only check user id
certificates. Add Signature::verify_userid_revocation to verify
user id revocations.
- Add Signature::{verify_primary_key_revocation,
verify_subkey_revocation, verify_user_attribute_revocation} to
verify other types of revocations.
- In TPK, Split self signatures and self revocations, and
certifications and other revocations.
- Update TPK canonicalization and TPK merging code appropriately.
- Change
{UserIDBinding,UserAttributeBinding,SubkeyBinding}::binding_signature
to return an Option<&Signature> instead of a &Signature. This
allows us to keep components for which we have a revocation
certificate, but no self-signatures. And, it aligns the API with
TPK::primary_key_signature.
- Expose {UserIDBinding,UserAttributeBinding,SubkeyBinding}::revoked
and TPK::revoked to allowed querying the revocation status of
components and TPKs.
- See #33
|
|
|
|
|
|
- TSK::serialize handles primary key sigs now.
- Removed commented-out functions.
- Changed TSK::new making the uid argument optional.
- Improved TSK::new doc comment
|
|
Adds a deprecation notice to TPK::new().
|
|
- Derive Debug and PartialEq.
|
|
|
|
|
|
|