aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nitrocli/Cargo.toml2
-rw-r--r--nitrocli/src/args.rs9
-rw-r--r--nitrocli/src/commands.rs7
3 files changed, 11 insertions, 7 deletions
diff --git a/nitrocli/Cargo.toml b/nitrocli/Cargo.toml
index 0c567c7..ae27e63 100644
--- a/nitrocli/Cargo.toml
+++ b/nitrocli/Cargo.toml
@@ -54,7 +54,7 @@ version = "0.2"
path = "../libc"
[dependencies.nitrokey]
-version = "0.3"
+version = "0.3.1"
path = "../nitrokey"
[dev-dependencies.nitrokey-test]
diff --git a/nitrocli/src/args.rs b/nitrocli/src/args.rs
index 6f02832..246490e 100644
--- a/nitrocli/src/args.rs
+++ b/nitrocli/src/args.rs
@@ -64,6 +64,15 @@ Enum! {DeviceModel, [
Storage => "storage"
]}
+impl From<DeviceModel> for nitrokey::Model {
+ fn from(model: DeviceModel) -> nitrokey::Model {
+ match model {
+ DeviceModel::Pro => nitrokey::Model::Pro,
+ DeviceModel::Storage => nitrokey::Model::Storage,
+ }
+ }
+}
+
/// A top-level command for nitrocli.
Enum! {Command, [
Config => "config",
diff --git a/nitrocli/src/commands.rs b/nitrocli/src/commands.rs
index ed3c2c4..b37f9c5 100644
--- a/nitrocli/src/commands.rs
+++ b/nitrocli/src/commands.rs
@@ -59,12 +59,7 @@ fn get_device(ctx: &mut args::ExecCtx<'_>) -> Result<nitrokey::DeviceWrapper> {
set_log_level(ctx);
match ctx.model {
- Some(model) => match model {
- args::DeviceModel::Pro => nitrokey::Pro::connect().map(nitrokey::DeviceWrapper::Pro),
- args::DeviceModel::Storage => {
- nitrokey::Storage::connect().map(nitrokey::DeviceWrapper::Storage)
- }
- },
+ Some(model) => nitrokey::connect_model(model.into()),
None => nitrokey::connect(),
}
.map_err(|_| Error::Error("Nitrokey device not found".to_string()))