summaryrefslogtreecommitdiffstats
path: root/tool
AgeCommit message (Collapse)Author
2019-09-02tool: Hexdump packet bodies.Justus Winter
2019-09-02tool: Implement compression and padding.Justus Winter
2019-09-02openpgp: Make compression level configurable.Justus Winter
2019-08-27tool: Add 'sq packet join', the inverse to split.Justus Winter
- In contrast with cat, this also works on armored fragments. - Fixes #288.
2019-08-27tool: Refactor armor kind parsing.Justus Winter
2019-08-27openpgp: Remove redundant accessors.Neal H. Walfield
- TPK::selfsigs(), TPK::certifications(), TPK::self_revocations(), and TPK::other_revocations() are all available as TPK::primary().xxx(). - Making them available at the TPK level is redundant and confusing. - Remove them.
2019-08-26tool: Annotate generated keys and revocation certificates.Justus Winter
- Fixes #305.
2019-08-26tool: Annotate TPKs returned from WKD queries.Justus Winter
- See #305.
2019-08-26tool: Annotate TPKs retrieved from keyservers.Justus Winter
- See #305.
2019-08-23openpgp: Use marker types to denote a Key's type.Neal H. Walfield
- In addition to providing some added protection, this allows us to implement 'From<Key<_, _>> for Packet'.
2019-08-23openpgp: Use a KeyBinding to store the primary key binding in a TPKNeal H. Walfield
2019-08-23openpgp: Rename SubkeyBinding to KeyBinding.Neal H. Walfield
- Also rename the `subkey` method to `key`.
2019-08-23openpgp: Rename SecretKey to SecretKeyMaterial.Neal H. Walfield
- When the `SecretKey` type only refers to the secret key material and not a TPK-like thing, call it `SecretKeyMaterial`.
2019-08-22Bump rpassword to 0.4.Justus Winter
2019-08-20openpgp: Make choice of AEAD algorithm explicit.Justus Winter
- Automatically using AEAD if all recipients claim support is a policy decision, which we'd rather avoid in the openpgp crate. - Fixes #293.
2019-08-20tool: Use consistent terminology in usage.Justus Winter
- Fixes #310.
2019-08-20tool: Update documentation.Justus Winter
2019-08-20tool: Use Cv25519 as the default cipher suite.Justus Winter
2019-08-20tool: Fix creation of TPKs w/o encryption subkey.Justus Winter
- Fixes #323.
2019-08-20net: Drop SKS pool in favor of keys.openpgp.org.Justus Winter
2019-08-19net: Drop the sync variant.Justus Winter
- The sync wrapper hide the async nature of the implementation, and while this may seem convenient, it may cause subtle problems if it is invoked from a different event loop. - Furthermore, 'async' is a reserved keyword in the 2018 edition, requiring awkward escaping. - Fixes #307.
2019-08-19openpgp: Rename sigtype to typ, set_sigtype to set_typ.Justus Winter
- 'sig' in method names on Signature and OnePassSig is redundant, and 'sigtype' is likely inherited from other implementations. - Fixes #326.
2019-07-18openpgp: Move tpk::armor::Encoder to serialize, add constructor.Justus Winter
- Fixes #304.
2019-07-16openpgp: Rework unencrypted secret key handling.Justus Winter
- Instead of giving out references to the stored secret, use a new function Unencrypted::map that maps a given function over the secret. This allows us to encrypt the secret, and decrypt it on demand.
2019-07-15Make more variables immutable.Justus Winter
- With the MIR-based borrow-checker being more precise than the AST-based one, we can make more variables immutable.
2019-07-15Switch to Rust 2018.Justus Winter
2019-07-15Prepare for Rust 2018.Justus Winter
- 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.
2019-07-08tool: Use module-relative paths for imports.Justus Winter
2019-07-08tool: Identify the packet sequence while dumping.Justus Winter
- This is a backport from dump.sequoia-pgp.org.
2019-07-08tool: Use absolute paths to the various mpis.Justus Winter
2019-07-08tool: Hand the target width to the dump function.Justus Winter
2019-07-08tool: Use 'dyn' to mark the use of trait objects.Justus Winter
2019-07-08Release 0.9.0.v0.9.0Justus Winter
2019-06-28openpgp: Make struct MPI opaque.Justus Winter
2019-06-27openpgp: Rework secret key handling.Justus Winter
- Introduce two new types, `Encrypted` and `Unencrypted`, to make the fields of enum `SecretKey` private. Add accessors, implement From<..> to make the new types ergonomic to use, update callsites.
2019-06-24openpgp, tool: Fix decryption.Justus Winter
- Try to decrypt all PKESKs, not just the first one.
2019-06-19net: Replace or remove commentsjuga
- comments that do not apply anymore. - Closes #308. - Bugfix 0.7.0.
2019-06-18tool: If make-usage.sh exits abnormally don't update the target fileNeal H. Walfield
- If make-usage.sh exits abnormally, the target output file is still updated, and consequently subsequent invocations of make don't rebuild the target. Store the output in a temporary file. If (and only if) make-usage.sh exits without error, rename the temporary file.
2019-06-18tool: Make make-usage.sh more robustNeal H. Walfield
- If a subcommand's help is very long, then clap breaks the help across multiple lines. To prevent the first word in the continued line from being interpreted as a subcommand, only consider lines with exactly four leading spaces.
2019-06-18tool: Fix argument parsing for the wkd subcommandNeal H. Walfield
- 'sq wkd get email@example.net' and 'sq wkd url email@example.net' just print the help screen. - Use the clap options like other commands do.
2019-06-18tool: Update sq-usage.rs with current clijuga
2019-06-14Release 0.8.0.v0.8.0Justus Winter
2019-06-11tool: Add headers to exported enarmored TPKsjuga
Closes #213.
2019-06-04tool: Change wkd get to dump armor by defaultjuga
- Add -B flag for wkd get command - Update usage and also add missing new lines and replace URI by URL. Closes #286.
2019-06-02tool: stop panicking when wkd get without argumentsjuga
and the same with wkd url. Closes #285.
2019-06-01tool, sqv: Use CARGO_PKG_VERSION.Justus Winter
2019-05-30openpgp: Make PKESK::decrypt use crypto::Decryptor.Justus Winter
2019-05-28tool: Add wkd command and get, url subcommandsjuga
- Using the wkd client implemented in the wkd module. - Fixes #251.
2019-05-22openpgp: Trait Serialize/Parse cleanup.Justus Winter
- 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.
2019-05-20sqv, tool: Make build script more robust.Justus Winter
- Create $CARGO_TARGET_DIR first. Fixes a build problem if $CARGO_TARGET_DIR does not exist when the build script is run.