Commit Graph

2513 Commits

Author SHA1 Message Date
Josh Soref
67deecde31
Lots of spelling fixes
Fixes:

* activate
* active
* additional
* and
* approaches
* attestation
* bootloader
* calculate
* capability
* children
* close
* compatible
* continuous
* convenience
* critical
* data
* delivery
* disabled
* disambiguate
* documented
* elapse
* emergency
* erasable
* expectations
* filesystem
* from
* haptic
* ignorable
* images
* infinity
* information
* information
* inhibited
* insufficient
* interrupt
* into
* limited
* management
* manifest
* maximum
* memory
* metadata
* mismatch
* model
* nonexistent
* not
* objects
* offset
* omissions
* ota
* past
* perform
* peripherals
* predictable
* product
* quarterly
* quirk
* quirks
* recognize
* release
* requests
* revocation
* sanitized
* sector
* status
* the
* the update
* timeout
* transfer
* transfers
* typically
* unspecified
* upgrade
* which
* will
* wireless
2022-12-29 13:57:31 +00:00
Richard Hughes
de5b2adaab Never allow using SHA-1 for checksum validation 2022-12-29 10:55:08 +00:00
Richard Hughes
eb1711bc22 Add X-GraphicsTablet category 2022-12-20 15:48:15 +00:00
Richard Hughes
9a5e18d573 Add X-FingerprintReader category 2022-12-20 15:48:15 +00:00
Richard Hughes
3cbfbe1e09 Skip the fwupdx64.efi BootXXXX entry when measuring system integrity
This is created before the UEFI capsule plugin adds the new BootXXXX entry on
NVRAM systems.
2022-12-20 12:34:48 +00:00
Richard Hughes
d4bfb0e53c Add a request ID for re-inserting the USB cable 2022-12-20 12:33:47 +00:00
Mario Limonciello
d09fb40ae2 trivial: don't comment out any daemon.conf keys by default
It's confusing to an end user if some keys are commented but others
aren't. The thought process is:

1) All keys are configured with their default value.
2) Commenting out a key should keep the default value.
3) Modifying a key sets a new value.
2022-12-19 15:01:33 -06:00
Mario Limonciello
b1ee46bc2a fu-config: Set defaults if conffile is missing
Line up the defaults for all keys in daemon.conf to match the code
behavior if the conffile was removed.
2022-12-19 15:01:33 -06:00
Richard Hughes
8bbc9056f6 trivial: Do not emit DeviceChanged before DeviceAdded 2022-12-19 16:49:50 +00:00
Richard Hughes
fbf4d3753b trivial: Use the correct integer type when getting the method caller 2022-12-15 17:27:22 +00:00
Richard Hughes
5bbcd8703b trivial: Fix an impossible-to-hit read of undefined data 2022-12-15 17:27:22 +00:00
Richard Hughes
153b566867 Fix the regression to find all device GUID
This regressed in 000e986dc8 but we did not
notice because devices with only one GUID (e.g. ESRT devices) still worked as
before. Fix the error handling to only abort if none of the GUIDs are found.
2022-12-15 08:02:17 +00:00
Richard Hughes
7a4fa63d0e Add a 'get-report-metadata' command to allow debugging metadata collection 2022-12-14 14:43:52 +00:00
Richard Hughes
2fcb6bd080 Add X-Dock and X-UsbDock update categories 2022-12-14 14:43:21 +00:00
Richard Hughes
2b8629afec Allow specifying OR parent requirements
For example:

    <requires>
      <!-- USB\VID_0451&PID_ACE1&OUID_0800000000000000 or
           USB\VID_0451&PID_ACE1&OUID_3300000000000000 -->
      <firmware depth="1">39cd2d79-f119-5e2b-ba57-0b101df5bebc|33c68fc5-fd3d-5cc8-951b-319368dfd6e8</firmware>
    </requires>
2022-12-14 14:14:08 +00:00
Richard Hughes
9c989190d4 trivial: Fix a recently introduced -Wunused-variable 2022-12-14 09:51:22 +00:00
Richard Hughes
882a7eec85 trivial: Fix warning when running fwupdtool --version 2022-12-13 13:47:35 +00:00
Richard Hughes
0d0ffa4708 Use prepared query when getting getting the bkc tags
There's no point parsing and optimizing this query 12 times at startup.
2022-12-13 13:47:22 +00:00
Richard Hughes
707b1ed6d5 trivial: Don't use xb_string_append_union() to join strings 2022-12-13 13:47:22 +00:00
Richard Hughes
970b4e3bda Use a prepared query when getting the remote ID
We do this a handful of times when calling GetDevices() and GetHistory() and
parsing the XPath expression each time is inefficient and kinda slow.
2022-12-13 13:47:22 +00:00
Richard Hughes
000e986dc8 Use the indexed query when getting releases for devices
This speeds up startup by ~9% on a machine with lots of devices attached.
2022-12-13 13:47:22 +00:00
Richard Hughes
18dac1885d Fix a tiny memory leak when parsing signed reports 2022-12-12 17:29:17 +00:00
Richard Hughes
f3fdb7f6a9 Only write devices.json once at startup, rather than for each device add
This means we do 15% less i/o at startup, which means we start a lot faster.
2022-12-12 15:27:55 +00:00
Richard Hughes
92057fe0f1 Do not filter in fwupdtool for ->attach() if specifying --force 2022-12-12 13:51:40 +00:00
Richard Hughes
9549cd3a18 Allow reinstalling on devices with only-version-upgrade set
All three devices with that flag support reinstalling the current version for testing.
2022-12-12 12:56:00 +00:00
Richard Hughes
7fa569f87d Add the fwupd version to the HSI result if the chassis is invalid
If the user uploads a report to the LVFS we don't currently get the fwupd
version data in this case. And it makes the LVFS unhappy.
2022-12-08 12:51:24 +00:00
Richard Hughes
60e83e1918 Load report data from /etc/lsb-release 2022-12-07 11:48:18 +00:00
Richard Hughes
189b4a413d Add the X-Gpu category for new hardware support 2022-12-06 17:30:54 +00:00
Richard Hughes
123fac737a trivial: Fix some g_prefix_error() calls to include the trailing space 2022-11-30 10:13:19 +00:00
Richard Hughes
e1fdc5218f trivial: Use #defines when building report metadata 2022-11-29 17:31:36 +00:00
Richard Hughes
3a8824d4e7 Add FwupdReport to expose the signed reports from QA teams
Some front end clients are going to be allow-listing updates based on what
the release was tested on, or by who the testing team was.

Export this data from each report when requested.
2022-11-29 16:55:55 +00:00
Richard Hughes
9d20464606 Add more metadata to the report attributes
This can be used in gnome-control-center when building the security report.

Fixes https://github.com/fwupd/fwupd/discussions/5262
2022-11-29 16:55:25 +00:00
Richard Hughes
a08f8b229c Only modify the historical metadata if a release is available
This was causing the SystemIntegrityOld metadata key to be overwritten and not
included in the upload. It is much better to be explicit rather than using the
default release, which may not be what the user actually upgraded to.
2022-11-29 09:05:16 +00:00
Richard Hughes
b521924b00 Make fu_device_get_release_default() match the parent semantics
In various places the code was checking if a release was set, but this would
always be false as the release was being auto-created. This was masking valid
bugs, and was confusing to have the superclass have different semantics to the
baseclass.
2022-11-29 09:05:16 +00:00
Richard Hughes
ae8e553cb2 Abstract out the polkit auth implementation 2022-11-29 09:04:09 +00:00
Richard Hughes
ef6536a424 Incorporate the device when merging in properties for GetDetails 2022-11-29 09:02:13 +00:00
Richard Hughes
fd7bec2e2f trivial: Fix a tiny leak when translating the security attr 2022-11-19 12:59:30 +00:00
Mario Limonciello
5d25661727 Add security attribute for OEM specific implementations of BIOS rollback protection 2022-11-18 14:28:13 +00:00
Richard Hughes
14ef2d17c6 trivial: Fix the tests on s390x 2022-11-10 12:22:45 +00:00
Richard Hughes
4c75d9a7dc Add more EFI keys to the integrity check list 2022-11-04 13:46:06 +00:00
Richard Hughes
c79e14d63d Flip around the FuDeviceInstanceFlags logic
Opt-ing 'in' to each both behaviours requires less mental gymnastics compared
to having one flag inverted.
2022-11-04 13:44:23 +00:00
Richard Hughes
1e7d741601 Check system integrity when installing UEFI updates
Recently we had an update that changed the system-defined Platform Key, and
we've certainly had updates in the past that changed the Boot#### variables.

Store some core ACPI and UEFI system integrity state from before and after the
update which can be used to mark (waivable) test failures on the LVFS.
2022-11-03 15:51:10 +00:00
Richard Hughes
c72ab882fe Save the new release metadata when using fu_history_modify_device() 2022-11-03 13:49:51 +00:00
Richard Hughes
b76c07f247 Correctly set the remote-id when using new-style xz-metadata
The new xz metadata does not include the non-standard checksum target tags, and
instead uses the standardized artifact checksum.

Support both metadata formats when setting the remote ID used for reports.
2022-11-03 13:44:02 +00:00
Richard Hughes
09eb3fc7f6 Fix a regression when using fwuptool install-blob with FMAP firmware
Only set _NO_SEARCH when specified, and do not piggy-back on the --force
command line option.

Fixes https://github.com/fwupd/fwupd/issues/5227
2022-11-02 15:01:23 +00:00
Richard Hughes
20761d2bf6 Record more host DMI data when submitting a report
We want the specific BiosVersion when adding entries to the uefi-dbx.quirk --
as often the dbx update will work only with newer BIOS versions.
2022-11-01 16:19:52 +00:00
Mario Limonciello
507b38dea9 trivial: fix a host security event message
the structure is old->new, so from tained to not tainted should be:
"Kernel is no longer tainted" not "Kernel is tainted"

Fixes: #5199
2022-10-26 09:41:33 -05:00
Richard Hughes
2c321ac29b Emit a critical warning if a plugin tries to use HWIDs in ->init()
The HWIDs are only available for ->setup() and ->coldplug().
2022-10-25 10:46:29 -05:00
Richard Hughes
ee8c63b56a trivial: Use the GError when loading hwinfo
No behaviour change as this always returns TRUE even if failing to load SMBIOS.
2022-10-25 10:46:29 -05:00
Richard Hughes
98622b690b trivial: Rename an internal function to reflect reality 2022-10-25 10:46:29 -05:00