tree: 9454c2f8c428f67df6499051e48801fc04bc5254 [path history] [tgz]
  1. tests/
  2. fu-acpi-table.c
  3. fu-acpi-table.h
  4. fu-acpi-table.rs
  5. fu-archive-firmware.c
  6. fu-archive-firmware.h
  7. fu-archive.c
  8. fu-archive.h
  9. fu-archive.rs
  10. fu-backend-private.h
  11. fu-backend.c
  12. fu-backend.h
  13. fu-bios-setting.c
  14. fu-bios-setting.h
  15. fu-bios-settings-private.h
  16. fu-bios-settings.c
  17. fu-bios-settings.h
  18. fu-block-device.c
  19. fu-block-device.h
  20. fu-block-partition.c
  21. fu-block-partition.h
  22. fu-bluez-device.c
  23. fu-bluez-device.h
  24. fu-byte-array.c
  25. fu-byte-array.h
  26. fu-bytes.c
  27. fu-bytes.h
  28. fu-cab-firmware-private.h
  29. fu-cab-firmware.c
  30. fu-cab-firmware.h
  31. fu-cab-image.c
  32. fu-cab-image.h
  33. fu-cab.rs
  34. fu-cfi-device.c
  35. fu-cfi-device.h
  36. fu-cfi.rs
  37. fu-cfu-firmware.rs
  38. fu-cfu-offer.c
  39. fu-cfu-offer.h
  40. fu-cfu-payload.c
  41. fu-cfu-payload.h
  42. fu-chunk-array.c
  43. fu-chunk-array.h
  44. fu-chunk-private.h
  45. fu-chunk.c
  46. fu-chunk.h
  47. fu-common-darwin.c
  48. fu-common-freebsd.c
  49. fu-common-guid.c
  50. fu-common-guid.h
  51. fu-common-linux.c
  52. fu-common-private.h
  53. fu-common-windows.c
  54. fu-common.c
  55. fu-common.h
  56. fu-common.rs
  57. fu-composite-input-stream.c
  58. fu-composite-input-stream.h
  59. fu-config-private.h
  60. fu-config.c
  61. fu-config.h
  62. fu-context-helper.h
  63. fu-context-private.h
  64. fu-context.c
  65. fu-context.h
  66. fu-coswid-common.c
  67. fu-coswid-common.h
  68. fu-coswid-firmware.c
  69. fu-coswid-firmware.h
  70. fu-coswid.rs
  71. fu-crc-private.h
  72. fu-crc.c
  73. fu-crc.h
  74. fu-csv-entry.c
  75. fu-csv-entry.h
  76. fu-csv-firmware-private.h
  77. fu-csv-firmware.c
  78. fu-csv-firmware.h
  79. fu-darwin-efivars.c
  80. fu-darwin-efivars.h
  81. fu-device-event-private.h
  82. fu-device-event.c
  83. fu-device-event.h
  84. fu-device-locker.c
  85. fu-device-locker.h
  86. fu-device-metadata.h
  87. fu-device-poll-locker.h
  88. fu-device-private.h
  89. fu-device-progress.c
  90. fu-device-progress.h
  91. fu-device.c
  92. fu-device.h
  93. fu-device.rs
  94. fu-dfu-firmware-private.h
  95. fu-dfu-firmware.c
  96. fu-dfu-firmware.h
  97. fu-dfu-firmware.rs
  98. fu-dfuse-firmware.c
  99. fu-dfuse-firmware.h
  100. fu-dpaux-device.c
  101. fu-dpaux-device.h
  102. fu-dpaux.rs
  103. fu-drm-device-private.h
  104. fu-drm-device.c
  105. fu-drm-device.h
  106. fu-dummy-efivars.c
  107. fu-dummy-efivars.h
  108. fu-dump.c
  109. fu-dump.h
  110. fu-edid.c
  111. fu-edid.h
  112. fu-edid.rs
  113. fu-efi-common.c
  114. fu-efi-common.h
  115. fu-efi-device-path-list.c
  116. fu-efi-device-path-list.h
  117. fu-efi-device-path.c
  118. fu-efi-device-path.h
  119. fu-efi-file-path-device-path.c
  120. fu-efi-file-path-device-path.h
  121. fu-efi-file.c
  122. fu-efi-file.h
  123. fu-efi-filesystem.c
  124. fu-efi-filesystem.h
  125. fu-efi-ftw-store.c
  126. fu-efi-ftw-store.h
  127. fu-efi-hard-drive-device-path.c
  128. fu-efi-hard-drive-device-path.h
  129. fu-efi-load-option.c
  130. fu-efi-load-option.h
  131. fu-efi-lz77-decompressor.c
  132. fu-efi-lz77-decompressor.h
  133. fu-efi-section.c
  134. fu-efi-section.h
  135. fu-efi-signature-list.c
  136. fu-efi-signature-list.h
  137. fu-efi-signature-private.h
  138. fu-efi-signature.c
  139. fu-efi-signature.h
  140. fu-efi-variable-authentication2.c
  141. fu-efi-variable-authentication2.h
  142. fu-efi-volume.c
  143. fu-efi-volume.h
  144. fu-efi-vss-auth-variable.c
  145. fu-efi-vss-auth-variable.h
  146. fu-efi-vss2-variable-store.c
  147. fu-efi-vss2-variable-store.h
  148. fu-efi-x509-device.c
  149. fu-efi-x509-device.h
  150. fu-efi-x509-signature-private.h
  151. fu-efi-x509-signature.c
  152. fu-efi-x509-signature.h
  153. fu-efi.rs
  154. fu-efivars-private.h
  155. fu-efivars.c
  156. fu-efivars.h
  157. fu-elf-firmware.c
  158. fu-elf-firmware.h
  159. fu-elf.rs
  160. fu-endian.h
  161. fu-fdt-firmware.c
  162. fu-fdt-firmware.h
  163. fu-fdt-image.c
  164. fu-fdt-image.h
  165. fu-fdt.rs
  166. fu-firmware-common.c
  167. fu-firmware-common.h
  168. fu-firmware.c
  169. fu-firmware.h
  170. fu-firmware.rs
  171. fu-fit-firmware.c
  172. fu-fit-firmware.h
  173. fu-fmap-firmware.c
  174. fu-fmap-firmware.h
  175. fu-fmap.rs
  176. fu-freebsd-efivars.c
  177. fu-freebsd-efivars.h
  178. fu-fuzzer-firmware.c.in
  179. fu-fuzzer-generate.c.in
  180. fu-fuzzer-main.c
  181. fu-gcab.c
  182. fu-heci-device.c
  183. fu-heci-device.h
  184. fu-heci.rs
  185. fu-hid-descriptor.c
  186. fu-hid-descriptor.h
  187. fu-hid-device.c
  188. fu-hid-device.h
  189. fu-hid-report-item.c
  190. fu-hid-report-item.h
  191. fu-hid-report.c
  192. fu-hid-report.h
  193. fu-hid.rs
  194. fu-hidraw-device.c
  195. fu-hidraw-device.h
  196. fu-hidraw.rs
  197. fu-hwids-config.c
  198. fu-hwids-darwin.c
  199. fu-hwids-dmi.c
  200. fu-hwids-fdt.c
  201. fu-hwids-kenv.c
  202. fu-hwids-private.h
  203. fu-hwids-smbios.c
  204. fu-hwids.c
  205. fu-hwids.h
  206. fu-i2c-device.c
  207. fu-i2c-device.h
  208. fu-ifd-bios.c
  209. fu-ifd-bios.h
  210. fu-ifd-firmware.c
  211. fu-ifd-firmware.h
  212. fu-ifd-image.c
  213. fu-ifd-image.h
  214. fu-ifd.rs
  215. fu-ifwi-cpd-firmware.c
  216. fu-ifwi-cpd-firmware.h
  217. fu-ifwi-fpt-firmware.c
  218. fu-ifwi-fpt-firmware.h
  219. fu-ifwi.rs
  220. fu-ihex-firmware.c
  221. fu-ihex-firmware.h
  222. fu-ihex.rs
  223. fu-input-stream.c
  224. fu-input-stream.h
  225. fu-intel-thunderbolt-firmware.c
  226. fu-intel-thunderbolt-firmware.h
  227. fu-intel-thunderbolt-nvm.c
  228. fu-intel-thunderbolt-nvm.h
  229. fu-intel-thunderbolt.rs
  230. fu-io-channel.c
  231. fu-io-channel.h
  232. fu-io-channel.rs
  233. fu-ioctl-private.h
  234. fu-ioctl.c
  235. fu-ioctl.h
  236. fu-kenv.c
  237. fu-kenv.h
  238. fu-kernel-search-path-private.h
  239. fu-kernel-search-path.c
  240. fu-kernel-search-path.h
  241. fu-kernel.c
  242. fu-kernel.h
  243. fu-linear-firmware.c
  244. fu-linear-firmware.h
  245. fu-linux-efivars.c
  246. fu-linux-efivars.h
  247. fu-lzma-common.c
  248. fu-lzma-common.h
  249. fu-mei-device.c
  250. fu-mei-device.h
  251. fu-mem-private.h
  252. fu-mem.c
  253. fu-mem.h
  254. fu-msgpack-item-private.h
  255. fu-msgpack-item.c
  256. fu-msgpack-item.h
  257. fu-msgpack.c
  258. fu-msgpack.h
  259. fu-msgpack.rs
  260. fu-oprom-device.c
  261. fu-oprom-device.h
  262. fu-oprom-firmware.c
  263. fu-oprom-firmware.h
  264. fu-oprom.rs
  265. fu-output-stream.c
  266. fu-output-stream.h
  267. fu-partial-input-stream-private.h
  268. fu-partial-input-stream.c
  269. fu-partial-input-stream.h
  270. fu-path.c
  271. fu-path.h
  272. fu-pci-device.c
  273. fu-pci-device.h
  274. fu-pci.rs
  275. fu-pefile-firmware.c
  276. fu-pefile-firmware.h
  277. fu-pefile.rs
  278. fu-pkcs7.c
  279. fu-pkcs7.h
  280. fu-plugin-private.h
  281. fu-plugin-vfuncs.h
  282. fu-plugin.c
  283. fu-plugin.h
  284. fu-progress-private.h
  285. fu-progress.c
  286. fu-progress.h
  287. fu-progress.rs
  288. fu-quirks.c
  289. fu-quirks.h
  290. fu-rustgen-enum.c.in
  291. fu-rustgen-enum.h.in
  292. fu-rustgen-struct.c.in
  293. fu-rustgen-struct.h.in
  294. fu-rustgen.c.in
  295. fu-rustgen.h.in
  296. fu-sbatlevel-section.c
  297. fu-sbatlevel-section.h
  298. fu-sbatlevel-section.rs
  299. fu-security-attr.c
  300. fu-security-attr.h
  301. fu-security-attrs-private.h
  302. fu-security-attrs.c
  303. fu-security-attrs.h
  304. fu-self-test-device.c
  305. fu-self-test-device.h
  306. fu-self-test.c
  307. fu-self-test.rs
  308. fu-serio-device.c
  309. fu-serio-device.h
  310. fu-smbios-private.h
  311. fu-smbios.c
  312. fu-smbios.h
  313. fu-smbios.rs
  314. fu-srec-firmware.c
  315. fu-srec-firmware.h
  316. fu-string.c
  317. fu-string.h
  318. fu-sum.c
  319. fu-sum.h
  320. fu-udev-device-private.h
  321. fu-udev-device.c
  322. fu-udev-device.h
  323. fu-uefi-device-private.h
  324. fu-uefi-device.c
  325. fu-uefi-device.h
  326. fu-usb-bos-descriptor-private.h
  327. fu-usb-bos-descriptor.c
  328. fu-usb-bos-descriptor.h
  329. fu-usb-config-descriptor-private.h
  330. fu-usb-config-descriptor.c
  331. fu-usb-config-descriptor.h
  332. fu-usb-descriptor.c
  333. fu-usb-descriptor.h
  334. fu-usb-device-ds20.c
  335. fu-usb-device-ds20.h
  336. fu-usb-device-ds20.rs
  337. fu-usb-device-fw-ds20.c
  338. fu-usb-device-fw-ds20.h
  339. fu-usb-device-ms-ds20.c
  340. fu-usb-device-ms-ds20.h
  341. fu-usb-device-private.h
  342. fu-usb-device.c
  343. fu-usb-device.h
  344. fu-usb-endpoint-private.h
  345. fu-usb-endpoint.c
  346. fu-usb-endpoint.h
  347. fu-usb-hid-descriptor-private.h
  348. fu-usb-hid-descriptor.c
  349. fu-usb-hid-descriptor.h
  350. fu-usb-interface-private.h
  351. fu-usb-interface.c
  352. fu-usb-interface.h
  353. fu-usb.rs
  354. fu-uswid-firmware.c
  355. fu-uswid-firmware.h
  356. fu-uswid.rs
  357. fu-v4l-device.c
  358. fu-v4l-device.h
  359. fu-v4l.rs
  360. fu-version-common.c
  361. fu-version-common.h
  362. fu-volume-locker.c
  363. fu-volume-locker.h
  364. fu-volume-private.h
  365. fu-volume.c
  366. fu-volume.h
  367. fu-windows-efivars.c
  368. fu-windows-efivars.h
  369. fu-x509-certificate.c
  370. fu-x509-certificate.h
  371. fwupdplugin.h
  372. meson.build
  373. README.md
  374. rustgen.py
libfwupdplugin/README.md

libfwupdplugin

This library is only partially API and ABI stable. Keeping unused, unsafe and deprecated functions around forever is a maintenance burden and so symbols are removed when branching for new minor versions.

Use ./contrib/migrate.py to migrate up out-of-tree plugins to the new API.

Remember: Plugins should be upstream!

1.5.5

  • fu_common_is_cpu_intel(): Use fu_common_get_cpu_vendor() instead.
  • fu_firmware_strparse_uintXX(): Use fu_firmware_strparse_uintXX_safe() instead.
  • fu_plugin_get_usb_context(): Remove, as no longer required.
  • fu_plugin_set_usb_context(): Remove, as no longer required.
  • fu_plugin_runner_usb_device_added(): Use fu_plugin_runner_backend_device_added() instead.
  • fu_plugin_runner_udev_device_added(): Use fu_plugin_runner_backend_device_added() instead.
  • fu_plugin_runner_udev_device_changed(): Use fu_plugin_runner_backend_device_added() instead.
  • FuHidDevice->open(): Use the FuDevice superclass instead.
  • FuHidDevice->close(): Use the FuDevice superclass instead.
  • FuUsbDevice->probe(): Use the FuDevice superclass instead.
  • FuUsbDevice->open(): Use the FuDevice superclass instead.
  • FuUsbDevice->close(): Use the FuDevice superclass instead.
  • FuUdevDevice->to_string(): Use the FuDevice superclass instead.
  • FuUdevDevice->probe(): Use the FuDevice superclass instead.
  • FuUdevDevice->open(): Use the FuDevice superclass instead.
  • FuUdevDevice->close(): Use the FuDevice superclass instead.

1.5.6

  • fu_device_get_protocol(): Use fu_device_get_protocols() instead.
  • fu_device_set_protocol(): Use fu_device_add_protocol() instead.

1.6.2

  • fu_device_has_custom_flag(): Use fu_device_has_private_flag() instead.

1.6.3

  • fu_device_sleep_with_progress(): Use fu_progress_sleep() instead -- but be aware the unit of time has changed from seconds to milliseconds.
  • fu_device_get_status(): Use fu_progress_get_status() instead.
  • fu_device_set_status(): Use fu_progress_set_status() instead.
  • fu_device_get_progress(): Use fu_progress_get_percentage() instead.
  • fu_device_set_progress_full(): Use fu_progress_set_percentage_full() instead.
  • fu_device_set_progress(): Use fu_progress_set_steps(), fu_progress_add_step() and fu_progress_done() -- see the FuProgress docs for more details!

1.8.2

  • fu_udev_device_pread_full(): Use fu_udev_device_pread() instead -- as the latter now specifies the buffer length.
  • fu_udev_device_pread_full(): Use fu_udev_device_pwrite() instead -- as the latter now specifies the buffer length.
  • fu_udev_device_ioctl_full(): Use fu_udev_device_ioctl() instead -- as the latter now always specifies the timeout.
  • fu_udev_device_new_full(): Use fu_udev_device_new() instead -- as the latter always specifies the context.
  • fu_usb_device_new_full(): Use fu_usb_device_new() instead -- as the latter always specifies the context.
  • fu_device_new_with_context(): Use fu_device_new() instead -- as the latter always specifies the context.
  • fu_plugin_has_custom_flag(): Use fu_plugin_has_private_flag() instead.
  • fu_efivar_secure_boot_enabled_full(): Use fu_efivars_get_secure_boot() instead -- as the latter always specifies the error.
  • fu_progress_add_step(): Add a 4th parameter to the function to specify the nice name for the step, or NULL.
  • fu_backend_setup(): Now requires a FuProgress, although it can be ignored.
  • fu_backend_coldplug: Now requires a FuProgress, although it can be ignored.
  • FuPluginVfuncs->setup: Now requires a FuProgress, although it can be ignored.
  • FuPluginVfuncs->coldplug: Now requires a FuProgress, although it can be ignored.
  • fu_common_crc*: Use fu_crc prefix, i.e. remove the _common
  • fu_common_sum*: Use fu_sum prefix, i.e. remove the _common
  • fu_byte_array_set_size_full(): Use fu_byte_array_set_size instead -- as the latter now always specifies the fill char.
  • fu_common_string*: Use fu_string prefix, i.e. remove the _common
  • fu_common_bytes*: Use fu_bytes prefix, i.e. remove the _common
  • fu_common_set_contents_bytes(): Use fu_bytes_set_contents() instead
  • fu_common_get_contents_bytes(): Use fu_bytes_get_contents() instead
  • fu_common_read*: Use fu_memread prefix, i.e. replace the _common with _mem
  • fu_common_write*: Use fu_memwrite prefix, i.e. replace the _common with _mem
  • fu_common_bytes_compare_raw(): Use fu_memcmp_safe() instead
  • fu_common_spawn_sync(): Use g_spawn_sync() instead, or ideally not at all!
  • fu_common_extract_archive(): Use FuArchiveFirmware() instead.
  • fu_common_instance_id_strsafe(): Use fu_device_add_instance_strsafe() instead.
  • fu_common_kernel_locked_down(): Use fu_kernel_locked_down instead.
  • fu_common_check_kernel_version(): Use fu_kernel_check_version instead.
  • fu_common_get_firmware_search_path(): Use fu_kernel_get_firmware_search_path instead.
  • fu_common_set_firmware_search_path(): Use fu_kernel_set_firmware_search_path instead.
  • fu_common_reset_firmware_search_path(): Use fu_kernel_reset_firmware_search_path instead.
  • fu_common_firmware_builder(): You should not be using this.
  • fu_common_realpath(): You should not be using this.
  • fu_common_uri_get_scheme(): You should not be using this.
  • fu_common_dump*: Use fu_dump prefix, i.e. remove the _common
  • fu_common_error_array_get_best(): You should not be using this.
  • fu_common_cpuid(): Use fu_cpuid instead.
  • fu_common_get_cpu_vendor(): Use fu_cpu_get_vendor instead.
  • fu_common_vercmp_full(): Use fu_version_compare() instead.
  • fu_version_ensure_semver(): Use fu_version_ensure_semver() instead.
  • fu_common_version_from_uint*(): Use fu_version_from_uint*() instead.
  • fu_common_strtoull(): Use fu_strtoull() instead -- as the latter always specifies the error.
  • fu_smbios_to_string(): Use fu_firmware_to_string() instead -- as FuSmbios is a FuFirmware superclass.
  • fu_common_cab_build_silo(): You should not be using this.
  • fu_i2c_device_read_full(): Use fu_i2c_device_read instead.
  • fu_i2c_device_write_full(): Use fu_i2c_device_write instead.
  • fu_firmware_parse_bytes(): Remove the addr_end parameter, and ensure that offset is a gsize.

1.8.5

  • fu_volume_new_esp_default(): Use fu_context_get_esp_volumes() instead.
  • fu_plugin_set_secure_config_value(): Set FWUPD_PLUGIN_FLAG_SECURE_CONFIG and use fu_plugin_set_config_value()

1.8.7

  • fu_mei_device_connect(): Drop the explicit GUID parameter and match in the quirk file instead.
  • fu_context_get_smbios_data(): Add a GError

1.9.1

  • fu_plugin_get_config_value(): Add the default value as the last parameter
  • fu_plugin_get_config_value_boolean(): Add the default value as the last parameter

1.9.6

  • fu_security_attrs_get_by_appstream_id(): Add a GError

1.9.8

  • fu_device_build_instance_id_quirk": rename tofu_device_build_instance_id_full()`
  • fu_smbios_get_data(): Now returns a array of GBytes
  • fu_udev_device_get_fd(): Use fu_udev_device_get_io_channel() instead
  • fu_device_emit_request(): Add FuProgress and GError
  • fu_device_set_version_from_uint16(): Use fu_version_from_uint16() from FuDeviceClass->convert_version instead
  • fu_device_set_version_from_uint24(): Use fu_version_from_uint24() from FuDeviceClass->convert_version instead
  • fu_device_set_version_from_uint32(): Use fu_version_from_uint32() from FuDeviceClass->convert_version instead
  • fu_device_set_version_from_uint64(): Use fu_version_from_uint64() from FuDeviceClass->convert_version instead

2.0.0

  • fu_hid_device_parse_descriptor(): Use fu_hid_device_parse_descriptors() instead
  • fu_io_channel_new_file(): Add some FuIoChannelOpenFlags, e.g. FU_IO_CHANNEL_OPEN_FLAG_READ|FU_IO_CHANNEL_OPEN_FLAG_WRITE
  • fu_udev_device_set_flags(): Use fu_udev_device_add_flag() instead
  • fu_udev_device_get_slot_depth(): Use fu_udev_device_get_subsystem_depth() instead
  • fu_usb_device_is_open(): Use fu_device_has_private_flag(device, FU_DEVICE_PRIVATE_FLAG_IS_OPEN) instead
  • fu_udev_device_ioctl: Add some FuIoctlFlags, e.g. FU_IOCTL_FLAG_RETRY
  • fu_udev_device_write_sysfs(): Add a timeout in milliseconds
  • fu_udev_device_get_sysfs_attr_uint64(): Use fu_udev_device_read_sysfs() instead
  • fu_udev_device_get_sysfs_attr: Use fu_udev_device_read_sysfs() instead
  • fu_i2c_device_get_bus_number(): Use fu_udev_device_get_number() instead
  • fu_usb_device_set_open_retry_count(): Use FU_DEVICE_PRIVATE_FLAG_RETRY_OPEN instead
  • FWUPD_DEVICE_FLAG_INSTALL_PARENT_FIRST: Use FU_DEVICE_PRIVATE_FLAG_INSTALL_PARENT_FIRST instead
  • FWUPD_DEVICE_FLAG_REGISTERED: Use FU_DEVICE_PRIVATE_FLAG_REGISTERED instead
  • FWUPD_DEVICE_FLAG_ADD_COUNTERPART_GUIDS: Use FU_DEVICE_PRIVATE_FLAG_ADD_COUNTERPART_GUIDS instead
  • FWUPD_DEVICE_FLAG_USE_RUNTIME_VERSION: Use FU_DEVICE_PRIVATE_FLAG_USE_RUNTIME_VERSION instead
  • FWUPD_DEVICE_FLAG_SKIPS_RESTART: Use FU_DEVICE_PRIVATE_FLAG_SKIPS_RESTART instead
  • FU_UDEV_DEVICE_FLAG_VENDOR_FROM_PARENT: Use fu_device_get_backend_parent_with_subsystem() and copy properties instead
  • fu_udev_device_is_pci_base_cls: Put logic in FuPciDevice if needed, but consider what you are doing
  • fu_udev_device_get_cls: Put logic in FuPciDevice if needed, or use a quirk instead
  • fu_udev_device_get_vendor: Use fu_device_get_vid() instead
  • fu_udev_device_set_vendor: Use fu_device_set_vid() instead
  • fu_udev_device_get_model: Use fu_device_get_pid() instead
  • fu_udev_device_set_model: Use fu_device_set_pid() instead
  • fu_udev_device_get_subsystem_vendor: Use fu_pci_device_get_subsystem_vid() instead
  • fu_udev_device_get_subsystem_model: Use fu_pci_device_get_subsystem_pid() instead
  • fu_udev_device_get_revision: Use fu_pci_device_get_revision() instead
  • fu_udev_device_set_revision: Use fu_pci_device_set_revision() instead
  • fu_firmware_parse_full(): Use fu_firmware_parse_bytes() instead
  • fu_firmware_parse(): Use fu_firmware_parse_bytes() by adding an offset of 0x0

2.0.2

  • fu_chunk_array_new_from_bytes(): Add a page size, typically FU_CHUNK_PAGESZ_NONE
  • fu_chunk_array_new_from_stream(): Add a page size, typically FU_CHUNK_PAGESZ_NONE
  • fu_udev_device_ioctl(): Use fu_udev_device_ioctl_new() instead
  • FuUdevDeviceIoctlFlags: Use FuIoctlFlags instead

2.0.6

  • fu_kernel_get_firmware_search_path(): Use FuKernelSearchPathLocker instead.
  • fu_kernel_set_firmware_search_path(): Use FuKernelSearchPathLocker instead.
  • fu_kernel_reset_firmware_search_path(): Use FuKernelSearchPathLocker instead.

2.0.7

  • fu_device_write_firmware(): Use FuFirmware rather than a GInputStream.
  • fu_bytes_pad(): Add a data byte, typically 0xFF.
  • fu_smbios_get_string(): Add an expected structure length, typically FU_SMBIOS_STRUCTURE_LENGTH_ANY.
  • fu_smbios_get_integer(): Add an expected structure length, typically FU_SMBIOS_STRUCTURE_LENGTH_ANY.
  • fu_smbios_get_data(): Add an expected structure length, typically FU_SMBIOS_STRUCTURE_LENGTH_ANY.
  • fu_context_get_smbios_string(): Add an expected structure length, typically FU_SMBIOS_STRUCTURE_LENGTH_ANY.
  • fu_context_get_smbios_integer(): Add an expected structure length, typically FU_SMBIOS_STRUCTURE_LENGTH_ANY.
  • fu_context_get_smbios_data(): Add an expected structure length, typically FU_SMBIOS_STRUCTURE_LENGTH_ANY.

2.0.11

  • fu_device_read_firmware(): Add FuFirmwareParseFlags to fu_device_read_firmware.

2.0.12

  • Plugins that don't allow devices to function 100% through probe should use FWUPD_PLUGIN_FLAG_MUTABLE_ENUMERATION
  • fu_device_get_contents_bytes(): Add a maximum read size, typically G_MAXSIZE

2.0.14

  • fu_error_convert(): Use fwupd_error_convert() instead

2.0.17

  • fu_firmware_add_image_full(): Use fu_firmware_add_image() instead.
  • fu_firmware_add_image(): Add a GError and check the return value.

2.0.18

  • fu_input_stream_find(): Add a start offset, typically 0x0.