Commit Graph

50 Commits

Author SHA1 Message Date
Jack Grigg 50b873c89f Reliably ignore PIV devices that are not connected
This is primarily to ignore smart card readers that don't have cards
plugged in.
2021-04-14 00:51:45 +12:00
str4d 856a73dc90 Merge pull request #17 from str4d/tidy-ups
Tidy ups
2021-04-13 21:47:48 +12:00
Jack Grigg 33ab757025 Migrate to new age-plugin API 2021-04-13 20:41:34 +12:00
Jack Grigg 63c8d6c303 Rename PLUGIN_NAME to BINARY_NAME 2021-04-12 22:31:46 +12:00
Jack Grigg 771cad885a Always use created date from YubiKey certificate 2021-04-12 18:22:54 +12:00
str4d 4e33ac1267 Merge pull request #16 from str4d/earlier-release-runners
CI: Build Linux releases with earlier Ubuntu versions
2021-04-11 23:41:36 +12:00
Jack Grigg eeccad0c3f Use Ubuntu 18.04 to build Debian packages
cargo-deb requires the lzma_stream_encoder_mt function, which doesn't
exist in the version of liblzma in Ubuntu 16.04.
2021-04-11 23:30:22 +12:00
Jack Grigg 4bc2769100 CI: Build Linux releases with Ubuntu 16.04
This ensures they are linked to earlier versions of libc and
libpcsclite.
2021-04-11 23:16:48 +12:00
str4d 940f90c882 Merge pull request #15 from str4d/debian-package
Debian package generation
2021-04-11 20:45:16 +12:00
Jack Grigg f46b3f973f CI: Add Debian package generation 2021-04-11 20:17:14 +12:00
Jack Grigg d4c53157a7 Add manpage generator 2021-04-11 20:10:45 +12:00
str4d f316257d6b Merge pull request #14 from str4d/release-workflow-fixes
CI: Fixes to release workflow
2021-04-11 18:28:49 +12:00
Jack Grigg 3bb90e0fcb CI: Remove cross-compiling release targets
GitHub doesn't provide any ARM runners, and we can't cross-compile
without a compatible libpcsclite-dev. Until we can work that out, we'll
just build for direct targets.
2021-04-11 18:21:40 +12:00
Jack Grigg 43024048a2 Release: Add libpcsclite-dev to cross-compilation dependencies 2021-04-11 18:05:04 +12:00
str4d 96564d9169 Merge pull request #13 from str4d/release-workflow
CI: Add release workflow
2021-04-11 17:58:42 +12:00
Jack Grigg 80a7f64bdc CI: Add release workflow 2021-04-11 17:56:23 +12:00
str4d fa1ecece51 Merge pull request #8 from str4d/twitch
YubiKey plugin protocol
2021-04-05 23:12:48 +12:00
Jack Grigg 5a85a15341 YubiKey plugin protocol 2021-04-05 23:08:07 +12:00
str4d 12df32817c Merge pull request #11 from str4d/recipient-rework
Rework Recipient to wrap p256::PublicKey
2021-04-04 17:01:42 +12:00
Jack Grigg f74dd2ec4b Fix clippy lints 2021-04-04 16:55:34 +12:00
Jack Grigg 3ea2463c3c Remove direct dependency on elliptic-curve crate
Using the re-export from p256 ensures we always use the correct version.
2021-04-04 16:48:12 +12:00
Jack Grigg c7f173b43e Rework Recipient to wrap p256::PublicKey 2021-04-04 16:13:57 +12:00
str4d a08f23a3e8 Merge pull request #7 from str4d/pretty-cli
Implement no-command pretty CLI
2021-03-29 21:53:33 +13:00
Jack Grigg c5a2b7ee5a Implement no-command pretty CLI 2021-03-29 21:19:20 +13:00
str4d a617cc91fb Merge pull request #6 from str4d/generation-command
Implement --generate command
2021-03-29 21:11:00 +13:00
Jack Grigg 4ea8506e49 Extract slot UI indexing into util functions 2021-03-29 21:09:02 +13:00
Jack Grigg 850f96cd2c Implement --generate command
Includes logic to help users manage their keys:

- If the key is using a default PIN, we require the user to change it.
- We set the PUK equal to the PIN so the user doesn't need to remember
  them separately.
- We migrate the default management key to a new PIN-protected key.
2021-03-29 19:02:32 +13:00
str4d eedf9fa997 Merge pull request #10 from str4d/resilient-list
Make --list and --list-all more resilient
2021-03-29 19:01:13 +13:00
Jack Grigg acac62660c list: Ignore PIV devices we can't read from 2021-03-29 18:51:21 +13:00
Jack Grigg b6d70ba1f0 Use env_logger to enable logging
Log output is disabled by default.
2021-03-29 18:43:16 +13:00
str4d bd9bab21e5 Merge pull request #9 from str4d/dep-updates
Dependency updates
2021-03-29 11:51:23 +13:00
Jack Grigg 258e88d5f9 CI: Bump to Rust 1.51 and update workflow 2021-03-29 11:39:16 +13:00
Jack Grigg 0f7095a60a Bump to latest age-plugin 2021-03-29 11:00:42 +13:00
Jack Grigg 50e4fee48c bech32 0.8 2021-03-29 10:43:57 +13:00
Jack Grigg 15081ac948 yubikey-piv 0.3 2021-03-29 10:41:04 +13:00
Jack Grigg 88d9b0edc4 cargo update 2021-03-29 10:37:06 +13:00
Jack Grigg c5bfb412d1 cargo update 2021-01-30 22:21:03 +00:00
str4d a68ca6e1cb Merge pull request #4 from str4d/inspection-commands
Inspection commands
2021-01-12 15:42:17 +13:00
Jack Grigg 7a527b2be6 Implement --identity command 2021-01-12 02:29:57 +00:00
Jack Grigg babe64da42 Implement --list and --list-all commands
Requires a MSRV of 1.44 due to the transitive dependency on bitvec 0.19.
2021-01-12 02:29:30 +00:00
Jack Grigg 42e28b1371 Add hopefully-obvious warnings to the README about pre-0.1 state 2021-01-12 01:31:46 +00:00
str4d 3ee6d59dcd Merge pull request #5 from str4d/dep-updates
cargo update
2021-01-12 04:17:48 +13:00
Jack Grigg ef90d583bb cargo update 2021-01-11 15:13:47 +00:00
str4d 1207bbd936 Merge pull request #2 from str4d/skeleton
Plugin skeleton
2021-01-01 12:39:25 +13:00
Jack Grigg 259947386a Add skeleton of administration commands 2020-12-31 23:01:22 +00:00
Jack Grigg 0052d91aad Set up plugin structure 2020-12-31 23:01:22 +00:00
Jack Grigg 05f7f1b076 CI: Install build dependencies when linting 2020-08-30 22:20:32 +01:00
Jack Grigg 0edda98f4c Add CI workflow 2020-08-30 22:14:06 +01:00
Jack Grigg 5475703560 Update crate metadata 2020-08-30 22:09:10 +01:00
Jack Grigg 61c1460635 Empty age-plugin-yubikey binary crate 2020-08-30 21:39:48 +01:00