1. 22 Feb, 2021 1 commit
  2. 10 Feb, 2021 2 commits
    • Richard Hughes's avatar
      Merge the _udev_device() and _usb_device() vfuncs · 525f71f5
      Richard Hughes authored
      There are now two 'backends' of device plug/unplug events, and there is about
      to become three. Rather than just adding two more vfuncs for every backend type
      define common ones that all providers can use.
      
      Also fix up the existing in-tree plugins to use the new vfunc names and filter
      on the correct GType.
      525f71f5
    • Richard Hughes's avatar
      Remove fu_plugin_get_usb_context() · 9e9b73f3
      Richard Hughes authored
      It's unused, and only encourages plugins to do the wrong thing.
      9e9b73f3
  3. 28 Jan, 2021 1 commit
  4. 14 Jan, 2021 2 commits
  5. 12 Jan, 2021 1 commit
  6. 07 Jan, 2021 1 commit
  7. 06 Jan, 2021 2 commits
  8. 05 Jan, 2021 1 commit
  9. 04 Jan, 2021 2 commits
  10. 01 Dec, 2020 2 commits
  11. 30 Nov, 2020 1 commit
  12. 02 Nov, 2020 1 commit
  13. 20 Oct, 2020 1 commit
    • Mario Limonciello's avatar
      Show an error when a plugin is missing dependencies (Fixes: #1526) · c3a8173a
      Mario Limonciello authored
      ```
      $ sudo mv /usr/lib/x86_64-linux-gnu/libtss2-esys.so.0.0.0 /usr/lib/x86_64-linux-gnu/libtss2-esys.so.0.0.0.renamed
      $ sudo fwupdtool get-devices --plugins=uefi
      14:15:48:0735 FuEngine             cannot load: failed to open plugin /usr/local/lib/x86_64-linux-gnu/fwupd-plugins-3/libfu_plugin_uefi.so: libtss2-esys.so.0: cannot open shared object file: No such file or directory
      Loading…                 [-                                      ]14:15:48:0753 FuEngine             failed to update history database: device ID b6c08fb9e5384d9d101853cc1ca20cf0ce2df2e2 was not found
      Loading…                 [***************************************]
      WARNING: Plugin depdendencies missing
      No detected devices
      ```
      c3a8173a
  14. 13 Oct, 2020 1 commit
    • Richard Hughes's avatar
      Export FwupdPlugin so we can convey enumerated system errors to the end user · 7bcb8d43
      Richard Hughes authored
      For instance, we can tell the user that UEFI UpdateCapsule is disabled in the
      system firmware, or that efivarfs is not mounted. This is much better than
      creating "dummy" devices which are really just hacks around the problem because
      no better API existed. THe dummy devices cause as many problems as they solve.
      
      Plugins have to set FWUPD_PLUGIN_FLAG_USER_WARNING if a warning should be shown
      to the user, and only one warning will be shown of each failure type.
      
      It is expected that GUI clients like gnome-software and gnome-firmware would use
      this API to notify the user the localized message for why firmware updates are
      not being shown.
      
      Fixes https://github.com/fwupd/fwupd/issues/2456
      7bcb8d43
  15. 30 Sep, 2020 1 commit
  16. 28 Sep, 2020 1 commit
  17. 11 Sep, 2020 1 commit
  18. 22 Jun, 2020 5 commits
  19. 28 May, 2020 1 commit
  20. 19 May, 2020 1 commit
  21. 12 May, 2020 1 commit
    • Richard Hughes's avatar
      hsi: Abstract out the list of FwupdSecurityAttr objects for plugins · f58ac731
      Richard Hughes authored
      This exports FuSecurityAttrs into libfwupdplugin so that we can pass the plugins
      this object rather than a 'bare' GPtrArray. This greatly simplifies the object
      ownership, and also allows us to check the object type before adding.
      
      In the future we could also check for duplicate appstream IDs or missing
      properties at insertion time.
      
      This change also changes the fu_plugin_add_security_attrs() to not return an
      error. This forces the plugin to handle the error, storing the failure in the
      attribute itself.
      
      Only the plugin know if a missing file it needs to read indicates a runtime
      problem or a simple failure to obtain a specific HSI level.
      f58ac731
  22. 11 May, 2020 2 commits
    • Richard Hughes's avatar
    • Richard Hughes's avatar
      Add support for the Host Security ID · 196c6c69
      Richard Hughes authored
      The HSI specification assigns a simple text ID to the current state of firmware
      security. As new vulnerabilities are found, and as protection measures are
      updated, new requirements will be added to the required firmware behaviours for
      each HSI value.
      
      The HSI specification is currently incomplete and in active development, and
      so the --force flag is required in all command line tools. The current ID value
      will probably change on a given platform so please do not start using the result
      for any kind of compliance requirements.
      196c6c69
  23. 10 May, 2020 1 commit
  24. 29 Apr, 2020 1 commit
  25. 09 Apr, 2020 1 commit
    • Richard Hughes's avatar
      Do not conditionalize attach() and detach() on IS_BOOTLOADER · a8c6c024
      Richard Hughes authored
      This is nice in theory, until you need to look at the bootloader status of the
      parent, or of a different device entirely. Handle this in plugins for the few
      cases we care about and stop setting or clearing IS_BOOTLOADER manually just to
      get the vfuncs to be run.
      
      Note: I do not think we want to use cleanup() for attaching devices not in
      bootloader states -- as cleanup is only run at the end of the composite update.
      a8c6c024
  26. 28 Feb, 2020 1 commit
    • Mario Limonciello's avatar
      trivial: 1.3.9->1.4.0 · 96117d19
      Mario Limonciello authored
      We decided to branch at 1.3.8 and backport fix only things for 1_3_X.
      So bump all the new stuff to 1.4.0 (which will be next release)
      96117d19
  27. 21 Feb, 2020 1 commit
  28. 20 Feb, 2020 1 commit
  29. 19 Feb, 2020 1 commit
    • Richard Hughes's avatar
      Add a plugin vfunc to run after subclassed FuDevice creation · 0f66a023
      Richard Hughes authored
      Sometimes the plugin will want to influence the subclassed device, for instance
      by reading a per-plugin config file. At the moment there's no way to do this,
      as even _device_registered() is explicitly designed for devices *not* created
      by the plugin itself.
      
      Even if _device_registered() was changed to include the plugin creating the
      object it would still happen well after the device has done _probe() and/or
      _setup() and would probably be too late to do anything useful.
      0f66a023
  30. 14 Jan, 2020 1 commit