diff options
author | Szczepan Zalega <szczepan@nitrokey.com> | 2017-02-03 17:23:44 +0100 |
---|---|---|
committer | Szczepan Zalega <szczepan@nitrokey.com> | 2017-03-11 15:41:42 +0100 |
commit | db76ae5299f3650385f66e4c596b18fd54250d38 (patch) | |
tree | ed61a9ec409ff1431ed49b7ddb7dfd40216d96d5 | |
parent | 767e24572db2bbc4b9837c32ffc0bab4e1ad0b81 (diff) | |
download | libnitrokey-db76ae5299f3650385f66e4c596b18fd54250d38.tar.gz libnitrokey-db76ae5299f3650385f66e4c596b18fd54250d38.tar.bz2 |
Allow users to lock encrypted volumes specifically
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
-rw-r--r-- | NitrokeyManager.cc | 8 | ||||
-rw-r--r-- | include/NitrokeyManager.h | 2 | ||||
-rw-r--r-- | include/stick20_commands.h | 5 |
3 files changed, 14 insertions, 1 deletions
diff --git a/NitrokeyManager.cc b/NitrokeyManager.cc index 65b3c68..74a6ecf 100644 --- a/NitrokeyManager.cc +++ b/NitrokeyManager.cc @@ -766,4 +766,12 @@ namespace nitrokey{ return get_OTP_slot_data(get_internal_slot_number_for_hotp(slot_number)); } + void NitrokeyManager::lock_encrypted_volume() { + misc::execute_password_command<stick20::DisableEncryptedPartition>(device, ""); + } + + void NitrokeyManager::lock_hidden_volume() { + misc::execute_password_command<stick20::DisableHiddenEncryptedPartition>(device, ""); + } + } diff --git a/include/NitrokeyManager.h b/include/NitrokeyManager.h index 4a98e94..b89db63 100644 --- a/include/NitrokeyManager.h +++ b/include/NitrokeyManager.h @@ -91,8 +91,10 @@ namespace nitrokey { bool is_AES_supported(const char *user_password); void unlock_encrypted_volume(const char *user_password); + void lock_encrypted_volume(); void unlock_hidden_volume(const char *hidden_volume_password); + void lock_hidden_volume(); void set_unencrypted_read_only(const char *user_pin); diff --git a/include/stick20_commands.h b/include/stick20_commands.h index a3f1609..b887636 100644 --- a/include/stick20_commands.h +++ b/include/stick20_commands.h @@ -26,9 +26,12 @@ namespace nitrokey { public PasswordCommand<CommandID::UNLOCK_USER_PASSWORD, PasswordKind::Admin> {}; class EnableEncryptedPartition : public PasswordCommand<CommandID::ENABLE_CRYPTED_PARI> {}; - class DisableEncryptedPartition : public PasswordCommand<CommandID::DISABLE_CRYPTED_PARI> {}; class EnableHiddenEncryptedPartition : public PasswordCommand<CommandID::ENABLE_HIDDEN_CRYPTED_PARI> {}; + + //FIXME the volume disabling commands do not need password + class DisableEncryptedPartition : public PasswordCommand<CommandID::DISABLE_CRYPTED_PARI> {}; class DisableHiddenEncryptedPartition : public PasswordCommand<CommandID::DISABLE_CRYPTED_PARI> {}; + class EnableFirmwareUpdate : public PasswordCommand<CommandID::ENABLE_FIRMWARE_UPDATE> {}; class ChangeUpdatePassword : Command<CommandID::CHANGE_UPDATE_PIN> { |