aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NK_C_API.cc14
-rw-r--r--NK_C_API.h23
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([&]() {
diff --git a/NK_C_API.h b/NK_C_API.h
index 0131caa..bd7130f 100644
--- a/NK_C_API.h
+++ b/NK_C_API.h
@@ -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