Age | Commit message (Collapse) | Author |
|
- In a1eba557ff62f09bef2c7e379a238c643ac240d7, I changed the store
to insert all subkeys into the key_to_keyid table. Update the
documentation to reflect this change.
|
|
|
|
- A Key's revocation status is a property of its binding, but the
binding is not exposed by KeyIter. Expose it.
|
|
- Trait Parse introduces a uniform interface to parse packets,
messages, keys, and related data structures.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- A PKESK may contain the keyid of the encryption key that the
session key was encrypted for. When doing a reply to all, it is
useful to use this information to do key discovery. Currently,
the Store only includes signing and certification capable subkeys
in the key_to_keyid table. This change includes all keys, which
enables this use case.
|
|
- The replacement for the deprecated function used by the previous
commit is only emitted by the newest capnp compiler. Bump the
patch version so that everyone picks it up.
|
|
|
|
|
|
|
|
- Use our Result, communicate errors when making backends.
|
|
|
|
- Make clear that this lookup also looks for subkeys.
|
|
- Fixes #102.
|
|
|
|
|
|
- Fixes #85.
|
|
|
|
|
|
|
|
- Fixes #13.
|
|
- Also, avoid deprecated method in sq.
|
|
|
|
|
|
|
|
- This is the result of executing
find . \( -type f -and \( -name '*.rs' -or -name '*.h' \) \) \
-exec sed -i -e 's/,\([^[:space:]]\)/, \1/g' {} \;
with one manual tweak in 'parse.rs'.
|
|
- Rename NoKeyFound to MalformedTPK.
- Drop NoUserId, which is not used.
- Rename node::Error::MalformedKey to MalformedTPK.
|
|
|
|
- The store had a stub implementation of authenticated identity key
rollovers. However, after some discussion we concluded that
currently there is just no framework for doing this in OpenPGP.
- Also, remove the 'TPK::is_signed_by' predicate.
|
|
- We define all types in the root of the openpgp crate, and their
implementations in separate modules. This makes using these types
much simpler, yet keeps the root from getting too crowded.
- Also fix all users accordingly.
|
|
|
|
- Add comments to store::Log.
|
|
- Instead, make them configurable so they can be used when needed.
|
|
- Move types for working with rusqlite into a new module and make
them public so that they can be reused.
|
|
- Make 'make_stats_request' use 'make_request_map' and move to
'lib.rs' because it is really specific to our protocol.
|
|
|
|
- By using the asynchronous network interface in the housekeeping
"thread", we avoid blocking it and thus the caller.
|
|
- Use failure to handle backend errors, then convert prior to
transmission over RPC.
|
|
|
|
- Provide meaningful slugs.
- Use key ids instead of fingerprints.
|
|
|
|
|
|
- Provide external servers with a more useful context. This is not
so critical for the keystore, but could be interesting for servers
providing secret key services.
|
|
- Now that the Context is Send + Clone, we can attach a clone to the
Descriptor and pass it to the server thread.
|
|
- The failure crate is a young error handling solution for Rust. It
may change the API, but since we pin our dependencies, this should
not be a problem for us, albeit a bit inconvenient.
- Introduction of the crate is a bit noisy, but not as bad as
anticipated, because failure magically handles all errors used in
the standard library.
- Matching on concrete error values requires downcasting before
matching, which seems a bit unidiomatic. This is the cost of
using and "chaining" arbitrary error types. This is something
that may be improved later on in the library or language.
- Having said that, using the error type in the tool was nice. I
did not have to use a downcast, so maybe my worries about
downcasts are unjustified because it is not such a common use case
after all. On the other hand, the tool is quite simple and our
only mode of failure is to print the message.
|