From 32ed4100e098ae2930e6fd94800c6ce7041101c2 Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Tue, 26 Jul 2016 12:23:26 +0200 Subject: Working PW safe getting slot name Signed-off-by: Szczepan Zalega --- NitrokeyManager.cc | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'NitrokeyManager.cc') diff --git a/NitrokeyManager.cc b/NitrokeyManager.cc index 15f09b8..8f5db6f 100644 --- a/NitrokeyManager.cc +++ b/NitrokeyManager.cc @@ -236,5 +236,31 @@ namespace nitrokey{ LockDevice::CommandTransaction::run(*device); } + const char *NitrokeyManager::get_password_safe_slot_name(uint8_t slot_number, const char *temporary_password) { + auto p = get_payload(); + p.slot_number = slot_number; + + auto auth = get_payload(); + strcpyT(auth.temporary_password, temporary_password); + auth.crc_to_authorize = GetPasswordSafeSlotName::CommandTransaction::getCRC(p); + UserAuthorize::CommandTransaction::run(*device, auth); + + auto response = GetPasswordSafeSlotName::CommandTransaction::run(*device, p); + return strdup((const char *) response.slot_name); + } + + const char *NitrokeyManager::get_password_safe_slot_login(uint8_t slot_number) { + auto p = get_payload(); + p.slot_number = slot_number; + auto response = GetPasswordSafeSlotLogin::CommandTransaction::run(*device, p); + return strdup((const char *) response.slot_login); + } + + const char *NitrokeyManager::get_password_safe_slot_password(uint8_t slot_number) { + auto p = get_payload(); + p.slot_number = slot_number; + auto response = GetPasswordSafeSlotPassword::CommandTransaction::run(*device, p); + return strdup((const char *) response.slot_password); + } } \ No newline at end of file -- cgit v1.2.1