diff options
author | Szczepan Zalega <szczepan@nitrokey.com> | 2017-12-12 17:41:01 +0100 |
---|---|---|
committer | Szczepan Zalega <szczepan@nitrokey.com> | 2018-02-23 15:42:37 +0100 |
commit | 66a67b7b69b9cb43a810449761c78883e9e11bd6 (patch) | |
tree | 2436627cbb2aef9d187d554d6e5bda2388df247d | |
parent | 025774fc3759683a8ec0f6b1598b1e34b550e6d5 (diff) | |
download | libnitrokey-66a67b7b69b9cb43a810449761c78883e9e11bd6.tar.gz libnitrokey-66a67b7b69b9cb43a810449761c78883e9e11bd6.tar.bz2 |
C API for Encrypted volume ro/rw switch
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
-rw-r--r-- | NK_C_API.cc | 14 | ||||
-rw-r--r-- | NK_C_API.h | 23 |
2 files changed, 37 insertions, 0 deletions
diff --git a/NK_C_API.cc b/NK_C_API.cc index c886b6a..9b53b49 100644 --- a/NK_C_API.cc +++ b/NK_C_API.cc @@ -509,6 +509,20 @@ extern "C" { }); } + NK_C_API int NK_set_encrypted_read_only(const char* admin_pin) { + auto m = NitrokeyManager::instance(); + return get_without_result([&]() { + m->set_encrypted_volume_read_only(admin_pin); + }); + } + + NK_C_API int NK_set_encrypted_read_write(const char* admin_pin) { + auto m = NitrokeyManager::instance(); + return get_without_result([&]() { + m->set_encrypted_volume_read_write(admin_pin); + }); + } + NK_C_API int NK_export_firmware(const char* admin_pin) { auto m = NitrokeyManager::instance(); return get_without_result([&]() { @@ -445,6 +445,29 @@ extern "C" { NK_C_API int NK_set_unencrypted_read_write(const char* user_pin); /** + * Make encrypted volume read-only. + * Device hides encrypted volume for a second therefore make sure + * buffers are flushed before running. + * Storage only + * @param admin_pin 20 characters + * @return command processing error code + */ + NK_C_API int NK_set_encrypted_read_only(const char* admin_pin); + + /** + * Make encrypted volume read-write. + * Device hides encrypted volume for a second therefore make sure + * buffers are flushed before running. + * Storage only + * @param admin_pin 20 characters + * @return command processing error code + */ + NK_C_API int NK_set_encrypted_read_write(const char* admin_pin); + + + + + /** * Exports device's firmware to unencrypted volume. * Storage only * @param admin_pin 20 characters |