aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobin Krahl <robin.krahl@ireas.org>2020-09-25 02:09:18 +0200
committerDaniel Mueller <deso@posteo.net>2020-10-11 15:02:46 -0700
commit23f455ab2e36a019ec62450c5b40949663395963 (patch)
treeca5a89abca555e60c9c0bee032740e573154430e /src
parent6fce98ec044241abd1d0f54dca307af6cd9f648f (diff)
downloadnitrocli-23f455ab2e36a019ec62450c5b40949663395963.tar.gz
nitrocli-23f455ab2e36a019ec62450c5b40949663395963.tar.bz2
Support Librem Key
This patch adds the librem device model for the Librem Key.
Diffstat (limited to 'src')
-rw-r--r--src/args.rs4
-rw-r--r--src/tests/mod.rs1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/args.rs b/src/args.rs
index e4bc77d..3bb1225 100644
--- a/src/args.rs
+++ b/src/args.rs
@@ -38,6 +38,7 @@ pub struct Args {
Enum! {
/// The available Nitrokey models.
DeviceModel, [
+ Librem => "librem",
Pro => "pro",
Storage => "storage",
]
@@ -46,6 +47,7 @@ Enum! {
impl DeviceModel {
pub fn as_user_facing_str(&self) -> &str {
match self {
+ DeviceModel::Librem => "Librem",
DeviceModel::Pro => "Pro",
DeviceModel::Storage => "Storage",
}
@@ -55,6 +57,7 @@ impl DeviceModel {
impl From<DeviceModel> for nitrokey::Model {
fn from(model: DeviceModel) -> nitrokey::Model {
match model {
+ DeviceModel::Librem => nitrokey::Model::Librem,
DeviceModel::Pro => nitrokey::Model::Pro,
DeviceModel::Storage => nitrokey::Model::Storage,
}
@@ -66,6 +69,7 @@ impl convert::TryFrom<nitrokey::Model> for DeviceModel {
fn try_from(model: nitrokey::Model) -> Result<DeviceModel, anyhow::Error> {
match model {
+ nitrokey::Model::Librem => Ok(DeviceModel::Librem),
nitrokey::Model::Pro => Ok(DeviceModel::Pro),
nitrokey::Model::Storage => Ok(DeviceModel::Storage),
_ => Err(anyhow::anyhow!("Unsupported device model: {}", model)),
diff --git a/src/tests/mod.rs b/src/tests/mod.rs
index 23eecc5..65983bb 100644
--- a/src/tests/mod.rs
+++ b/src/tests/mod.rs
@@ -76,6 +76,7 @@ impl Nitrocli {
fn model_to_arg(model: nitrokey::Model) -> &'static str {
match model {
+ nitrokey::Model::Librem => "--model=librem",
nitrokey::Model::Pro => "--model=pro",
nitrokey::Model::Storage => "--model=storage",
_ => panic!("Unexpected model in test suite: {}", model),