diff options
| author | szszszsz <szszszsz@users.noreply.github.com> | 2016-09-08 16:49:52 +0200 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-09-08 16:49:52 +0200 | 
| commit | e164c5f3dc74fb2335b1fc573ce446cdd76a07dc (patch) | |
| tree | e11e0a7458d7aae9e484722550c60292b3a6d9ba /include | |
| parent | 7dbbe7fb4c50c62b0e1818c5356aafb97a00ac0f (diff) | |
| parent | bcbb54f49fad3f4bb3e8e6aca081d9d300e74d2b (diff) | |
| download | libnitrokey-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.h | 1 | ||||
| -rw-r--r-- | include/misc.h | 2 | ||||
| -rw-r--r-- | include/stick10_commands.h | 9 | 
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; | 
