Richard Hughes
a70d005ea3
trivial: Use a better error message disambiguate an error message
2022-06-23 21:56:06 +01:00
Richard Hughes
db01004cd4
Copy the possible plugins when incorporating
...
I don't think this is required, but seems safer.
2022-06-14 21:01:57 +01:00
Richard Hughes
30aab6f564
Copy the instance ID strings when incorporating
...
Also, add a test.
2022-06-14 21:01:57 +01:00
Richard Hughes
599e67cd2c
trivial: More efficiently incorporate metadata
2022-06-14 21:01:57 +01:00
Richard Hughes
fc2da47b69
Remove fu_strtoull_full()
2022-06-14 14:36:52 -05:00
Richard Hughes
4105768a01
Remove the 'common' prefix when parsing version numbers
2022-06-14 14:36:52 -05:00
Richard Hughes
3e0a4dc1c3
Be smarter and include less header files per source file
2022-06-14 14:36:52 -05:00
Richard Hughes
fd9b9db5b3
Unexport fu_common_instance_id_strsafe()
...
We want plugins to use the instance ID builder instead now.
2022-06-14 14:36:52 -05:00
Richard Hughes
9d33c29e92
Split out the string helpers to a new source file
2022-06-14 14:36:52 -05:00
Richard Hughes
114a08f0b6
Allow quirk entries to add multiple items
2022-06-08 15:15:53 +01:00
Richard Hughes
4ee6cce9b8
Remove some duplicated unsafe API
2022-06-03 13:47:11 -05:00
Richard Hughes
a78f660363
Emit a critical warning when duplicating private flags
2022-05-26 11:55:32 +01:00
Richard Hughes
2319f19306
Allow a plugin to only use the RemoveDelay when waiting for replug
...
Only opt-in plugins that have been tested -- unconditionally enabling
this may cause regressions on devices like docks.
Fixes https://github.com/fwupd/fwupd/issues/4378
2022-05-24 19:52:04 +01:00
Richard Hughes
8ebad4ea75
Specify an enumerated problem when inhibiting devices
...
This allows us to make smarter policy decisions in the future on when
to show unavailable updates. It also means we can show translated
text in the frond-end clients.
Only problems the user can "fix" are enumerated. For example, opening
the laptop lid, or charging the device battery.
2022-05-19 13:09:03 -05:00
Richard Hughes
679628c091
Move the battery attributes down into libfwupd
...
This allows us to show the current value and the threshold on the CLI
and in tools like gnome-firmware.
2022-05-18 07:16:07 +01:00
Richard Hughes
f06061701c
Allow setting the quirk ID from the quirk entry
...
Allow the admin to override the inhibit(s) on devices using a similar
format to the other kvs. For instance, setting two different quirks and
clearing another could be done using:
Quirk = usb-blocked:Device defective,needs-reboot:Reboot system,not-authorized:
This also allows unsetting the quirk, which was impossible before as
`@value` was always non-NULL.
2022-05-17 16:54:01 +01:00
Richard Hughes
c0a668ab18
Allow the device to pause the polling when writing firmware
2022-05-10 18:51:17 +01:00
Richard Hughes
2d5186622c
Add FuProgress to ->prepare and ->cleanup
...
Some plugins were creating local versions (which were not attached to
the daemon progress in any way) as a workaround as they needed to do
actions that took a long time to complete.
2022-04-15 16:50:06 +01:00
Richard Hughes
58fd419fb8
Do not clear the instance-id hash during ->setup()
...
Some plugins rely on adding more instance IDs after the device has been
added.
2022-04-15 06:49:51 +01:00
Richard Hughes
0d7d8b3240
trivial: Always call va_end() even in the error path
2022-04-13 15:08:12 +01:00
Richard Hughes
2883b577dc
trivial: Fix a potential OOB write that can't actually happen
2022-04-13 15:08:12 +01:00
Richard Hughes
f4fb625fba
Set the context automatically when setting the device proxy
2022-04-11 15:36:13 +01:00
Sergii Dmytruk
4795ab3122
trivial: libfwupd,libfwupdplugin: fix typos in several comments
...
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2022-04-11 15:31:03 +01:00
Richard Hughes
b3e1b74d21
trivial: Use the proxy physical ID automatically
2022-03-31 09:59:33 +01:00
Richard Hughes
8b62bf6b64
Set the context in the right place more often
2022-03-16 09:18:29 +00:00
Richard Hughes
6b5d933e99
Do not show unconnected or unreachable devices in the client tools
...
Fixes https://github.com/fwupd/fwupd/issues/4378
2022-03-15 14:08:17 +00:00
Richard Hughes
b4e88bae49
trivial: Move the UNREACHABLE inhibit to common code
2022-03-15 11:29:00 +00:00
Richard Hughes
66cb93c4e2
trivial: Make clear sizes are in hex
2022-03-07 12:38:33 +00:00
Richard Hughes
94d572375f
trivial: Clarify the unit for the device remove delay
2022-03-03 11:26:17 +00:00
Richard Hughes
c4ca026294
Allow devices to build instance IDs more easily
...
Provide a device instance builder that allows plugins to easily
create multiple instance IDs based on parent attributes.
Also fix a lot of the instance ID orders, so that we add more generic
IDs first, and more specific IDs after.
2022-03-03 09:13:29 +00:00
Richard Hughes
adfef91731
trivial: Strip leading and trailing spaces from the vendor name
2022-02-24 17:07:44 +00:00
Richard Hughes
f3a13f89dd
Allow specifing the DeviceIntegrity flag from metadata
2022-02-22 19:12:06 +00:00
Richard Hughes
758d5d8c6f
Add a flag to indicate the device is signed or unsigned
...
Devices without either flag are unknown.
2022-02-22 19:12:06 +00:00
Richard Hughes
7ef94d7a31
vli: Skip probing the Dell DA300 device
...
Although 2109:2820 and 2109:0820 is the generic reference firmware,
firmware revision 3003 is specific to this device.
Fixes https://github.com/fwupd/fwupd/issues/4305
2022-02-22 17:22:13 +00:00
Richard Hughes
e21391f85d
trivial: Don't warn if the superclass is using custom flags
2022-02-22 13:28:48 +00:00
Richard Hughes
4cd8468722
trivial: Don't warn if overwriting with the same device name
2022-02-22 13:28:48 +00:00
Richard Hughes
eb6ba4eafb
trivial: Show the firmware GType in the device ->to_string()
2022-02-17 06:15:30 +00:00
Richard Hughes
f63080fbe2
Allow assigning issues to devices
...
This allows us to show in the tools if a device is currently affected
by a specific CVE. For instance, we could inform the user that a device
requires a critical firmware update that is being actively exploited.
Note, this also means we can show the user a firmware update is now
required, even though the firmware may not be available on the LVFS.
Also show the issue in the `fwupdmgr security` output, e.g.
There are devices with issues:
Samsung — MZVLB2T0HALB-000L7:
• CVE-2022-12345
• CVE-2022-54321
2022-02-16 14:50:29 +00:00
Richard Hughes
55bd4862d3
Try harder to convert to a version into a correct semver
...
This is really useful for the flashrom plugin.
2022-02-11 15:28:05 +00:00
Richard Hughes
2448660922
trivial: Print the RemoveDelay in the device debug string
2022-02-07 14:21:01 +00:00
Richard Hughes
24c041c3f8
trivial: Fix the range check for the RemoveDelay quirk
2022-02-07 14:21:01 +00:00
Richard Hughes
75b68ed9f9
trivial: Allow NULL @error for fu_device_retry_full()
...
The docs say `(nullable)` and it's the only function that seems to hard require
an error, for no good reason I can see.
2022-02-01 16:18:28 +00:00
Crag Wang
b728608baa
Show results when calling get-details if failing requirements
2022-01-19 12:10:52 +00:00
Richard Hughes
e17a107ce1
trivial: Cast the g_signal_connect() object to allow static analysis
...
This is useful when using https://gitlab.freedesktop.org/tartan/tartan
2022-01-03 22:46:23 +00:00
Richard Hughes
2e99055d1e
trivial: Add some more annotations for language bindings
2022-01-03 22:46:23 +00:00
Richard Hughes
c9a915a579
trivial: Print all the inhibits in the --verbose output
2021-12-29 19:18:26 +00:00
Richard Hughes
f76880182f
Do not allow UEFI updates when the lid is closed
...
Most vendors do not mirror the firmware update to an external display,
and some don't behave correctly when the lid is shut and the machine is
docked. Add this quirk just for Lenovo for now.
Fixes https://github.com/fwupd/firmware-lenovo/issues/181
2021-12-29 19:18:26 +00:00
Richard Hughes
8e6a3f6bbb
Allow devices to opt-in to metadata-provided vendor strings
2021-12-22 15:34:36 +00:00
Richard Hughes
b2048820aa
Copy private flags from donor devices
2021-12-13 15:21:51 -06:00
Richard Hughes
179f250b9a
trivial: Properly namespace _INTERNAL_FLAG_NO_AUTO_REMOVE
2021-12-10 17:25:54 +00:00