diff options
author | Szczepan Zalega <szczepan@nitrokey.com> | 2016-10-28 14:33:25 +0200 |
---|---|---|
committer | Szczepan Zalega <szczepan@nitrokey.com> | 2016-11-26 18:56:25 +0100 |
commit | 3b1926164b2e0eb91cf3a7e9c854cca85f7d4c8e (patch) | |
tree | 55a4c529734b5d36f95e64239684a96975159138 /unittest/test2.cc | |
parent | e262c978f4cb8b448087102b68bbdcc731a090a0 (diff) | |
download | libnitrokey-3b1926164b2e0eb91cf3a7e9c854cca85f7d4c8e.tar.gz libnitrokey-3b1926164b2e0eb91cf3a7e9c854cca85f7d4c8e.tar.bz2 |
Support for changing firmware update password and test
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
Diffstat (limited to 'unittest/test2.cc')
-rw-r--r-- | unittest/test2.cc | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/unittest/test2.cc b/unittest/test2.cc index 21122ef..8db91b7 100644 --- a/unittest/test2.cc +++ b/unittest/test2.cc @@ -178,7 +178,30 @@ TEST_CASE("setup multiple hidden volumes", "[hidden2]") { } } -TEST_CASE("general test", "[test]") { +//in case of a bug this could change update PIN to some unexpected value +// - please save log with packet dump if this test will not pass +TEST_CASE("update password change", "[dangerous]") { + Stick20 stick; + bool connected = stick.connect(); + REQUIRE(connected == true); + Log::instance().set_loglevel(Loglevel::DEBUG_L2); + + auto pass1 = "12345678"; + auto pass2 = "12345678901234567890"; + + auto data = { + make_pair(pass1, pass2), + make_pair(pass2, pass1), + }; + for (auto && password: data) { + auto p = get_payload<stick20::ChangeUpdatePassword>(); + strcpyT(p.current_update_password, password.first); + strcpyT(p.new_update_password, password.second); + stick20::ChangeUpdatePassword::CommandTransaction::run(stick, p); + } +} + + TEST_CASE("general test", "[test]") { Stick20 stick; bool connected = stick.connect(); REQUIRE(connected == true); |