fwupd/plugins/nitrokey
Richard Hughes f50ff2c27e Decouple the version format from the version itself
If we say that the version format should be the same for the `version_lowest`
and the `version_bootloader` then it does not always make sense to set it at
the same time.

Moving the `version_format` to a standalone first-class property also means it
can be typically be set in the custom device `_init()` function, which means we
don't need to worry about *changing* ther version format as set by the USB and
UDev superclass helpers.
2020-02-25 14:00:09 +00:00
..
fu-nitrokey-common.c Remove the unused Emacs indenting headers from all source files 2018-08-09 12:48:04 +01:00
fu-nitrokey-common.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-nitrokey-device.c Decouple the version format from the version itself 2020-02-25 14:00:09 +00:00
fu-nitrokey-device.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-plugin-nitrokey.c trivial: stop including fu-hash.h as part of fu-plugin-vfuncs.h 2019-11-25 09:29:46 +00:00
fu-self-test.c nitrokey: Correct Nitrokey Storage invalid firmware version read 2019-01-25 09:53:05 +00:00
lsusb.txt Add a nitrokey plugin 2017-11-13 16:25:46 +00:00
meson.build Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
nitrokey.quirk Add support for counterpart GUIDs 2018-08-30 16:55:41 +01:00
README.md trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00

Nitrokey Support

Introduction

This plugin is used to get the correct version number on Nitrokey storage devices. These devices have updatable firmware but so far no updates are available from the vendor.

The device is switched to a DFU bootloader only when the secret firmware pin is entered into the nitrokey-app tool. This cannot be automated.

GUID Generation

These devices use the standard USB DeviceInstanceId values, e.g.

  • USB\VID_20A0&PID_4109&REV_0001
  • USB\VID_20A0&PID_4109
  • USB\VID_20A0

Vendor ID Security

The vendor ID is set from the USB vendor, in this instance set to USB:0x20A0 in runtime mode and USB:0x03EB in bootloader mode.