aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorszszszsz <szszszsz@users.noreply.github.com>2016-09-08 16:49:52 +0200
committerGitHub <noreply@github.com>2016-09-08 16:49:52 +0200
commite164c5f3dc74fb2335b1fc573ce446cdd76a07dc (patch)
treee11e0a7458d7aae9e484722550c60292b3a6d9ba /include
parent7dbbe7fb4c50c62b0e1818c5356aafb97a00ac0f (diff)
parentbcbb54f49fad3f4bb3e8e6aca081d9d300e74d2b (diff)
downloadlibnitrokey-e164c5f3dc74fb2335b1fc573ce446cdd76a07dc.tar.gz
libnitrokey-e164c5f3dc74fb2335b1fc573ce446cdd76a07dc.tar.bz2
Merge pull request #34 from Nitrokey/issue_33
Function for getting device's serial number in hex. Fixes #33
Diffstat (limited to 'include')
-rw-r--r--include/NitrokeyManager.h1
-rw-r--r--include/misc.h2
-rw-r--r--include/stick10_commands.h9
3 files changed, 9 insertions, 3 deletions
diff --git a/include/NitrokeyManager.h b/include/NitrokeyManager.h
index d2ea991..1e518f4 100644
--- a/include/NitrokeyManager.h
+++ b/include/NitrokeyManager.h
@@ -40,6 +40,7 @@ namespace nitrokey {
bool disconnect();
void set_debug(bool state);
string get_status();
+ string get_serial_number();
const char * get_totp_slot_name(uint8_t slot_number);
const char * get_hotp_slot_name(uint8_t slot_number);
diff --git a/include/misc.h b/include/misc.h
index a5d9e6d..cccd830 100644
--- a/include/misc.h
+++ b/include/misc.h
@@ -15,7 +15,7 @@ typename T::CommandPayload get_payload(){
}
- std::string hexdump(const char *p, size_t size);
+ std::string hexdump(const char *p, size_t size, bool print_header=true);
uint32_t stm_crc32(const uint8_t *data, size_t size);
}
}
diff --git a/include/stick10_commands.h b/include/stick10_commands.h
index ef83747..a60be59 100644
--- a/include/stick10_commands.h
+++ b/include/stick10_commands.h
@@ -324,15 +324,20 @@ class GetStatus : Command<CommandID::GET_STATUS> {
};
bool isValid() const { return enable_user_password!=delete_user_password; }
+ std::string get_card_serial_hex() const {
+ return ::nitrokey::misc::hexdump((const char *)(card_serial),
+ sizeof card_serial, false);
+ }
+
std::string dissect() const {
std::stringstream ss;
ss << "firmware_version:\t" << firmware_version << std::endl;
ss << "card_serial:\t"
<< ::nitrokey::misc::hexdump((const char *)(card_serial),
- sizeof card_serial);
+ sizeof card_serial, false);
ss << "general_config:\t"
<< ::nitrokey::misc::hexdump((const char *)(general_config),
- sizeof general_config);
+ sizeof general_config, false);
ss << "numlock:\t" << (int)numlock << std::endl;
ss << "capslock:\t" << (int)capslock << std::endl;
ss << "scrolllock:\t" << (int)scrolllock << std::endl;