<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nitrokey-rs/tests, branch v0.3.4</title>
<subtitle>Rust interface to libnitrokey</subtitle>
<id>https://git.ireas.org/nitrokey-rs/atom?h=v0.3.4</id>
<link rel='self' href='https://git.ireas.org/nitrokey-rs/atom?h=v0.3.4'/>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/'/>
<updated>2019-01-16T20:29:38Z</updated>
<entry>
<title>Document and test empty Git versions</title>
<updated>2019-01-16T20:29:38Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-16T20:28:31Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=679791064169a37ad9d88b910b7553ebf7133c07'/>
<id>urn:sha1:679791064169a37ad9d88b910b7553ebf7133c07</id>
<content type='text'>
If libnitrokey has not been built from a clone of the Git repository,
the Git version string may be empty.
</content>
</entry>
<entry>
<title>Add delay between factory reset and building AES key in tests</title>
<updated>2019-01-16T20:22:48Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-16T20:20:31Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=d72641832a6c8622cf6468987b5b0aa5bd4c1c39'/>
<id>urn:sha1:d72641832a6c8622cf6468987b5b0aa5bd4c1c39</id>
<content type='text'>
There seems to be a bug in libnitrokey or the Nitrokey Storage firmware
that causes problems when chaining factory reset and build_AES_keys
without delay (upstream issue [0]).

[0] https://github.com/Nitrokey/nitrokey-storage-firmware/issues/80
</content>
</entry>
<entry>
<title>Build AES key after factory reset in tests</title>
<updated>2019-01-16T20:22:41Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-16T19:43:04Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=3a8669cea4aa4b32fee3336cb9be4ec66d3dc2c2'/>
<id>urn:sha1:3a8669cea4aa4b32fee3336cb9be4ec66d3dc2c2</id>
<content type='text'>
The device::clear_new_sd_card_warning used to perform a factory reset
without building an AES key.  This led to errors in tests that assume
that an AES key is present.
</content>
</entry>
<entry>
<title>Make device::factory_reset test more robust</title>
<updated>2019-01-16T20:22:31Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-16T19:35:50Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=d3a103bc25e5f37a42a19515ad25e5a8e5995b36'/>
<id>urn:sha1:d3a103bc25e5f37a42a19515ad25e5a8e5995b36</id>
<content type='text'>
The device::factory_reset test used to first change the PINs and then
access the PWS and the OTP data.  If for example the PWS access failed
due to an problem with the AES key, the PINs were not reset.

Now we perform the PWS and OTP access with the old PINs – which is okay
as we do not want to test the PIN change but the factory reset.  If
these preparations fail, the tests is cancelled before the PINs are
changed.
</content>
</entry>
<entry>
<title>pws: Interpret empty strings as unprogrammed slots</title>
<updated>2019-01-16T19:17:16Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-16T03:16:01Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=79a3298ab5973a47cb68ef48e554ec88fb7e99a6'/>
<id>urn:sha1:79a3298ab5973a47cb68ef48e554ec88fb7e99a6</id>
<content type='text'>
Until the last commit, all empty strings returned by the library were
interepreted as errors.  As the PWS functions return empty strings for
unprogrammed slots, the methods to access the PWS data returned an error
when querying a slot that is not programmed.  Since the last commit,
they return an empty string instead.

This patch restores the old behavior by returning an error instead of an
empty string.  Yet we change the error variant: SlotNotProgrammed
instead of Undefined.
</content>
</entry>
<entry>
<title>Add the clear_new_sd_card_warning method to Storage</title>
<updated>2019-01-14T17:37:07Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-14T17:34:34Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=c34b56b2b4c317947fd8fd3ae6c1fa3a773ee775'/>
<id>urn:sha1:c34b56b2b4c317947fd8fd3ae6c1fa3a773ee775</id>
<content type='text'>
The clear_new_sd_card_warning method calls the libnitrokey
NK_clear_new_sd_card_warning function to reset the corresponding flag in
the Storage status.
</content>
</entry>
<entry>
<title>Add the get_production_info method to the Storage struct</title>
<updated>2019-01-14T15:28:58Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-14T15:26:02Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=0262ed2e614e9222b69970289a32ddb3683b3535'/>
<id>urn:sha1:0262ed2e614e9222b69970289a32ddb3683b3535</id>
<content type='text'>
The get_production_info method maps to the NK_get_production_info
function of libnitrokey.  The Storage firmware supports two query modes:
with or without a write test.  libnitrokey only performs the query
without write test, so the fields that are only set for the write test
are ignored in our implementation.  This affects:
- user and admin retry counts
- smart card ID
- SD card size
</content>
</entry>
<entry>
<title>Add export_firmware method to Storage</title>
<updated>2019-01-12T17:39:10Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-12T17:37:21Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=78f926456a07047c34dc20b97fe04e55ba443528'/>
<id>urn:sha1:78f926456a07047c34dc20b97fe04e55ba443528</id>
<content type='text'>
The export_firmware method writes the firmware of the Nitrokey Storage
to the unencrypted storage.  We only test that the command succeeds as
mounting the unencrypted storage and accessing the file is out of scope
for the tests.
</content>
</entry>
<entry>
<title>Add set_unencrypted_volume_mode to Storage</title>
<updated>2019-01-12T17:16:39Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-12T16:51:47Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=0ee7ef7705ebfc0d419bba9a61db55fccd14b638'/>
<id>urn:sha1:0ee7ef7705ebfc0d419bba9a61db55fccd14b638</id>
<content type='text'>
The new set_unencrypted_volume_mode method sets the access mode of the
unencrypted volume on the Nitrokey Storage.  Depending on the requested
access mode, it calls either NK_set_unencrypted_read_only_admin or
NK_set_unencrypted_read_write_admin.

Note that this function requires firmware version 0.51 or later.
(Earlier firmware versions used the user PIN.)
</content>
</entry>
<entry>
<title>Move the update PIN from tests/util to tests/device</title>
<updated>2019-01-12T15:03:32Z</updated>
<author>
<name>Robin Krahl</name>
<email>robin.krahl@ireas.org</email>
</author>
<published>2019-01-12T15:00:11Z</published>
<link rel='alternate' type='text/html' href='https://git.ireas.org/nitrokey-rs/commit/?id=87e742b4746e1dc261825f0ca87c64a1ea454b1d'/>
<id>urn:sha1:87e742b4746e1dc261825f0ca87c64a1ea454b1d</id>
<content type='text'>
The update PIN is only used in the Storage tests, so it is moved from
the common tests/util module to the tests/device module.  This fixes
compiler warnings when compiling the other test modules.
</content>
</entry>
</feed>
