aboutsummaryrefslogtreecommitdiff
path: root/NitrokeyManager.cc
diff options
context:
space:
mode:
authorSzczepan Zalega <szczepan@nitrokey.com>2017-12-12 16:58:24 +0100
committerSzczepan Zalega <szczepan@nitrokey.com>2018-02-23 15:42:37 +0100
commit809b618d4d064cedc7070cac5ccc8797e5d89f54 (patch)
treed2423759226e6f0a7d016ca2866acd03c35abbe7 /NitrokeyManager.cc
parent0b0898f2b5d88738aa8f49ce6b9ba98db1c775f7 (diff)
downloadlibnitrokey-809b618d4d064cedc7070cac5ccc8797e5d89f54.tar.gz
libnitrokey-809b618d4d064cedc7070cac5ccc8797e5d89f54.tar.bz2
Correct getting minor and major from firmware version
Add get_minor_firmware_version Correct get_major_firmware version (was returning minor instead) Name 3rd version field for test builds Use minor firmware version in tests Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
Diffstat (limited to 'NitrokeyManager.cc')
-rw-r--r--NitrokeyManager.cc18
1 files changed, 16 insertions, 2 deletions
diff --git a/NitrokeyManager.cc b/NitrokeyManager.cc
index 14e3952..d12bf54 100644
--- a/NitrokeyManager.cc
+++ b/NitrokeyManager.cc
@@ -755,11 +755,25 @@ using nitrokey::misc::strcpyT;
switch(device->get_device_model()){
case DeviceModel::PRO:{
auto status_p = GetStatus::CommandTransaction::run(device);
- return status_p.data().firmware_version; //7 or 8
+ return status_p.data().firmware_version_st.minor; //7 or 8
}
case DeviceModel::STORAGE:{
auto status = stick20::GetDeviceStatus::CommandTransaction::run(device);
- return status.data().versionInfo.minor;
+ auto test_firmware = status.data().versionInfo.build_iteration != 0;
+ return status.data().versionInfo.minor + (test_firmware? 1 : 0);
+ }
+ }
+ return 0;
+ }
+ int NitrokeyManager::get_major_firmware_version(){
+ switch(device->get_device_model()){
+ case DeviceModel::PRO:{
+ auto status_p = GetStatus::CommandTransaction::run(device);
+ return status_p.data().firmware_version_st.major; //0
+ }
+ case DeviceModel::STORAGE:{
+ auto status = stick20::GetDeviceStatus::CommandTransaction::run(device);
+ return status.data().versionInfo.major;
}
}
return 0;