Heiko Schaefer
56e3845ea4
Explicitly set policy when calling util::upload_subkeys()
2021-09-21 11:22:56 +02:00
Heiko Schaefer
0d249a47fd
sq_util::get_subkey() is now the central helper fn for picking a (sub)key from a Cert.
2021-09-11 16:27:31 +02:00
Heiko Schaefer
936f04663c
Rename list_cards() -> cards().
...
Remove open_yolo() from the openpgp-card-pcsc API (it's easy enough to approximate by using cards())
2021-09-11 12:42:01 +02:00
Heiko Schaefer
55e7a2c794
Re-ordering the -sequoia crate, as a first step towards defining its API.
2021-09-11 12:42:01 +02:00
Heiko Schaefer
8814dbd766
Add test_change_pw() and test_resetting(), both of which are still in an exploratory stage.
2021-09-09 01:06:44 +02:00
Heiko Schaefer
c5d03bd677
Rename StatusByte -> StatusBytes
2021-09-07 11:50:20 +02:00
Heiko Schaefer
8b5894e961
Rename get_app_data() to get_application_related_data() to correspond with naming in spec.
2021-09-02 22:09:46 +02:00
Heiko Schaefer
316ca7eb3a
Rename error types and re-export them at the crate top level.
2021-09-01 23:59:56 +02:00
Heiko Schaefer
f8d998b3a6
Implement From<CardClientBox>, Into<CardClientBox> for CardApp and adjust client code.
2021-09-01 22:26:25 +02:00
Heiko Schaefer
88c924c7d9
Add documentation, normalize fn names.
2021-09-01 20:45:18 +02:00
Heiko Schaefer
5a6a5754e1
Add an RSA3k private key for import tests
2021-08-29 18:00:23 +02:00
Heiko Schaefer
a89a106d20
Print ApplicationId in test_print_caps
2021-08-28 19:59:23 +02:00
Heiko Schaefer
935c77f59a
Rename ApplicationRelatedData::get_aid() to get_application_id()
2021-08-28 19:58:34 +02:00
Heiko Schaefer
fdac0de34f
Add a CI job to run 'cargo test' with rustc/cargo from debian stable.
...
Minor fixes so that the code compiles with rustc 1.48
2021-08-27 15:15:31 +02:00
Heiko Schaefer
7c8c72339b
Use KeyGenerationTime in openpgp-card APIs (instead of u32 or SystemTime)
2021-08-26 19:27:08 +02:00
Heiko Schaefer
eaf46e6bbb
Make fields private, add accessor methods.
2021-08-26 17:59:54 +02:00
Heiko Schaefer
c6ba204293
Move debug prints for key generation from keys.rs to tests.rs
2021-08-25 21:18:13 +02:00
Heiko Schaefer
833a22f8f0
Add test to explore cardholder cert functionality
2021-08-25 16:42:18 +02:00
Heiko Schaefer
013af97c23
Implement get_private() and set_private().
2021-08-22 18:59:54 +02:00
Heiko Schaefer
cb8f3c7cb1
Elaborate "PW status bytes", fix broken naming of members.
...
Implement set_pw_status_bytes().
Add test code to card-functionality.
2021-08-22 01:20:14 +02:00
Heiko Schaefer
5109ac5445
Rename card_data -> card_do
2021-08-21 19:02:04 +02:00
Heiko Schaefer
44e915d3e0
Refactor: move OpenPGP card data structures (and parsing) into the module card_data
2021-08-21 15:59:31 +02:00
Heiko Schaefer
7a7db8a131
Rename get_cards->into_cardapps;
...
Fix get_card_app() [doesn't need &mut]
2021-08-20 22:19:39 +02:00
Heiko Schaefer
c872e46e80
Refactor: move accessor fn for "Application Related Data" into the struct ApplicationRelatedData.
2021-08-20 22:19:39 +02:00
Heiko Schaefer
d62f73e84c
Add panic message.
2021-08-20 13:25:58 +02:00
Heiko Schaefer
191c6221b4
Print human readable card name.
2021-08-20 13:25:58 +02:00
Heiko Schaefer
8aae0a357e
Split the Response
type into an internal RawResponse
type which also contains the status bytes, and an external Response
type that can only be generated from a RawResponse with status "ok".
...
This removes the need for external users of openpgp-card to check the status or operations.
That is, openpgp-card now always returns an `Err` if the status of a command is not ok.
2021-08-20 13:25:58 +02:00
Heiko Schaefer
73cb298361
Adjust crate name to be in the same "namespace" as the other openpgp-card-* crates.
2021-08-19 17:39:24 +02:00
Heiko Schaefer
85a05167d1
Refactor, Document API.
...
(Moved algorithm-related data structures to algorithm.rs)
2021-08-18 19:19:22 +02:00
Heiko Schaefer
0b0e9c48fc
Refactor:
...
- Move high-level API from openpgp-card to openpgp-card-sequoia
- Move the pcsc backend into the separate crate openpgp-card-pcsc
2021-08-18 14:03:54 +02:00
Heiko Schaefer
b5ebc6b43c
Print card name from config in test output
2021-08-17 14:25:57 +02:00
Heiko Schaefer
413e464cff
Remove ciphertexts from the test data directory (ciphertext is now computed on the fly in import tests)
2021-08-15 17:16:15 +02:00
Heiko Schaefer
404d6dce3f
Configure private-key-data for import tests in the toml configuration
2021-08-15 17:12:50 +02:00
Heiko Schaefer
5237c1af85
Make the config.keygen optional in the configuration file
2021-08-13 21:28:10 +02:00
Heiko Schaefer
3361c8b79d
Extend Test configuration file format.
...
Run key generation tests for the algorithms specified in the configuration.
2021-08-13 20:02:53 +02:00
Heiko Schaefer
765b4e8fdc
Move "make_cert" into openpgp-card-sequoia
2021-08-13 20:02:53 +02:00
Heiko Schaefer
f1add02672
Lint fix
2021-08-13 20:02:53 +02:00
Heiko Schaefer
a0370c5c53
WIP: more testing in the context of on-card key generation.
...
In particular, add a decryption test.
2021-08-13 20:02:53 +02:00
Heiko Schaefer
6904551c7d
Set key flags while generating a Cert from card information.
2021-08-13 20:02:53 +02:00
Heiko Schaefer
ca5dd61001
Assemble information from the card into a Cert.
...
Still a WIP (this code serves in part to explore handling of Certs for cards).
2021-08-13 20:02:53 +02:00
Heiko Schaefer
27b6d686d9
Refactor card-functionality crate, tentatively breaking tests into groups.
2021-08-13 20:02:53 +02:00
Heiko Schaefer
3edadb8607
Add a "test" fn that prints algorithm information for cards.
2021-08-13 20:02:53 +02:00
Heiko Schaefer
d9a25c23c9
Remove printlns
2021-08-07 00:54:01 +02:00
Heiko Schaefer
feb6f7be51
Implement get_pub_key()
2021-08-07 00:18:13 +02:00
Heiko Schaefer
7acc1deb98
- Implement key generation (without specifying an algorithm so the current algo is used. only supports RSA for now)
...
- Refactor: rename key_upload.rs -> keys.rs
- Fix handling of key timestamps
2021-08-06 20:14:02 +02:00
Heiko Schaefer
538bfb51d4
Sort imports.
2021-08-06 16:44:48 +02:00
Heiko Schaefer
3effe39aa1
Moved handling of cards and configuration of cards for testing to cards.rs
2021-08-05 15:31:14 +02:00
Heiko Schaefer
f67501d0f9
Lints
2021-08-05 15:16:16 +02:00
Heiko Schaefer
7541b2f493
Expand documentation in example config file, reformat config.
2021-08-04 22:29:55 +02:00
Heiko Schaefer
d2c4152595
Move the configuration of cards for card-functionality test suite into the file config/test-cards.toml
.
...
Add an example for this config file in `config/test-cards-example.toml`.
Add handling for this toml configuration.
2021-08-04 19:15:45 +02:00