fwupd/libfwupdplugin/fu-hwids.h
Michał Kopeć 0f75f55c72 Obtain firmware major and minor versions from SMBIOS
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
2021-06-09 15:45:10 +01:00

55 lines
1.8 KiB
C

/*
* Copyright (C) 2017 Richard Hughes <richard@hughsie.com>
*
* SPDX-License-Identifier: LGPL-2.1+
*/
#pragma once
#include <glib-object.h>
#include "fu-smbios.h"
#define FU_TYPE_HWIDS (fu_hwids_get_type ())
G_DECLARE_FINAL_TYPE (FuHwids, fu_hwids, FU, HWIDS, GObject)
#define FU_HWIDS_KEY_BASEBOARD_MANUFACTURER "BaseboardManufacturer"
#define FU_HWIDS_KEY_BASEBOARD_PRODUCT "BaseboardProduct"
#define FU_HWIDS_KEY_BIOS_MAJOR_RELEASE "BiosMajorRelease"
#define FU_HWIDS_KEY_BIOS_MINOR_RELEASE "BiosMinorRelease"
#define FU_HWIDS_KEY_BIOS_VENDOR "BiosVendor"
#define FU_HWIDS_KEY_BIOS_VERSION "BiosVersion"
#define FU_HWIDS_KEY_FIRMWARE_MAJOR_RELEASE "FirmwareMajorRelease"
#define FU_HWIDS_KEY_FIRMWARE_MINOR_RELEASE "FirmwareMinorRelease"
#define FU_HWIDS_KEY_ENCLOSURE_KIND "EnclosureKind"
#define FU_HWIDS_KEY_FAMILY "Family"
#define FU_HWIDS_KEY_MANUFACTURER "Manufacturer"
#define FU_HWIDS_KEY_PRODUCT_NAME "ProductName"
#define FU_HWIDS_KEY_PRODUCT_SKU "ProductSku"
FuHwids *fu_hwids_new (void);
GPtrArray *fu_hwids_get_keys (FuHwids *self);
const gchar *fu_hwids_get_value (FuHwids *self,
const gchar *key);
void fu_hwids_add_smbios_override (FuHwids *self,
const gchar *key,
const gchar *value);
const gchar *fu_hwids_get_replace_keys (FuHwids *self,
const gchar *key);
gchar *fu_hwids_get_replace_values (FuHwids *self,
const gchar *keys,
GError **error)
G_GNUC_WARN_UNUSED_RESULT;
gchar *fu_hwids_get_guid (FuHwids *self,
const gchar *keys,
GError **error)
G_GNUC_WARN_UNUSED_RESULT;
GPtrArray *fu_hwids_get_guids (FuHwids *self);
gboolean fu_hwids_has_guid (FuHwids *self,
const gchar *guid);
gboolean fu_hwids_setup (FuHwids *self,
FuSmbios *smbios,
GError **error)
G_GNUC_WARN_UNUSED_RESULT;