Commit Graph

2860 Commits

Author SHA1 Message Date
Richard Hughes
fcceb2f54a trivial: post release version bump 2016-06-13 13:37:17 +01:00
Richard Hughes
d06c3f0d4a Release fwupd 0.7.2 2016-06-13 13:30:03 +01:00
Richard Hughes
d0583ae340 Only claim the DFU interface when required
It appears that some expensive USB sound cards do not like the DFU interface
being claimed at the same time the kernel starts using a different endpoint.

I suspect this is a device bug or limitation in some reference implementation
somewhere, but seeing as we only need the interface when verifying or writing
new firmware the sensible thing to do is not claim it until required.

Fixes: https://github.com/hughsie/fwupd/issues/50
2016-06-08 16:42:49 +01:00
Richard Hughes
16261e3f76 libdfu: Show the DFU protocol version in 'dfu-tool list' 2016-06-08 15:14:06 +01:00
Richard Hughes
10d4c84fbd libdfu: Add DfuVersion enumerated values 2016-06-08 14:58:11 +01:00
Richard Hughes
11dc9ace51 trivial: Fix up some warnings spotted by new GCC 2016-06-07 10:11:00 +01:00
Richard Hughes
4580ed128b trivial: Prevent critical warning when verifying 2016-06-02 08:50:59 +01:00
Richard Hughes
0e3aae27f8 trivial: Add a tiny doc explaining what to change next soname break 2016-05-29 09:57:24 +01:00
Richard Hughes
7289a6b5f0 Add a GetDetailsLocal() method to eventually replace GetDetails()
This allows us to return multiple results from one file, for instance where the
firmware.cab file contains multiple metainfo.xml files.

This allows us to show all the entries in the firmware file, rather than
searching for the installed device that matches and falling back to just the
first listed item.
2016-05-29 09:57:24 +01:00
Richard Hughes
8ac07dcd1c trivial: Modularize the GetDetails call 2016-05-29 09:27:56 +01:00
Richard Hughes
c1a08c75d8 Support returning multiple GUIDs from GetDetails 2016-05-25 09:47:40 +01:00
Richard Hughes
b08fcebab4 trivial: Remove the now-unused .inf from the example cab file 2016-05-25 09:34:38 +01:00
Mario Limonciello
ff94ccde59 Enforce allowing providers to take away flash abilities
The flags for ALLOW_OFFLINE and ALLOW_ONLINE aren't currently used to
block a provider from flashing a file by hand.
2016-05-18 00:38:08 -05:00
Mario Limonciello
3321d7ea09 Test for a locked device when trying to install firmware update
Although other checks may also fail, the error shown when trying
to install a CAB that matches a GUID on the system that is locked
should be a message to unlock the device.
2016-05-18 00:37:59 -05:00
Mario Limonciello
f93c00dcf4 Re-read flags for a device after a provider's unlock routine is done
It's possible that the flags may have been altered in the provider
unlock routine.  These changes get discarded if not re-read.
2016-05-18 00:37:51 -05:00
Richard Hughes
043bc15f6d Allow metainfo files to match only specific revisions of devices
For example, matching on the 'USB\VID_0000&PID_0000&REV_0000' GUID rather than
the 'USB\VID_0000&PID_0000' GUID.

This is now possible as we can specify multiple GUIDs for a device.
2016-05-17 18:46:25 +01:00
Richard Hughes
feb8965d2e Add fu_device_get_alternate()
This daemon-only method allows a provider to associate one device with another.

Inspired by a patch by Mario Limonciello <mario_limonciello@dell.com>.
2016-05-17 16:27:59 +01:00
Richard Hughes
6561c8daf7 Only return updatable devices from GetDevices()
Fixes some of https://github.com/hughsie/fwupd/pull/47
2016-05-17 16:24:09 +01:00
Richard Hughes
2c553607e3 trivial: Fix gtk-doc wording of the device flags 2016-05-17 16:05:49 +01:00
Richard Hughes
99147f180b Allow devices to have multiple assigned GUIDs 2016-05-17 09:35:04 +01:00
Richard Hughes
069392c82c trivial: post release version bump 2016-05-13 14:53:54 +01:00
Richard Hughes
a9385b0cb8 Release fwupd 0.7.1 2016-05-13 14:52:32 +01:00
Richard Hughes
2fc5b88503 trivial: Only show the trust flags when there is an update 2016-05-13 14:48:20 +01:00
Mario Limonciello
a1cebd6e67 trivial: treat flashes_left as an unsigned integer 2016-05-11 15:21:22 -05:00
Mario Limonciello
71a5b98d30 Add support for a --force flag to override provider warnings
Under some circumstances a provider may want to prevent a user from
performing a flash without additional user interaction.

Providers can opt into this behavior by checking for
FWUPD_INSTALL_FLAG_FORCE in the update routine.
2016-05-10 15:41:16 -05:00
Mario Limonciello
74037577f8 src/Makefile.am: reshuffle so enableable bits are only referenced when on 2016-05-10 12:57:45 -05:00
Mario Limonciello
f81f42a84c Add support for a new device field "Flashes Left".
For devices that can report the number of flash cycles supported this field can
be used to prevent allowing the device to be flashed again.
2016-05-10 12:21:09 -05:00
Richard Hughes
21542abb0a Set the device description when parsing local firmware files
We were overwriting the update description, so we never noticed before.
2016-04-29 10:55:16 +01:00
Richard Hughes
662920ccf7 Show 'Unknow Device' in fwupdmgr when a device name is not set 2016-04-28 18:28:16 +01:00
Richard Hughes
dde7a2f6e6 Re-match devices when the AppStream metadata is updated
This allows us to notify clients watching for the 'supported' property for
new devices added to the LVFS.
2016-04-28 16:56:23 +01:00
Richard Hughes
422e866bc8 Match the AppStream metadata after a device has been adedd
This allows us to match specific properties by watching the ::DeviceChanged()
signal.
2016-04-28 16:56:23 +01:00
Richard Hughes
8ca33784ec Add device-added, device-removed and device-changed signals
This allows us to watch a specific device from client code without
re-requesting the device list on every Changed() signal.
2016-04-28 16:56:23 +01:00
Richard Hughes
cfc44fa0ae Add a 'monitor' debugging command for fwupdmgr
This allows us to watch for signals from the daemon.
2016-04-28 16:56:23 +01:00
Richard Hughes
1773e83060 Add fwupd_client_connect()
This exposes the client connection functionality so we can watch for signals
without being forced to perform an action beforehand.
2016-04-28 16:56:23 +01:00
Richard Hughes
4f4e1f3478 Add a 'supported' flag to the FuDevice
This is TRUE when the device has been found in the LVFS metadata.
2016-04-28 16:56:23 +01:00
Richard Hughes
37e9d777e5 Fix a critical warning when restarting the daemon
Emit the Status property with the correct type
2016-04-28 16:56:23 +01:00
Mario Limonciello
f4e0e88f7c Add summary and name field for Rival SteelSeries
Fixes: https://bugs.launchpad.net/ubuntu/+source/fwupd/+bug/1575248
2016-04-28 09:00:28 -05:00
Richard Hughes
654f6b82f3 Return all update descriptions newer than the installed version
Fixes: https://github.com/hughsie/fwupd/issues/45
2016-04-25 12:30:49 +01:00
Richard Hughes
3c694baf2d trivial: Make it clear the version from get-updates is an update version 2016-04-25 12:28:08 +01:00
Richard Hughes
1d3567056c trivial: Fix alignment of multi-line update descriptions 2016-04-25 12:17:42 +01:00
Richard Hughes
f76956be6f Make the device display name nicer 2016-04-15 09:02:28 +01:00
Richard Hughes
cfad8da070 Merge pull request #44 from hughsie/wip/superm1/reorder-get-devices
Re-order output of get-devices to be easier to read
2016-04-15 07:53:08 +01:00
Mario Limonciello
d9c234aeb3 trivial: update get-results error to be clearer 2016-04-14 13:44:01 -05:00
Mario Limonciello
72ec147259 Re-order output of get-devices to be easier to read 2016-04-14 13:10:34 -05:00
Mario Limonciello
68a462c9b6 Set the system's DMI product name as the DisplayName for UEFI
It might not be technically correct if multiple ESRT entries
are supported on the system, but these don't currently exist
and this is an improvement over it being set to null and
showing messages like:
"(null) has firmware updates"
2016-04-14 12:02:31 -05:00
Mario Limonciello
bfedfea62e Remove non-interactive pinentry setting from fu-keyring
691e02d652 [fu_keyring_setup] added a signing
server and configured to not have interactive pin entry
[gpgme_set_pinentry_mode]

This signing server was reverted in 5c35abb1a5
but the non-interactive pin entry setting for gpgme remained.

This functionality was only added in gnupg 2.1. If not running on gnupg 2.1
gpgme will give silent errors when importing keys.  The silent errors were
fixed in 0.7.0 in c5e8921dfd.  Unfortunately
that makes an implicit dependency on gnupg 2.1 to use fwupd.

This commit will allow older gnupg versions (< 2.1) to continue to work without
negative implications for fwupd.
2016-04-05 08:53:01 -05:00
Richard Hughes
903b029829 Fix big endian issues when reading and writing DFU and DfuSe files
Fixes https://github.com/hughsie/fwupd/issues/43
2016-04-03 10:46:42 +01:00
Richard Hughes
1b853eb971 Fix libdfu CRC check for big endian architectures
dfu_firmware_generate_crc32() generates a uint in the host byte order, the
proper fix is to write the checksum in LE format like the other fields.
2016-04-03 09:41:28 +01:00
Richard Hughes
540df18d97 Add dfu_image_get_element_default() 2016-04-03 09:38:23 +01:00
Mario Limonciello
54c09e9c43 Fix libdfu CRC check for big endian architectures
This is the first fix needed for #43, there are others yet.
2016-04-02 16:07:02 -05:00