Age | Commit message (Collapse) | Author |
|
|
|
- See #525.
|
|
- `CertBuilder::set_expiration_time` takes an absolute time.
- Most callers use a relative time.
- Internally, we need a relative time (that's what the Key
Expiration Time packet takes).
- Converting the absolute time to a relative time is error prone:
should it be relative to the creation time when called or when
`CertBuilder` is finalized?
- KISS: Change it to just take a relative time.
- To better reflect the new semantics, also change the name to
`CertBuilder::set_validity_period`.
|
|
- This also drops the implementation of PartialOrd since we did not
use it in the key selection after all.
- Fixes #525.
|
|
- Add a new constructor that takes headers. This allows us to make
the header argument polymorphic.
|
|
- 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.
|
|
|
|
- Add `openpgp/src/cert/prelude.rs` to import most types and traits
related to certificates.
- Use it instead of using the types and traits individually.
|
|
- Add a parameter to CipherSuite::add_subkey, which, if not None,
overrides the default cipher suite for that subkey.
- This makes it easier to create a key with, say, an ECC primary and
an RSA subkey.
|
|
- This seems very surprising.
|
|
- The certificate builder is a mid-level interface, and should
therefore use the more user-friendly way of specifying
expiration. Furthermore, with this interface we will be able to
support setting a new expiration in cases where the keys have
different creation times.
- See #429.
|
|
- The former is a misnomer inherited from the RFC: It is a
duration, not a point in time. 'Validity period' makes that
clear, and also emphasizes that the key or signature is valid
during that period.
- See #429.
|
|
|
|
|
|
- See #359.
|
|
|
|
- Fixes #359.
|
|
- Fixes #387.
|
|
- Fixes #366.
|
|
- Fixes #381.
|
|
- In sq and sqv, use chrono to interface with the user.
- Fixes #341.
|
|
|
|
|
|
- Fixes #347.
|
|
|
|
- Fixes #305.
|
|
- 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.
|
|
- Currently, when we serialize a packet structure, like Signature,
we get a full packet with CTB and length, even though we didn't
really ask for that. If we want to create an embedded signature,
we need to use the special interface Signature::serialize_naked()
to get it without frame.
- Also consider Key. Here, we don't know whether it is supposed to
be primary or subkey, or public or secret. Therefore, we have
SerializeKey, which is like Serialize, but also gets a tag. Now,
if Key::serialize() would only emit the body, it wouldn't need to
know what kind of key to emit.
- The same applies to trait Parse. If we use, say,
Signature::from_bytes(), the parser expects a framed signature.
If we want to parse an embedded signature, we need to use a
special interface again.
- This patch changes how we parse and serialize packet structures to
not expect or emit the frame. If we want to include the frame, we
need to explicitly wrap it into an enum Packet.
- This patch does not include any cleanups and optimizations to keep
the size manageable.
- See #255.
|
|
- Add an option to set the expiration time: --expiry
|
|
- 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.
|
|
- 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.
|
|
- Fixes #24.
|
|
|