aboutsummaryrefslogtreecommitdiff
path: root/NK_C_API.cc
diff options
context:
space:
mode:
authorRobin Krahl <robin.krahl@ireas.org>2020-04-02 15:19:00 +0200
committerRobin Krahl <robin.krahl@ireas.org>2020-04-02 15:20:59 +0200
commitfedf828e394938fb6f84407b4de7412a3fb6ec40 (patch)
treeff101e273e82e16945576b424615c6a21031c0ee /NK_C_API.cc
parent02f19713c155457e8cc7d80d581bdac35cb1716d (diff)
downloadlibnitrokey-fedf828e394938fb6f84407b4de7412a3fb6ec40.tar.gz
libnitrokey-fedf828e394938fb6f84407b4de7412a3fb6ec40.tar.bz2
Return serial number as uint32_t from C API
This patch adds the function NK_device_serial_number_as_u32 to the C API. It is similar to NK_device_serial_number but returns the raw unsigned integer instead of a formatted string. This patch also adds a simple test case that ensures that the number is not zero. Fixes #172.
Diffstat (limited to 'NK_C_API.cc')
-rw-r--r--NK_C_API.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/NK_C_API.cc b/NK_C_API.cc
index 1d3fa3a..c44e36f 100644
--- a/NK_C_API.cc
+++ b/NK_C_API.cc
@@ -299,6 +299,13 @@ extern "C" {
});
}
+ NK_C_API uint32_t NK_device_serial_number_as_u32() {
+ auto m = NitrokeyManager::instance();
+ return get_with_result([&]() {
+ return m->get_serial_number_as_u32();
+ });
+ }
+
NK_C_API char * NK_get_hotp_code(uint8_t slot_number) {
return NK_get_hotp_code_PIN(slot_number, "");
}