aboutsummaryrefslogtreecommitdiff
path: root/nitrocli/src/args.rs
diff options
context:
space:
mode:
authorRobin Krahl <robin.krahl@ireas.org>2019-01-10 23:15:41 +0000
committerDaniel Mueller <deso@posteo.net>2019-01-26 22:04:29 -0800
commit77ff522ba2ebee17eb56f52921f127fba2fbd7fb (patch)
treef818d6b2441cb3c735e92bee5f63a377ec38a7eb /nitrocli/src/args.rs
parentfbb307551de0d26e612d1b00f386ccf45d84b066 (diff)
downloadnitrocli-77ff522ba2ebee17eb56f52921f127fba2fbd7fb.tar.gz
nitrocli-77ff522ba2ebee17eb56f52921f127fba2fbd7fb.tar.bz2
Refactor get_device to use nitrokey::connect_model
nitrokey 0.3.1 introduced the connect_model function that connects to a specific model given by an enum variant and returns a DeviceWrapper. This new function allows us to remove the manual selection of a connection method from the get_device function. We only have to implement From<DeviceModel> for nitrokey::Model to be able to convert our model enum to nitrokey's model enum.
Diffstat (limited to 'nitrocli/src/args.rs')
-rw-r--r--nitrocli/src/args.rs9
1 files changed, 9 insertions, 0 deletions
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",