diff --git a/contrib/ci/populate-bios-attr-translations.py b/contrib/ci/populate-bios-setting-translations.py similarity index 94% rename from contrib/ci/populate-bios-attr-translations.py rename to contrib/ci/populate-bios-setting-translations.py index 0cd53adcd..126ae7226 100755 --- a/contrib/ci/populate-bios-attr-translations.py +++ b/contrib/ci/populate-bios-setting-translations.py @@ -32,6 +32,6 @@ def populate_translations(path): if __name__ == "__main__": if len(sys.argv) != 2: - print("path to bios attributes directory required") + print("path to bios settings directory required") sys.exit(1) populate_translations(sys.argv[1]) diff --git a/contrib/generate-emulation.py b/contrib/generate-emulation.py index b2580ecf5..5af3ec767 100755 --- a/contrib/generate-emulation.py +++ b/contrib/generate-emulation.py @@ -25,7 +25,7 @@ def _minimize_json(json_str: str) -> str: nodes = json.loads(json_str) new_attrs: List[Dict[str, Any]] = [] new_devices: List[Dict[str, Any]] = [] - new_bios_attrs: List[Dict[str, Any]] = [] + new_bios_settings: List[Dict[str, Any]] = [] try: for attr in nodes["SecurityAttributes"]: new_attr: Dict[str, Any] = {} @@ -45,19 +45,19 @@ def _minimize_json(json_str: str) -> str: except KeyError: pass try: - for device in nodes["BiosAttributes"]: + for device in nodes["BiosSettings"]: new_attr: Dict[str, Any] = {} for key in device: if key not in ["Filename"]: new_attr[key] = device[key] - new_bios_attrs.append(new_attr) + new_bios_settings.append(new_attr) except KeyError: pass return json.dumps( { "SecurityAttributes": new_attrs, "Devices": new_devices, - "BiosAttributes": new_bios_attrs, + "BiosSettings": new_bios_settings, }, indent=2, separators=(",", " : "), @@ -99,13 +99,13 @@ def _get_host_devices_and_attrs() -> str: builder.end_object() builder.end_array() - # add BIOS attributes + # add BIOS settings try: - attrs = client.get_bios_attrs() + attrs = client.get_bios_settings() except GLib.GError as e: print("ignoring {}".format(e)) else: - builder.set_member_name("BiosAttributes") + builder.set_member_name("BiosSettings") builder.begin_array() for attr in attrs: builder.begin_object() diff --git a/data/bash-completion/fwupdmgr b/data/bash-completion/fwupdmgr index 4910d21c2..95646cf37 100644 --- a/data/bash-completion/fwupdmgr +++ b/data/bash-completion/fwupdmgr @@ -104,23 +104,23 @@ _show_modifiers() COMPREPLY+=( $(compgen -W '${_fwupdmgr_opts[@]}' -- "$cur") ) } -_show_bios_attrs() +_show_bios_settings() { if ! command -v jq &> /dev/null; then return 0 fi local attr - attr="$(command fwupdmgr get-bios-setting --json --no-authenticate 2>/dev/null | jq '.BiosAttributes | .[] | .Name')" + attr="$(command fwupdmgr get-bios-setting --json --no-authenticate 2>/dev/null | jq '.BiosSettings | .[] | .Name')" COMPREPLY+=( $(compgen -W "${attr}" -- "$cur") ) } -_show_bios_attrs_possible() +_show_bios_settings_possible() { if ! command -v jq &> /dev/null; then return 0 fi local attr - attr="$(command fwupdmgr get-bios-setting "$1" --json --no-authenticate 2>/dev/null | jq '.BiosAttributes | .[] | .BiosAttrPossibleValues | .[]')" + attr="$(command fwupdmgr get-bios-setting "$1" --json --no-authenticate 2>/dev/null | jq '.BiosSettings | .[] | .BiosSettingPossibleValues | .[]')" COMPREPLY+=( $(compgen -W "${attr}" -- "$cur") ) } @@ -174,8 +174,8 @@ _fwupdmgr() fi ;; get-bios-settings|get-bios-setting) - #bios attrs (no limit) - _show_bios_attrs + #bios settings (no limit) + _show_bios_settings _show_bios_get_modifiers return 0 ;; @@ -185,13 +185,13 @@ _fwupdmgr() return 0 fi count=$(($((args)) % 2)) - #allow setting a single bios attr at a time + #allow setting a single bios setting at a time if [[ $count == 0 ]]; then - _show_bios_attrs + _show_bios_settings fi #possible values (only works for enumeration though) if [[ $count == 1 ]]; then - _show_bios_attrs_possible "$prev" + _show_bios_settings_possible "$prev" return 0 fi _show_bios_set_modifiers diff --git a/libfwupd/fwupd-bios-attr-private.h b/libfwupd/fwupd-bios-attr-private.h deleted file mode 100644 index e1240601c..000000000 --- a/libfwupd/fwupd-bios-attr-private.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * Copyright (C) 2022 Mario Limonciello - * - * SPDX-License-Identifier: LGPL-2.1+ - */ - -#include - -#include "fwupd-bios-attr.h" - -#pragma once - -GVariant * -fwupd_bios_attr_to_variant(FwupdBiosAttr *self, gboolean trusted); -void -fwupd_bios_attr_to_json(FwupdBiosAttr *self, JsonBuilder *builder); -gboolean -fwupd_bios_attr_from_json(FwupdBiosAttr *self, JsonNode *json_node, GError **error); diff --git a/libfwupd/fwupd-bios-attr.h b/libfwupd/fwupd-bios-attr.h deleted file mode 100644 index 107d8762b..000000000 --- a/libfwupd/fwupd-bios-attr.h +++ /dev/null @@ -1,118 +0,0 @@ -/* - * Copyright (C) 2022 Mario Limonciello - * - * SPDX-License-Identifier: LGPL-2.1+ - */ - -#pragma once - -#include - -#include "fwupd-enums.h" - -G_BEGIN_DECLS - -#define FWUPD_TYPE_BIOS_ATTR (fwupd_bios_attr_get_type()) -G_DECLARE_DERIVABLE_TYPE(FwupdBiosAttr, fwupd_bios_attr, FWUPD, BIOS_ATTR, GObject) - -struct _FwupdBiosAttrClass { - GObjectClass parent_class; - /*< private >*/ - void (*_fwupd_reserved1)(void); - void (*_fwupd_reserved2)(void); - void (*_fwupd_reserved3)(void); - void (*_fwupd_reserved4)(void); - void (*_fwupd_reserved5)(void); - void (*_fwupd_reserved6)(void); - void (*_fwupd_reserved7)(void); -}; - -/* special attributes */ -#define FWUPD_BIOS_ATTR_PENDING_REBOOT "pending_reboot" -#define FWUPD_BIOS_ATTR_RESET_BIOS "reset_bios" -#define FWUPD_BIOS_ATTR_DEBUG_CMD "debug_cmd" - -/** - * FwupdBiosAttrKind: - * @FWUPD_BIOS_ATTR_KIND_UNKNOWN: BIOS attribute type is unknown - * @FWUPD_BIOS_ATTR_KIND_ENUMERATION: BIOS attribute that has enumerated possible values - * @FWUPD_BIOS_ATTR_KIND_INTEGER: BIOS attribute that is an integer - * @FWUPD_BIOS_ATTR_KIND_STRING: BIOS attribute that accepts a string - * - * The type of BIOS attribute. - **/ -typedef enum { - FWUPD_BIOS_ATTR_KIND_UNKNOWN = 0, /* Since: 1.8.4 */ - FWUPD_BIOS_ATTR_KIND_ENUMERATION = 1, /* Since: 1.8.4 */ - FWUPD_BIOS_ATTR_KIND_INTEGER = 2, /* Since: 1.8.4 */ - FWUPD_BIOS_ATTR_KIND_STRING = 3, /* Since: 1.8.4 */ - /*< private >*/ - FWUPD_BIOS_ATTR_KIND_LAST = 4 /* perhaps increased in the future */ -} FwupdBiosAttrKind; - -FwupdBiosAttr * -fwupd_bios_attr_new(const gchar *name, const gchar *path); -gchar * -fwupd_bios_attr_to_string(FwupdBiosAttr *self); - -gboolean -fwupd_bios_attr_get_read_only(FwupdBiosAttr *self); -void -fwupd_bios_attr_set_read_only(FwupdBiosAttr *self, gboolean val); - -guint64 -fwupd_bios_attr_get_upper_bound(FwupdBiosAttr *self); -guint64 -fwupd_bios_attr_get_lower_bound(FwupdBiosAttr *self); -guint64 -fwupd_bios_attr_get_scalar_increment(FwupdBiosAttr *self); - -void -fwupd_bios_attr_set_upper_bound(FwupdBiosAttr *self, guint64 val); -void -fwupd_bios_attr_set_lower_bound(FwupdBiosAttr *self, guint64 val); -void -fwupd_bios_attr_set_scalar_increment(FwupdBiosAttr *self, guint64 val); - -void -fwupd_bios_attr_set_kind(FwupdBiosAttr *self, FwupdBiosAttrKind type); -void -fwupd_bios_attr_set_name(FwupdBiosAttr *self, const gchar *name); -void -fwupd_bios_attr_set_path(FwupdBiosAttr *self, const gchar *path); -void -fwupd_bios_attr_set_description(FwupdBiosAttr *self, const gchar *description); - -FwupdBiosAttrKind -fwupd_bios_attr_get_kind(FwupdBiosAttr *self); -const gchar * -fwupd_bios_attr_get_name(FwupdBiosAttr *self); -const gchar * -fwupd_bios_attr_get_path(FwupdBiosAttr *self); -const gchar * -fwupd_bios_attr_get_description(FwupdBiosAttr *self); -const gchar * -fwupd_bios_attr_map_possible_value(FwupdBiosAttr *self, const gchar *key, GError **error); -gboolean -fwupd_bios_attr_has_possible_value(FwupdBiosAttr *self, const gchar *val); -void -fwupd_bios_attr_add_possible_value(FwupdBiosAttr *self, const gchar *possible_value); -GPtrArray * -fwupd_bios_attr_get_possible_values(FwupdBiosAttr *self); - -FwupdBiosAttr * -fwupd_bios_attr_from_variant(GVariant *value); -GPtrArray * -fwupd_bios_attr_array_from_variant(GVariant *value); - -const gchar * -fwupd_bios_attr_get_current_value(FwupdBiosAttr *self); -void -fwupd_bios_attr_set_current_value(FwupdBiosAttr *self, const gchar *value); - -const gchar * -fwupd_bios_attr_get_id(FwupdBiosAttr *self); -void -fwupd_bios_attr_set_id(FwupdBiosAttr *self, const gchar *id); - -G_END_DECLS diff --git a/libfwupd/fwupd-bios-setting-private.h b/libfwupd/fwupd-bios-setting-private.h new file mode 100644 index 000000000..741b0eae0 --- /dev/null +++ b/libfwupd/fwupd-bios-setting-private.h @@ -0,0 +1,18 @@ +/* + * Copyright (C) 2022 Mario Limonciello + * + * SPDX-License-Identifier: LGPL-2.1+ + */ + +#include + +#include "fwupd-bios-setting.h" + +#pragma once + +GVariant * +fwupd_bios_setting_to_variant(FwupdBiosSetting *self, gboolean trusted); +void +fwupd_bios_setting_to_json(FwupdBiosSetting *self, JsonBuilder *builder); +gboolean +fwupd_bios_setting_from_json(FwupdBiosSetting *self, JsonNode *json_node, GError **error); diff --git a/libfwupd/fwupd-bios-attr.c b/libfwupd/fwupd-bios-setting.c similarity index 50% rename from libfwupd/fwupd-bios-attr.c rename to libfwupd/fwupd-bios-setting.c index 8bc52ad50..90e97dd4a 100644 --- a/libfwupd/fwupd-bios-attr.c +++ b/libfwupd/fwupd-bios-setting.c @@ -6,22 +6,22 @@ #include "config.h" -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-common-private.h" #include "fwupd-enums-private.h" #include "fwupd-error.h" /** - * FwupdBiosAttr: + * FwupdBiosSetting: * - * A BIOS attribute that represents a setting in the firmware. + * A BIOS setting that represents a setting in the firmware. */ static void -fwupd_bios_attr_finalize(GObject *object); +fwupd_bios_setting_finalize(GObject *object); typedef struct { - FwupdBiosAttrKind kind; + FwupdBiosSettingKind kind; gchar *id; gchar *name; gchar *description; @@ -32,14 +32,14 @@ typedef struct { guint64 scalar_increment; gboolean read_only; GPtrArray *possible_values; -} FwupdBiosAttrPrivate; +} FwupdBiosSettingPrivate; -G_DEFINE_TYPE_WITH_PRIVATE(FwupdBiosAttr, fwupd_bios_attr, G_TYPE_OBJECT) -#define GET_PRIVATE(o) (fwupd_bios_attr_get_instance_private(o)) +G_DEFINE_TYPE_WITH_PRIVATE(FwupdBiosSetting, fwupd_bios_setting, G_TYPE_OBJECT) +#define GET_PRIVATE(o) (fwupd_bios_setting_get_instance_private(o)) /** - * fwupd_bios_attr_get_id - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_id + * @self: a #FwupdBiosSetting * * Gets the unique attribute identifier for this attribute/driver * @@ -48,26 +48,26 @@ G_DEFINE_TYPE_WITH_PRIVATE(FwupdBiosAttr, fwupd_bios_attr, G_TYPE_OBJECT) * Since: 1.8.4 **/ const gchar * -fwupd_bios_attr_get_id(FwupdBiosAttr *self) +fwupd_bios_setting_get_id(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); return priv->id; } /** - * fwupd_bios_attr_set_id - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_id + * @self: a #FwupdBiosSetting * * Sets the unique attribute identifier for this attribute * * Since: 1.8.4 **/ void -fwupd_bios_attr_set_id(FwupdBiosAttr *self, const gchar *id) +fwupd_bios_setting_set_id(FwupdBiosSetting *self, const gchar *id) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); /* not changed */ if (g_strcmp0(priv->id, id) == 0) @@ -78,26 +78,26 @@ fwupd_bios_attr_set_id(FwupdBiosAttr *self, const gchar *id) } /** - * fwupd_bios_attr_get_read_only: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_read_only: + * @self: a #FwupdBiosSetting * - * Determines if a BIOS attribute is read only + * Determines if a BIOS setting is read only * * Returns: gboolean * * Since: 1.8.4 **/ gboolean -fwupd_bios_attr_get_read_only(FwupdBiosAttr *self) +fwupd_bios_setting_get_read_only(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), FALSE); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), FALSE); return priv->read_only; } /** - * fwupd_bios_attr_set_read_only: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_read_only: + * @self: a #FwupdBiosSetting * * Configures whether an attribute is read only * maximum length for string attributes. @@ -106,16 +106,16 @@ fwupd_bios_attr_get_read_only(FwupdBiosAttr *self) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_read_only(FwupdBiosAttr *self, gboolean val) +fwupd_bios_setting_set_read_only(FwupdBiosSetting *self, gboolean val) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); priv->read_only = val; } /** - * fwupd_bios_attr_get_lower_bound: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_lower_bound: + * @self: a #FwupdBiosSetting * * Gets the lower bound for integer attributes or * minimum length for string attributes. @@ -125,16 +125,16 @@ fwupd_bios_attr_set_read_only(FwupdBiosAttr *self, gboolean val) * Since: 1.8.4 **/ guint64 -fwupd_bios_attr_get_lower_bound(FwupdBiosAttr *self) +fwupd_bios_setting_get_lower_bound(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), 0); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), 0); return priv->lower_bound; } /** - * fwupd_bios_attr_get_upper_bound: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_upper_bound: + * @self: a #FwupdBiosSetting * * Gets the upper bound for integer attributes or * maximum length for string attributes. @@ -144,16 +144,16 @@ fwupd_bios_attr_get_lower_bound(FwupdBiosAttr *self) * Since: 1.8.4 **/ guint64 -fwupd_bios_attr_get_upper_bound(FwupdBiosAttr *self) +fwupd_bios_setting_get_upper_bound(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), 0); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), 0); return priv->upper_bound; } /** - * fwupd_bios_attr_get_scalar_increment: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_scalar_increment: + * @self: a #FwupdBiosSetting * * Gets the scalar increment used for integer attributes. * @@ -162,16 +162,16 @@ fwupd_bios_attr_get_upper_bound(FwupdBiosAttr *self) * Since: 1.8.4 **/ guint64 -fwupd_bios_attr_get_scalar_increment(FwupdBiosAttr *self) +fwupd_bios_setting_get_scalar_increment(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), 0); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), 0); return priv->scalar_increment; } /** - * fwupd_bios_attr_set_upper_bound: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_upper_bound: + * @self: a #FwupdBiosSetting * @val: a guint64 value to set bound to * * Sets the upper bound used for BIOS integer attributes or max @@ -180,16 +180,16 @@ fwupd_bios_attr_get_scalar_increment(FwupdBiosAttr *self) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_upper_bound(FwupdBiosAttr *self, guint64 val) +fwupd_bios_setting_set_upper_bound(FwupdBiosSetting *self, guint64 val) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); priv->upper_bound = val; } /** - * fwupd_bios_attr_set_lower_bound: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_lower_bound: + * @self: a #FwupdBiosSetting * @val: a guint64 value to set bound to * * Sets the lower bound used for BIOS integer attributes or max @@ -198,16 +198,16 @@ fwupd_bios_attr_set_upper_bound(FwupdBiosAttr *self, guint64 val) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_lower_bound(FwupdBiosAttr *self, guint64 val) +fwupd_bios_setting_set_lower_bound(FwupdBiosSetting *self, guint64 val) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); priv->lower_bound = val; } /** - * fwupd_bios_attr_set_scalar_increment: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_scalar_increment: + * @self: a #FwupdBiosSetting * @val: a guint64 value to set increment to * * Sets the scalar increment used for BIOS integer attributes. @@ -215,51 +215,51 @@ fwupd_bios_attr_set_lower_bound(FwupdBiosAttr *self, guint64 val) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_scalar_increment(FwupdBiosAttr *self, guint64 val) +fwupd_bios_setting_set_scalar_increment(FwupdBiosSetting *self, guint64 val) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); priv->scalar_increment = val; } /** - * fwupd_bios_attr_get_kind: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_kind: + * @self: a #FwupdBiosSetting * - * Gets the BIOS attribute type used by the kernel interface. + * Gets the BIOS setting type used by the kernel interface. * - * Returns: the bios attribute type, or %FWUPD_BIOS_ATTR_KIND_UNKNOWN if unset. + * Returns: the bios settingibute type, or %FWUPD_BIOS_SETTING_KIND_UNKNOWN if unset. * * Since: 1.8.4 **/ -FwupdBiosAttrKind -fwupd_bios_attr_get_kind(FwupdBiosAttr *self) +FwupdBiosSettingKind +fwupd_bios_setting_get_kind(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), 0); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), 0); return priv->kind; } /** - * fwupd_bios_attr_set_kind: - * @self: a #FwupdBiosAttr - * @type: a bios attribute type, e.g. %FWUPD_BIOS_ATTR_KIND_ENUMERATION + * fwupd_bios_setting_set_kind: + * @self: a #FwupdBiosSetting + * @type: a bios settingibute type, e.g. %FWUPD_BIOS_SETTING_KIND_ENUMERATION * - * Sets the BIOS attribute type used by the kernel interface. + * Sets the BIOS setting type used by the kernel interface. * * Since: 1.8.4 **/ void -fwupd_bios_attr_set_kind(FwupdBiosAttr *self, FwupdBiosAttrKind type) +fwupd_bios_setting_set_kind(FwupdBiosSetting *self, FwupdBiosSettingKind type) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); priv->kind = type; } /** - * fwupd_bios_attr_set_name: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_name: + * @self: a #FwupdBiosSetting * @name: (nullable): the attribute name * * Sets the attribute name provided by a kernel driver. @@ -267,10 +267,10 @@ fwupd_bios_attr_set_kind(FwupdBiosAttr *self, FwupdBiosAttrKind type) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_name(FwupdBiosAttr *self, const gchar *name) +fwupd_bios_setting_set_name(FwupdBiosSetting *self, const gchar *name) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); /* not changed */ if (g_strcmp0(priv->name, name) == 0) @@ -281,8 +281,8 @@ fwupd_bios_attr_set_name(FwupdBiosAttr *self, const gchar *name) } /** - * fwupd_bios_attr_set_path: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_path: + * @self: a #FwupdBiosSetting * @path: (nullable): the path the driver providing the attribute uses * * Sets path to the attribute. @@ -290,10 +290,10 @@ fwupd_bios_attr_set_name(FwupdBiosAttr *self, const gchar *name) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_path(FwupdBiosAttr *self, const gchar *path) +fwupd_bios_setting_set_path(FwupdBiosSetting *self, const gchar *path) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); /* not changed */ if (g_strcmp0(priv->path, path) == 0) @@ -304,8 +304,8 @@ fwupd_bios_attr_set_path(FwupdBiosAttr *self, const gchar *path) } /** - * fwupd_bios_attr_set_description: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_description: + * @self: a #FwupdBiosSetting * @description: (nullable): the attribute description * * Sets the attribute description. @@ -313,10 +313,10 @@ fwupd_bios_attr_set_path(FwupdBiosAttr *self, const gchar *path) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_description(FwupdBiosAttr *self, const gchar *description) +fwupd_bios_setting_set_description(FwupdBiosSetting *self, const gchar *description) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); /* not changed */ if (g_strcmp0(priv->description, description) == 0) @@ -328,7 +328,7 @@ fwupd_bios_attr_set_description(FwupdBiosAttr *self, const gchar *description) /* determine if key is supposed to be positive */ static gboolean -fu_bios_attr_key_is_positive(const gchar *key) +fu_bios_setting_key_is_positive(const gchar *key) { if (g_strrstr(key, "enable")) return TRUE; @@ -343,7 +343,7 @@ fu_bios_attr_key_is_positive(const gchar *key) /* determine if key is supposed to be negative */ static gboolean -fu_bios_attr_key_is_negative(const gchar *key) +fu_bios_setting_key_is_negative(const gchar *key) { if (g_strrstr(key, "disable")) return TRUE; @@ -357,32 +357,32 @@ fu_bios_attr_key_is_negative(const gchar *key) } /** - * fwupd_bios_attr_map_possible_value: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_map_possible_value: + * @self: a #FwupdBiosSetting * @key: the string to try to map * @error: (nullable): optional return location for an error * - * Attempts to map a user provided string into strings that a #FwupdBiosAttr can + * Attempts to map a user provided string into strings that a #FwupdBiosSetting can * support. The following heuristics are used: * - Ignore case sensitivity - * - Map obviously "positive" phrases into a value that turns on the #FwupdBiosAttr - * - Map obviously "negative" phrases into a value that turns off the #FwupdBiosAttr + * - Map obviously "positive" phrases into a value that turns on the #FwupdBiosSetting + * - Map obviously "negative" phrases into a value that turns off the #FwupdBiosSetting * * Returns: (transfer none): the possible value that maps or NULL if none if found * * Since: 1.8.4 **/ const gchar * -fwupd_bios_attr_map_possible_value(FwupdBiosAttr *self, const gchar *key, GError **error) +fwupd_bios_setting_map_possible_value(FwupdBiosSetting *self, const gchar *key, GError **error) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); gboolean positive_key = FALSE; gboolean negative_key = FALSE; g_autofree gchar *result = NULL; g_autofree gchar *lower_key = NULL; - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); - g_return_val_if_fail(priv->kind == FWUPD_BIOS_ATTR_KIND_ENUMERATION, NULL); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); + g_return_val_if_fail(priv->kind == FWUPD_BIOS_SETTING_KIND_ENUMERATION, NULL); if (priv->possible_values->len == 0) { g_set_error(error, @@ -394,8 +394,8 @@ fwupd_bios_attr_map_possible_value(FwupdBiosAttr *self, const gchar *key, GError } lower_key = g_utf8_strdown(key, -1); - positive_key = fu_bios_attr_key_is_positive(lower_key); - negative_key = fu_bios_attr_key_is_negative(lower_key); + positive_key = fu_bios_setting_key_is_positive(lower_key); + negative_key = fu_bios_setting_key_is_negative(lower_key); for (guint i = 0; i < priv->possible_values->len; i++) { const gchar *possible = g_ptr_array_index(priv->possible_values, i); g_autofree gchar *lower_possible = g_utf8_strdown(possible, -1); @@ -406,8 +406,8 @@ fwupd_bios_attr_map_possible_value(FwupdBiosAttr *self, const gchar *key, GError if (g_strcmp0(lower_possible, lower_key) == 0) return possible; /* fuzzy match */ - positive_possible = fu_bios_attr_key_is_positive(lower_possible); - negative_possible = fu_bios_attr_key_is_negative(lower_possible); + positive_possible = fu_bios_setting_key_is_positive(lower_possible); + negative_possible = fu_bios_setting_key_is_negative(lower_possible); if ((positive_possible && positive_key) || (negative_possible && negative_key)) return possible; } @@ -421,8 +421,8 @@ fwupd_bios_attr_map_possible_value(FwupdBiosAttr *self, const gchar *key, GError } /** - * fwupd_bios_attr_has_possible_value: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_has_possible_value: + * @self: a #FwupdBiosSetting * @val: the possible value string * * Finds out if a specific possible value was added to the attribute. @@ -432,10 +432,10 @@ fwupd_bios_attr_map_possible_value(FwupdBiosAttr *self, const gchar *key, GError * Since: 1.8.4 **/ gboolean -fwupd_bios_attr_has_possible_value(FwupdBiosAttr *self, const gchar *val) +fwupd_bios_setting_has_possible_value(FwupdBiosSetting *self, const gchar *val) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), FALSE); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), FALSE); g_return_val_if_fail(val != NULL, FALSE); if (priv->possible_values->len == 0) @@ -450,8 +450,8 @@ fwupd_bios_attr_has_possible_value(FwupdBiosAttr *self, const gchar *val) } /** - * fwupd_bios_attr_add_possible_value: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_add_possible_value: + * @self: a #FwupdBiosSetting * @possible_value: the possible * * Adds a possible value to the attribute. This indicates one of the values the @@ -460,19 +460,19 @@ fwupd_bios_attr_has_possible_value(FwupdBiosAttr *self, const gchar *val) * Since: 1.8.4 **/ void -fwupd_bios_attr_add_possible_value(FwupdBiosAttr *self, const gchar *possible_value) +fwupd_bios_setting_add_possible_value(FwupdBiosSetting *self, const gchar *possible_value) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); if (priv->possible_values->len > 0 && - fwupd_bios_attr_has_possible_value(self, possible_value)) + fwupd_bios_setting_has_possible_value(self, possible_value)) return; g_ptr_array_add(priv->possible_values, g_strdup(possible_value)); } /** - * fwupd_bios_attr_get_possible_values: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_possible_values: + * @self: a #FwupdBiosSetting * * Find all possible values for an enumeration attribute. * @@ -481,17 +481,17 @@ fwupd_bios_attr_add_possible_value(FwupdBiosAttr *self, const gchar *possible_va * Since: 1.8.4 **/ GPtrArray * -fwupd_bios_attr_get_possible_values(FwupdBiosAttr *self) +fwupd_bios_setting_get_possible_values(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); - g_return_val_if_fail(priv->kind == FWUPD_BIOS_ATTR_KIND_ENUMERATION, NULL); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); + g_return_val_if_fail(priv->kind == FWUPD_BIOS_SETTING_KIND_ENUMERATION, NULL); return priv->possible_values; } /** - * fwupd_bios_attr_get_name: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_name: + * @self: a #FwupdBiosSetting * * Gets the attribute name. * @@ -500,16 +500,16 @@ fwupd_bios_attr_get_possible_values(FwupdBiosAttr *self) * Since: 1.8.4 **/ const gchar * -fwupd_bios_attr_get_name(FwupdBiosAttr *self) +fwupd_bios_setting_get_name(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); return priv->name; } /** - * fwupd_bios_attr_get_path: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_path: + * @self: a #FwupdBiosSetting * * Gets the path for the driver providing the attribute. * @@ -518,16 +518,16 @@ fwupd_bios_attr_get_name(FwupdBiosAttr *self) * Since: 1.8.4 **/ const gchar * -fwupd_bios_attr_get_path(FwupdBiosAttr *self) +fwupd_bios_setting_get_path(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); return priv->path; } /** - * fwupd_bios_attr_get_description: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_description: + * @self: a #FwupdBiosSetting * * Gets the attribute description which is provided by some drivers to explain * what they change. @@ -537,16 +537,16 @@ fwupd_bios_attr_get_path(FwupdBiosAttr *self) * Since: 1.8.4 **/ const gchar * -fwupd_bios_attr_get_description(FwupdBiosAttr *self) +fwupd_bios_setting_get_description(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); return priv->description; } /** - * fwupd_bios_attr_get_current_value: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_get_current_value: + * @self: a #FwupdBiosSetting * * Gets the string representation of the current_value stored in an attribute * from the kernel. This value is cached; so changing it outside of fwupd may @@ -557,16 +557,16 @@ fwupd_bios_attr_get_description(FwupdBiosAttr *self) * Since: 1.8.4 **/ const gchar * -fwupd_bios_attr_get_current_value(FwupdBiosAttr *self) +fwupd_bios_setting_get_current_value(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); return priv->current_value; } /** - * fwupd_bios_attr_set_current_value: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_set_current_value: + * @self: a #FwupdBiosSetting * @value: The string to set an attribute to * * Sets the string stored in an attribute. @@ -575,9 +575,9 @@ fwupd_bios_attr_get_current_value(FwupdBiosAttr *self) * Since: 1.8.4 **/ void -fwupd_bios_attr_set_current_value(FwupdBiosAttr *self, const gchar *value) +fwupd_bios_setting_set_current_value(FwupdBiosSetting *self, const gchar *value) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); /* not changed */ if (g_strcmp0(priv->current_value, value) == 0) @@ -588,45 +588,45 @@ fwupd_bios_attr_set_current_value(FwupdBiosAttr *self, const gchar *value) } static gboolean -fwupd_bios_attr_trusted(FwupdBiosAttr *self, gboolean trusted) +fwupd_bios_setting_trusted(FwupdBiosSetting *self, gboolean trusted) { - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), FALSE); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), FALSE); if (trusted) return TRUE; - if (g_strcmp0(fwupd_bios_attr_get_name(self), "pending_reboot") == 0) + if (g_strcmp0(fwupd_bios_setting_get_name(self), "pending_reboot") == 0) return TRUE; return FALSE; } /** - * fwupd_bios_attr_to_variant: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_to_variant: + * @self: a #FwupdBiosSetting * @trusted: whether the caller should receive trusted values * - * Serialize the bios attribute. + * Serialize the bios settingibute. * * Returns: the serialized data, or %NULL for error. * * Since: 1.8.4 **/ GVariant * -fwupd_bios_attr_to_variant(FwupdBiosAttr *self, gboolean trusted) +fwupd_bios_setting_to_variant(FwupdBiosSetting *self, gboolean trusted) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); GVariantBuilder builder; - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); g_variant_builder_init(&builder, G_VARIANT_TYPE_VARDICT); g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_TYPE, + FWUPD_RESULT_KEY_BIOS_SETTING_TYPE, g_variant_new_uint64(priv->kind)); if (priv->id != NULL) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_ID, + FWUPD_RESULT_KEY_BIOS_SETTING_ID, g_variant_new_string(priv->id)); } if (priv->name != NULL) { @@ -649,31 +649,31 @@ fwupd_bios_attr_to_variant(FwupdBiosAttr *self, gboolean trusted) } g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY, + FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY, g_variant_new_boolean(priv->read_only)); - if (fwupd_bios_attr_trusted(self, trusted)) { + if (fwupd_bios_setting_trusted(self, trusted)) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, g_variant_new_string(priv->current_value)); } - if (priv->kind == FWUPD_BIOS_ATTR_KIND_INTEGER || - priv->kind == FWUPD_BIOS_ATTR_KIND_STRING) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_INTEGER || + priv->kind == FWUPD_BIOS_SETTING_KIND_STRING) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND, + FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND, g_variant_new_uint64(priv->lower_bound)); g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND, + FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND, g_variant_new_uint64(priv->upper_bound)); - if (priv->kind == FWUPD_BIOS_ATTR_KIND_INTEGER) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_INTEGER) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT, + FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT, g_variant_new_uint64(priv->scalar_increment)); } - } else if (priv->kind == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { + } else if (priv->kind == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { if (priv->possible_values->len > 0) { g_autofree const gchar **strv = g_new0(const gchar *, priv->possible_values->len + 1); @@ -682,7 +682,7 @@ fwupd_bios_attr_to_variant(FwupdBiosAttr *self, gboolean trusted) (const gchar *)g_ptr_array_index(priv->possible_values, i); g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES, + FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES, g_variant_new_strv(strv, -1)); } } @@ -690,70 +690,70 @@ fwupd_bios_attr_to_variant(FwupdBiosAttr *self, gboolean trusted) } static void -fwupd_bios_attr_from_key_value(FwupdBiosAttr *self, const gchar *key, GVariant *value) +fwupd_bios_setting_from_key_value(FwupdBiosSetting *self, const gchar *key, GVariant *value) { - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_TYPE) == 0) { - fwupd_bios_attr_set_kind(self, g_variant_get_uint64(value)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_TYPE) == 0) { + fwupd_bios_setting_set_kind(self, g_variant_get_uint64(value)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_ID) == 0) { - fwupd_bios_attr_set_id(self, g_variant_get_string(value, NULL)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_ID) == 0) { + fwupd_bios_setting_set_id(self, g_variant_get_string(value, NULL)); return; } if (g_strcmp0(key, FWUPD_RESULT_KEY_NAME) == 0) { - fwupd_bios_attr_set_name(self, g_variant_get_string(value, NULL)); + fwupd_bios_setting_set_name(self, g_variant_get_string(value, NULL)); return; } if (g_strcmp0(key, FWUPD_RESULT_KEY_FILENAME) == 0) { - fwupd_bios_attr_set_path(self, g_variant_get_string(value, NULL)); + fwupd_bios_setting_set_path(self, g_variant_get_string(value, NULL)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE) == 0) { - fwupd_bios_attr_set_current_value(self, g_variant_get_string(value, NULL)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE) == 0) { + fwupd_bios_setting_set_current_value(self, g_variant_get_string(value, NULL)); return; } if (g_strcmp0(key, FWUPD_RESULT_KEY_DESCRIPTION) == 0) { - fwupd_bios_attr_set_description(self, g_variant_get_string(value, NULL)); + fwupd_bios_setting_set_description(self, g_variant_get_string(value, NULL)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES) == 0) { + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES) == 0) { g_autofree const gchar **strv = g_variant_get_strv(value, NULL); for (guint i = 0; strv[i] != NULL; i++) - fwupd_bios_attr_add_possible_value(self, strv[i]); + fwupd_bios_setting_add_possible_value(self, strv[i]); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND) == 0) { - fwupd_bios_attr_set_lower_bound(self, g_variant_get_uint64(value)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND) == 0) { + fwupd_bios_setting_set_lower_bound(self, g_variant_get_uint64(value)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND) == 0) { - fwupd_bios_attr_set_upper_bound(self, g_variant_get_uint64(value)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND) == 0) { + fwupd_bios_setting_set_upper_bound(self, g_variant_get_uint64(value)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT) == 0) { - fwupd_bios_attr_set_scalar_increment(self, g_variant_get_uint64(value)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT) == 0) { + fwupd_bios_setting_set_scalar_increment(self, g_variant_get_uint64(value)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY) == 0) { - fwupd_bios_attr_set_read_only(self, g_variant_get_boolean(value)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY) == 0) { + fwupd_bios_setting_set_read_only(self, g_variant_get_boolean(value)); return; } } /** - * fwupd_bios_attr_from_json: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_from_json: + * @self: a #FwupdBiosSetting * @json_node: a JSON node * @error: (nullable): optional return location for an error * - * Loads a fwupd bios attribute from a JSON node. + * Loads a fwupd bios settingibute from a JSON node. * * Returns: %TRUE for success * * Since: 1.8.4 **/ gboolean -fwupd_bios_attr_from_json(FwupdBiosAttr *self, JsonNode *json_node, GError **error) +fwupd_bios_setting_from_json(FwupdBiosSetting *self, JsonNode *json_node, GError **error) { #if JSON_CHECK_VERSION(1, 6, 0) JsonObject *obj; @@ -765,53 +765,58 @@ fwupd_bios_attr_from_json(FwupdBiosAttr *self, JsonNode *json_node, GError **err } obj = json_node_get_object(json_node); - fwupd_bios_attr_set_kind( + fwupd_bios_setting_set_kind( self, - json_object_get_int_member_with_default(obj, FWUPD_RESULT_KEY_BIOS_ATTR_TYPE, 0)); - fwupd_bios_attr_set_id( - self, - json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_BIOS_ATTR_ID, NULL)); - - fwupd_bios_attr_set_name( - self, - json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_NAME, NULL)); - fwupd_bios_attr_set_description( - self, - json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_DESCRIPTION, NULL)); - fwupd_bios_attr_set_path( - self, - json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_FILENAME, NULL)); - fwupd_bios_attr_set_current_value( + json_object_get_int_member_with_default(obj, FWUPD_RESULT_KEY_BIOS_SETTING_TYPE, 0)); + fwupd_bios_setting_set_id( self, json_object_get_string_member_with_default(obj, - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, + FWUPD_RESULT_KEY_BIOS_SETTING_ID, NULL)); - if (json_object_has_member(obj, FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES)) { + + fwupd_bios_setting_set_name( + self, + json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_NAME, NULL)); + fwupd_bios_setting_set_description( + self, + json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_DESCRIPTION, NULL)); + fwupd_bios_setting_set_path( + self, + json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_FILENAME, NULL)); + fwupd_bios_setting_set_current_value( + self, + json_object_get_string_member_with_default(obj, + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, + NULL)); + if (json_object_has_member(obj, FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES)) { JsonArray *array = - json_object_get_array_member(obj, FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES); + json_object_get_array_member(obj, + FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES); for (guint i = 0; i < json_array_get_length(array); i++) { const gchar *tmp = json_array_get_string_element(array, i); - fwupd_bios_attr_add_possible_value(self, tmp); + fwupd_bios_setting_add_possible_value(self, tmp); } } - fwupd_bios_attr_set_lower_bound( + fwupd_bios_setting_set_lower_bound( self, json_object_get_int_member_with_default(obj, - FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND, + FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND, 0)); - fwupd_bios_attr_set_upper_bound( + fwupd_bios_setting_set_upper_bound( self, json_object_get_int_member_with_default(obj, - FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND, + FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND, 0)); - fwupd_bios_attr_set_scalar_increment( + fwupd_bios_setting_set_scalar_increment( self, json_object_get_int_member_with_default(obj, - FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT, + FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT, 0)); - fwupd_bios_attr_set_read_only( + fwupd_bios_setting_set_read_only( self, - json_object_get_int_member_with_default(obj, FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY, 0)); + json_object_get_int_member_with_default(obj, + FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY, + 0)); /* success */ return TRUE; #else @@ -824,37 +829,37 @@ fwupd_bios_attr_from_json(FwupdBiosAttr *self, JsonNode *json_node, GError **err } /** - * fwupd_bios_attr_to_json: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_to_json: + * @self: a #FwupdBiosSetting * @builder: a JSON builder * - * Adds a fwupd bios attribute to a JSON builder. + * Adds a fwupd bios settingibute to a JSON builder. * * Since: 1.8.4 **/ void -fwupd_bios_attr_to_json(FwupdBiosAttr *self, JsonBuilder *builder) +fwupd_bios_setting_to_json(FwupdBiosSetting *self, JsonBuilder *builder) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); - g_return_if_fail(FWUPD_IS_BIOS_ATTR(self)); + g_return_if_fail(FWUPD_IS_BIOS_SETTING(self)); g_return_if_fail(builder != NULL); fwupd_common_json_add_boolean(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY, + FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY, priv->read_only); - fwupd_common_json_add_int(builder, FWUPD_RESULT_KEY_BIOS_ATTR_TYPE, priv->kind); - fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_BIOS_ATTR_ID, priv->id); + fwupd_common_json_add_int(builder, FWUPD_RESULT_KEY_BIOS_SETTING_TYPE, priv->kind); + fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_BIOS_SETTING_ID, priv->id); fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_NAME, priv->name); fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_DESCRIPTION, priv->description); fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_FILENAME, priv->path); fwupd_common_json_add_string(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, priv->current_value); - if (priv->kind == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { if (priv->possible_values->len > 0) { json_builder_set_member_name(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES); + FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES); json_builder_begin_array(builder); for (guint i = 0; i < priv->possible_values->len; i++) { const gchar *tmp = g_ptr_array_index(priv->possible_values, i); @@ -863,25 +868,25 @@ fwupd_bios_attr_to_json(FwupdBiosAttr *self, JsonBuilder *builder) json_builder_end_array(builder); } } - if (priv->kind == FWUPD_BIOS_ATTR_KIND_INTEGER || - priv->kind == FWUPD_BIOS_ATTR_KIND_STRING) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_INTEGER || + priv->kind == FWUPD_BIOS_SETTING_KIND_STRING) { fwupd_common_json_add_int(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND, + FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND, priv->lower_bound); fwupd_common_json_add_int(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND, + FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND, priv->upper_bound); - if (priv->kind == FWUPD_BIOS_ATTR_KIND_INTEGER) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_INTEGER) { fwupd_common_json_add_int(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT, + FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT, priv->scalar_increment); } } } /** - * fwupd_bios_attr_to_string: - * @self: a #FwupdBiosAttr + * fwupd_bios_setting_to_string: + * @self: a #FwupdBiosSetting * * Builds a text representation of the object. * @@ -890,37 +895,37 @@ fwupd_bios_attr_to_json(FwupdBiosAttr *self, JsonBuilder *builder) * Since: 1.8.4 **/ gchar * -fwupd_bios_attr_to_string(FwupdBiosAttr *self) +fwupd_bios_setting_to_string(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); GString *str; - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(self), NULL); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(self), NULL); str = g_string_new(NULL); fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_NAME, priv->name); - fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_ATTR_ID, priv->id); + fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_SETTING_ID, priv->id); fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_DESCRIPTION, priv->description); fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_FILENAME, priv->path); - fwupd_pad_kv_int(str, FWUPD_RESULT_KEY_BIOS_ATTR_TYPE, priv->kind); - fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, priv->current_value); + fwupd_pad_kv_int(str, FWUPD_RESULT_KEY_BIOS_SETTING_TYPE, priv->kind); + fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, priv->current_value); fwupd_pad_kv_str(str, - FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY, + FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY, priv->read_only ? "True" : "False"); - if (priv->kind == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { for (guint i = 0; i < priv->possible_values->len; i++) { const gchar *tmp = g_ptr_array_index(priv->possible_values, i); - fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES, tmp); + fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES, tmp); } } - if (priv->kind == FWUPD_BIOS_ATTR_KIND_INTEGER || - priv->kind == FWUPD_BIOS_ATTR_KIND_STRING) { - fwupd_pad_kv_int(str, FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND, priv->lower_bound); - fwupd_pad_kv_int(str, FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND, priv->upper_bound); - if (priv->kind == FWUPD_BIOS_ATTR_KIND_INTEGER) { + if (priv->kind == FWUPD_BIOS_SETTING_KIND_INTEGER || + priv->kind == FWUPD_BIOS_SETTING_KIND_STRING) { + fwupd_pad_kv_int(str, FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND, priv->lower_bound); + fwupd_pad_kv_int(str, FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND, priv->upper_bound); + if (priv->kind == FWUPD_BIOS_SETTING_KIND_INTEGER) { fwupd_pad_kv_int(str, - FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT, + FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT, priv->scalar_increment); } } @@ -929,24 +934,24 @@ fwupd_bios_attr_to_string(FwupdBiosAttr *self) } static void -fwupd_bios_attr_class_init(FwupdBiosAttrClass *klass) +fwupd_bios_setting_class_init(FwupdBiosSettingClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS(klass); - object_class->finalize = fwupd_bios_attr_finalize; + object_class->finalize = fwupd_bios_setting_finalize; } static void -fwupd_bios_attr_init(FwupdBiosAttr *self) +fwupd_bios_setting_init(FwupdBiosSetting *self) { - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); priv->possible_values = g_ptr_array_new_with_free_func(g_free); } static void -fwupd_bios_attr_finalize(GObject *object) +fwupd_bios_setting_finalize(GObject *object) { - FwupdBiosAttr *self = FWUPD_BIOS_ATTR(object); - FwupdBiosAttrPrivate *priv = GET_PRIVATE(self); + FwupdBiosSetting *self = FWUPD_BIOS_SETTING(object); + FwupdBiosSettingPrivate *priv = GET_PRIVATE(self); g_free(priv->current_value); g_free(priv->id); @@ -955,34 +960,34 @@ fwupd_bios_attr_finalize(GObject *object) g_free(priv->path); g_ptr_array_unref(priv->possible_values); - G_OBJECT_CLASS(fwupd_bios_attr_parent_class)->finalize(object); + G_OBJECT_CLASS(fwupd_bios_setting_parent_class)->finalize(object); } static void -fwupd_bios_attr_set_from_variant_iter(FwupdBiosAttr *self, GVariantIter *iter) +fwupd_bios_setting_set_from_variant_iter(FwupdBiosSetting *self, GVariantIter *iter) { GVariant *value; const gchar *key; while (g_variant_iter_next(iter, "{&sv}", &key, &value)) { - fwupd_bios_attr_from_key_value(self, key, value); + fwupd_bios_setting_from_key_value(self, key, value); g_variant_unref(value); } } /** - * fwupd_bios_attr_from_variant: + * fwupd_bios_setting_from_variant: * @value: (not nullable): the serialized data * - * Creates a new bios attribute using serialized data. + * Creates a new bios settingibute using serialized data. * - * Returns: (transfer full): a new #FwupdBiosAttr, or %NULL if @value was invalid. + * Returns: (transfer full): a new #FwupdBiosSetting, or %NULL if @value was invalid. * * Since: 1.8.4 **/ -FwupdBiosAttr * -fwupd_bios_attr_from_variant(GVariant *value) +FwupdBiosSetting * +fwupd_bios_setting_from_variant(GVariant *value) { - FwupdBiosAttr *rel = NULL; + FwupdBiosSetting *rel = NULL; const gchar *type_string; g_autoptr(GVariantIter) iter = NULL; @@ -990,13 +995,13 @@ fwupd_bios_attr_from_variant(GVariant *value) type_string = g_variant_get_type_string(value); if (g_strcmp0(type_string, "(a{sv})") == 0) { - rel = g_object_new(FWUPD_TYPE_BIOS_ATTR, NULL); + rel = g_object_new(FWUPD_TYPE_BIOS_SETTING, NULL); g_variant_get(value, "(a{sv})", &iter); - fwupd_bios_attr_set_from_variant_iter(rel, iter); + fwupd_bios_setting_set_from_variant_iter(rel, iter); } else if (g_strcmp0(type_string, "a{sv}") == 0) { - rel = g_object_new(FWUPD_TYPE_BIOS_ATTR, NULL); + rel = g_object_new(FWUPD_TYPE_BIOS_SETTING, NULL); g_variant_get(value, "a{sv}", &iter); - fwupd_bios_attr_set_from_variant_iter(rel, iter); + fwupd_bios_setting_set_from_variant_iter(rel, iter); } else { g_warning("type %s not known", type_string); } @@ -1004,18 +1009,18 @@ fwupd_bios_attr_from_variant(GVariant *value) } /** - * fwupd_bios_attr_array_from_variant: + * fwupd_bios_setting_array_from_variant: * @value: (not nullable): the serialized data * - * Creates an array of new bios attributes using serialized data. + * Creates an array of new bios settings using serialized data. * - * Returns: (transfer container) (element-type FwupdBiosAttr): attributes, + * Returns: (transfer container) (element-type FwupdBiosSetting): attributes, * or %NULL if @value was invalid. * * Since: 1.8.4 **/ GPtrArray * -fwupd_bios_attr_array_from_variant(GVariant *value) +fwupd_bios_setting_array_from_variant(GVariant *value) { GPtrArray *array = NULL; gsize sz; @@ -1025,10 +1030,10 @@ fwupd_bios_attr_array_from_variant(GVariant *value) untuple = g_variant_get_child_value(value, 0); sz = g_variant_n_children(untuple); for (guint i = 0; i < sz; i++) { - FwupdBiosAttr *rel; + FwupdBiosSetting *rel; g_autoptr(GVariant) data = NULL; data = g_variant_get_child_value(untuple, i); - rel = fwupd_bios_attr_from_variant(data); + rel = fwupd_bios_setting_from_variant(data); if (rel == NULL) continue; g_ptr_array_add(array, rel); @@ -1037,26 +1042,26 @@ fwupd_bios_attr_array_from_variant(GVariant *value) } /** - * fwupd_bios_attr_new: + * fwupd_bios_setting_new: * @name: (nullable): the attribute name * @path: (nullable): the path the driver providing this attribute uses * - * Creates a new bios attribute. + * Creates a new bios settingibute. * - * Returns: a new #FwupdBiosAttr. + * Returns: a new #FwupdBiosSetting. * * Since: 1.8.4 **/ -FwupdBiosAttr * -fwupd_bios_attr_new(const gchar *name, const gchar *path) +FwupdBiosSetting * +fwupd_bios_setting_new(const gchar *name, const gchar *path) { - FwupdBiosAttr *self; + FwupdBiosSetting *self; - self = g_object_new(FWUPD_TYPE_BIOS_ATTR, NULL); + self = g_object_new(FWUPD_TYPE_BIOS_SETTING, NULL); if (name != NULL) - fwupd_bios_attr_set_name(self, name); + fwupd_bios_setting_set_name(self, name); if (path != NULL) - fwupd_bios_attr_set_path(self, path); + fwupd_bios_setting_set_path(self, path); - return FWUPD_BIOS_ATTR(self); + return FWUPD_BIOS_SETTING(self); } diff --git a/libfwupd/fwupd-bios-setting.h b/libfwupd/fwupd-bios-setting.h new file mode 100644 index 000000000..37c0483c9 --- /dev/null +++ b/libfwupd/fwupd-bios-setting.h @@ -0,0 +1,119 @@ +/* + * Copyright (C) 2022 Mario Limonciello + * + * SPDX-License-Identifier: LGPL-2.1+ + */ + +#pragma once + +#include + +#include "fwupd-enums.h" + +G_BEGIN_DECLS + +#define FWUPD_TYPE_BIOS_SETTING (fwupd_bios_setting_get_type()) +G_DECLARE_DERIVABLE_TYPE(FwupdBiosSetting, fwupd_bios_setting, FWUPD, BIOS_SETTING, GObject) + +struct _FwupdBiosSettingClass { + GObjectClass parent_class; + /*< private >*/ + void (*_fwupd_reserved1)(void); + void (*_fwupd_reserved2)(void); + void (*_fwupd_reserved3)(void); + void (*_fwupd_reserved4)(void); + void (*_fwupd_reserved5)(void); + void (*_fwupd_reserved6)(void); + void (*_fwupd_reserved7)(void); +}; + +/* special attributes */ +#define FWUPD_BIOS_SETTING_PENDING_REBOOT "pending_reboot" +#define FWUPD_BIOS_SETTING_RESET_BIOS "reset_bios" +#define FWUPD_BIOS_SETTING_DEBUG_CMD "debug_cmd" + +/** + * FwupdBiosSettingKind: + * @FWUPD_BIOS_SETTING_KIND_UNKNOWN: BIOS setting type is unknown + * @FWUPD_BIOS_SETTING_KIND_ENUMERATION: BIOS setting that has enumerated possible + *values + * @FWUPD_BIOS_SETTING_KIND_INTEGER: BIOS setting that is an integer + * @FWUPD_BIOS_SETTING_KIND_STRING: BIOS setting that accepts a string + * + * The type of BIOS setting. + **/ +typedef enum { + FWUPD_BIOS_SETTING_KIND_UNKNOWN = 0, /* Since: 1.8.4 */ + FWUPD_BIOS_SETTING_KIND_ENUMERATION = 1, /* Since: 1.8.4 */ + FWUPD_BIOS_SETTING_KIND_INTEGER = 2, /* Since: 1.8.4 */ + FWUPD_BIOS_SETTING_KIND_STRING = 3, /* Since: 1.8.4 */ + /*< private >*/ + FWUPD_BIOS_SETTING_KIND_LAST = 4 /* perhaps increased in the future */ +} FwupdBiosSettingKind; + +FwupdBiosSetting * +fwupd_bios_setting_new(const gchar *name, const gchar *path); +gchar * +fwupd_bios_setting_to_string(FwupdBiosSetting *self); + +gboolean +fwupd_bios_setting_get_read_only(FwupdBiosSetting *self); +void +fwupd_bios_setting_set_read_only(FwupdBiosSetting *self, gboolean val); + +guint64 +fwupd_bios_setting_get_upper_bound(FwupdBiosSetting *self); +guint64 +fwupd_bios_setting_get_lower_bound(FwupdBiosSetting *self); +guint64 +fwupd_bios_setting_get_scalar_increment(FwupdBiosSetting *self); + +void +fwupd_bios_setting_set_upper_bound(FwupdBiosSetting *self, guint64 val); +void +fwupd_bios_setting_set_lower_bound(FwupdBiosSetting *self, guint64 val); +void +fwupd_bios_setting_set_scalar_increment(FwupdBiosSetting *self, guint64 val); + +void +fwupd_bios_setting_set_kind(FwupdBiosSetting *self, FwupdBiosSettingKind type); +void +fwupd_bios_setting_set_name(FwupdBiosSetting *self, const gchar *name); +void +fwupd_bios_setting_set_path(FwupdBiosSetting *self, const gchar *path); +void +fwupd_bios_setting_set_description(FwupdBiosSetting *self, const gchar *description); + +FwupdBiosSettingKind +fwupd_bios_setting_get_kind(FwupdBiosSetting *self); +const gchar * +fwupd_bios_setting_get_name(FwupdBiosSetting *self); +const gchar * +fwupd_bios_setting_get_path(FwupdBiosSetting *self); +const gchar * +fwupd_bios_setting_get_description(FwupdBiosSetting *self); +const gchar * +fwupd_bios_setting_map_possible_value(FwupdBiosSetting *self, const gchar *key, GError **error); +gboolean +fwupd_bios_setting_has_possible_value(FwupdBiosSetting *self, const gchar *val); +void +fwupd_bios_setting_add_possible_value(FwupdBiosSetting *self, const gchar *possible_value); +GPtrArray * +fwupd_bios_setting_get_possible_values(FwupdBiosSetting *self); + +FwupdBiosSetting * +fwupd_bios_setting_from_variant(GVariant *value); +GPtrArray * +fwupd_bios_setting_array_from_variant(GVariant *value); + +const gchar * +fwupd_bios_setting_get_current_value(FwupdBiosSetting *self); +void +fwupd_bios_setting_set_current_value(FwupdBiosSetting *self, const gchar *value); + +const gchar * +fwupd_bios_setting_get_id(FwupdBiosSetting *self); +void +fwupd_bios_setting_set_id(FwupdBiosSetting *self, const gchar *id); + +G_END_DECLS diff --git a/libfwupd/fwupd-client-sync.c b/libfwupd/fwupd-client-sync.c index 76de573d0..e8bd61fc6 100644 --- a/libfwupd/fwupd-client-sync.c +++ b/libfwupd/fwupd-client-sync.c @@ -888,22 +888,22 @@ fwupd_client_get_results(FwupdClient *self, } static void -fwupd_client_modify_bios_attr_cb(GObject *source, GAsyncResult *res, gpointer user_data) +fwupd_client_modify_bios_setting_cb(GObject *source, GAsyncResult *res, gpointer user_data) { FwupdClientHelper *helper = (FwupdClientHelper *)user_data; helper->ret = - fwupd_client_modify_bios_attr_finish(FWUPD_CLIENT(source), res, &helper->error); + fwupd_client_modify_bios_setting_finish(FWUPD_CLIENT(source), res, &helper->error); g_main_loop_quit(helper->loop); } /** - * fwupd_client_modify_bios_attr + * fwupd_client_modify_bios_setting * @self: a #FwupdClient * @settings: (transfer container): BIOS settings * @cancellable: (nullable): optional #GCancellable * @error: (nullable): optional return location for an error * - * Modifies a BIOS attribute using kernel API. + * Modifies a BIOS setting using kernel API. * The daemon will only respond to this request with proper permissions. * * Returns: %TRUE for success @@ -911,10 +911,10 @@ fwupd_client_modify_bios_attr_cb(GObject *source, GAsyncResult *res, gpointer us * Since: 1.8.4 **/ gboolean -fwupd_client_modify_bios_attr(FwupdClient *self, - GHashTable *settings, - GCancellable *cancellable, - GError **error) +fwupd_client_modify_bios_setting(FwupdClient *self, + GHashTable *settings, + GCancellable *cancellable, + GError **error) { g_autoptr(FwupdClientHelper) helper = NULL; @@ -929,11 +929,11 @@ fwupd_client_modify_bios_attr(FwupdClient *self, /* call async version and run loop until complete */ helper = fwupd_client_helper_new(self); - fwupd_client_modify_bios_attr_async(self, - settings, - cancellable, - fwupd_client_modify_bios_attr_cb, - helper); + fwupd_client_modify_bios_setting_async(self, + settings, + cancellable, + fwupd_client_modify_bios_setting_cb, + helper); g_main_loop_run(helper->loop); if (!helper->ret) { g_propagate_error(error, g_steal_pointer(&helper->error)); @@ -943,28 +943,28 @@ fwupd_client_modify_bios_attr(FwupdClient *self, } static void -fwupd_client_get_bios_attrs_cb(GObject *source, GAsyncResult *res, gpointer user_data) +fwupd_client_get_bios_settings_cb(GObject *source, GAsyncResult *res, gpointer user_data) { FwupdClientHelper *helper = (FwupdClientHelper *)user_data; helper->array = - fwupd_client_get_bios_attrs_finish(FWUPD_CLIENT(source), res, &helper->error); + fwupd_client_get_bios_settings_finish(FWUPD_CLIENT(source), res, &helper->error); g_main_loop_quit(helper->loop); } /** - * fwupd_client_get_bios_attrs: + * fwupd_client_get_bios_settings: * @self: a #FwupdClient * @cancellable: (nullable): optional #GCancellable * @error: (nullable): optional return location for an error * - * Gets all the BIOS attributes from the daemon. + * Gets all the BIOS settings from the daemon. * - * Returns: (element-type FwupdBiosAttr) (transfer container): attributes + * Returns: (element-type FwupdBiosSetting) (transfer container): attributes * * Since: 1.8.4 **/ GPtrArray * -fwupd_client_get_bios_attrs(FwupdClient *self, GCancellable *cancellable, GError **error) +fwupd_client_get_bios_settings(FwupdClient *self, GCancellable *cancellable, GError **error) { g_autoptr(FwupdClientHelper) helper = NULL; @@ -978,10 +978,10 @@ fwupd_client_get_bios_attrs(FwupdClient *self, GCancellable *cancellable, GError /* call async version and run loop until complete */ helper = fwupd_client_helper_new(self); - fwupd_client_get_bios_attrs_async(self, - cancellable, - fwupd_client_get_bios_attrs_cb, - helper); + fwupd_client_get_bios_settings_async(self, + cancellable, + fwupd_client_get_bios_settings_cb, + helper); g_main_loop_run(helper->loop); if (helper->array == NULL) { g_propagate_error(error, g_steal_pointer(&helper->error)); diff --git a/libfwupd/fwupd-client-sync.h b/libfwupd/fwupd-client-sync.h index a9f8afd9a..bc38cf1e6 100644 --- a/libfwupd/fwupd-client-sync.h +++ b/libfwupd/fwupd-client-sync.h @@ -88,14 +88,14 @@ fwupd_client_get_results(FwupdClient *self, GCancellable *cancellable, GError **error) G_GNUC_WARN_UNUSED_RESULT; gboolean -fwupd_client_modify_bios_attr(FwupdClient *self, - GHashTable *settings, - GCancellable *cancellable, - GError **error); +fwupd_client_modify_bios_setting(FwupdClient *self, + GHashTable *settings, + GCancellable *cancellable, + GError **error); GPtrArray * -fwupd_client_get_bios_attrs(FwupdClient *self, - GCancellable *cancellable, - GError **error) G_GNUC_WARN_UNUSED_RESULT; +fwupd_client_get_bios_settings(FwupdClient *self, + GCancellable *cancellable, + GError **error) G_GNUC_WARN_UNUSED_RESULT; GPtrArray * fwupd_client_get_host_security_attrs(FwupdClient *self, GCancellable *cancellable, diff --git a/libfwupd/fwupd-client.c b/libfwupd/fwupd-client.c index 6c9665e13..122686b67 100644 --- a/libfwupd/fwupd-client.c +++ b/libfwupd/fwupd-client.c @@ -20,7 +20,7 @@ #include #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-client-private.h" #include "fwupd-client-sync.h" #include "fwupd-common-private.h" @@ -1086,7 +1086,7 @@ fwupd_client_get_host_security_attrs_finish(FwupdClient *self, GAsyncResult *res } static void -fwupd_client_modify_bios_attr_cb(GObject *source, GAsyncResult *res, gpointer user_data) +fwupd_client_modify_bios_setting_cb(GObject *source, GAsyncResult *res, gpointer user_data) { g_autoptr(GTask) task = G_TASK(user_data); g_autoptr(GError) error = NULL; @@ -1104,24 +1104,24 @@ fwupd_client_modify_bios_attr_cb(GObject *source, GAsyncResult *res, gpointer us } /** - * fwupd_client_modify_bios_attr_async: + * fwupd_client_modify_bios_setting_async: * @self: a #FwupdClient * @settings: (transfer container): BIOS settings * @cancellable: (nullable): optional #GCancellable * @callback: the function to run on completion * @callback_data: the data to pass to @callback * - * Modifies a BIOS attribute using kernel API. + * Modifies a BIOS setting using kernel API. * The daemon will only respond to this request with proper permissions. * * Since: 1.8.4 **/ void -fwupd_client_modify_bios_attr_async(FwupdClient *self, - GHashTable *settings, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer callback_data) +fwupd_client_modify_bios_setting_async(FwupdClient *self, + GHashTable *settings, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer callback_data) { FwupdClientPrivate *priv = GET_PRIVATE(self); GVariantBuilder builder; @@ -1145,29 +1145,29 @@ fwupd_client_modify_bios_attr_async(FwupdClient *self, g_variant_builder_add(&builder, "{ss}", (const gchar *)key, (const gchar *)value); } g_dbus_proxy_call(priv->proxy, - "SetBiosAttrs", + "SetBiosSettings", g_variant_new("(a{ss})", &builder), G_DBUS_CALL_FLAGS_NONE, FWUPD_CLIENT_DBUS_PROXY_TIMEOUT, cancellable, - fwupd_client_modify_bios_attr_cb, + fwupd_client_modify_bios_setting_cb, g_steal_pointer(&task)); } /** - * fwupd_client_modify_bios_attr_finish: + * fwupd_client_modify_bios_setting_finish: * @self: a #FwupdClient * @res: the asynchronous result * @error: (nullable): optional return location for an error * - * Gets the result of [method@FwupdClient.modify_bios_attr_async]. + * Gets the result of [method@FwupdClient.modify_bios_setting_async]. * * Returns: %TRUE for success * * Since: 1.8.4 **/ gboolean -fwupd_client_modify_bios_attr_finish(FwupdClient *self, GAsyncResult *res, GError **error) +fwupd_client_modify_bios_setting_finish(FwupdClient *self, GAsyncResult *res, GError **error) { g_return_val_if_fail(FWUPD_IS_CLIENT(self), FALSE); g_return_val_if_fail(g_task_is_valid(res, self), FALSE); @@ -1176,7 +1176,7 @@ fwupd_client_modify_bios_attr_finish(FwupdClient *self, GAsyncResult *res, GErro } static void -fwupd_client_get_bios_attrs_cb(GObject *source, GAsyncResult *res, gpointer user_data) +fwupd_client_get_bios_settings_cb(GObject *source, GAsyncResult *res, gpointer user_data) { g_autoptr(GTask) task = G_TASK(user_data); g_autoptr(GError) error = NULL; @@ -1191,12 +1191,12 @@ fwupd_client_get_bios_attrs_cb(GObject *source, GAsyncResult *res, gpointer user /* success */ g_task_return_pointer(task, - fwupd_bios_attr_array_from_variant(val), + fwupd_bios_setting_array_from_variant(val), (GDestroyNotify)g_ptr_array_unref); } /** - * fwupd_client_get_bios_attrs_async: + * fwupd_client_get_bios_settings_async: * @self: a #FwupdClient * @cancellable: (nullable): optional #GCancellable * @callback: the function to run on completion @@ -1210,10 +1210,10 @@ fwupd_client_get_bios_attrs_cb(GObject *source, GAsyncResult *res, gpointer user * Since: 1.8.4 **/ void -fwupd_client_get_bios_attrs_async(FwupdClient *self, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer callback_data) +fwupd_client_get_bios_settings_async(FwupdClient *self, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer callback_data) { FwupdClientPrivate *priv = GET_PRIVATE(self); g_autoptr(GTask) task = NULL; @@ -1225,29 +1225,29 @@ fwupd_client_get_bios_attrs_async(FwupdClient *self, /* call into daemon */ task = g_task_new(self, cancellable, callback, callback_data); g_dbus_proxy_call(priv->proxy, - "GetBiosAttrs", + "GetBiosSettings", NULL, G_DBUS_CALL_FLAGS_NONE, FWUPD_CLIENT_DBUS_PROXY_TIMEOUT, cancellable, - fwupd_client_get_bios_attrs_cb, + fwupd_client_get_bios_settings_cb, g_steal_pointer(&task)); } /** - * fwupd_client_get_bios_attrs_finish: + * fwupd_client_get_bios_settings_finish: * @self: a #FwupdClient * @res: the asynchronous result * @error: (nullable): optional return location for an error * - * Gets the result of [method@FwupdClient.get_bios_attrs_async]. + * Gets the result of [method@FwupdClient.get_bios_settings_async]. * - * Returns: (element-type FwupdBiosAttr) (transfer container): attributes + * Returns: (element-type FwupdBiosSetting) (transfer container): attributes * * Since: 1.8.4 **/ GPtrArray * -fwupd_client_get_bios_attrs_finish(FwupdClient *self, GAsyncResult *res, GError **error) +fwupd_client_get_bios_settings_finish(FwupdClient *self, GAsyncResult *res, GError **error) { g_return_val_if_fail(FWUPD_IS_CLIENT(self), NULL); g_return_val_if_fail(g_task_is_valid(res, self), NULL); diff --git a/libfwupd/fwupd-client.h b/libfwupd/fwupd-client.h index 435d7ec45..d6d9d9e84 100644 --- a/libfwupd/fwupd-client.h +++ b/libfwupd/fwupd-client.h @@ -220,22 +220,22 @@ fwupd_client_get_results_finish(FwupdClient *self, GAsyncResult *res, GError **error) G_GNUC_WARN_UNUSED_RESULT; void -fwupd_client_modify_bios_attr_async(FwupdClient *self, - GHashTable *settings, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer callback_data); +fwupd_client_modify_bios_setting_async(FwupdClient *self, + GHashTable *settings, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer callback_data); gboolean -fwupd_client_modify_bios_attr_finish(FwupdClient *self, GAsyncResult *res, GError **error); +fwupd_client_modify_bios_setting_finish(FwupdClient *self, GAsyncResult *res, GError **error); void -fwupd_client_get_bios_attrs_async(FwupdClient *self, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer callback_data); +fwupd_client_get_bios_settings_async(FwupdClient *self, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer callback_data); GPtrArray * -fwupd_client_get_bios_attrs_finish(FwupdClient *self, - GAsyncResult *res, - GError **error) G_GNUC_WARN_UNUSED_RESULT; +fwupd_client_get_bios_settings_finish(FwupdClient *self, + GAsyncResult *res, + GError **error) G_GNUC_WARN_UNUSED_RESULT; void fwupd_client_get_host_security_attrs_async(FwupdClient *self, GCancellable *cancellable, diff --git a/libfwupd/fwupd-enums-private.h b/libfwupd/fwupd-enums-private.h index ef98655b7..b7926a4eb 100644 --- a/libfwupd/fwupd-enums-private.h +++ b/libfwupd/fwupd-enums-private.h @@ -509,78 +509,78 @@ G_BEGIN_DECLS **/ #define FWUPD_RESULT_KEY_BATTERY_THRESHOLD "BatteryThreshold" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_ID: + * FWUPD_RESULT_KEY_BIOS_SETTING_ID: * - * Result key to represent the unique identifier of the BIOS attribute. + * Result key to represent the unique identifier of the BIOS setting. * * The D-Bus type signature string is 's' i.e. a string. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_ID "BiosAttrId" +#define FWUPD_RESULT_KEY_BIOS_SETTING_ID "BiosSettingId" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE: + * FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE: * * Result key to represent the value that would enable this attribute. * * The D-Bus type signature string is 's' i.e. a string. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE "BiosAttrTargetValue" +#define FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE "BiosSettingTargetValue" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE: + * FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE: * - * Result key to represent the current value of BIOS attribute. + * Result key to represent the current value of BIOS setting. * * The D-Bus type signature string is 's' i.e. a string. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE "BiosAttrCurrentValue" +#define FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE "BiosSettingCurrentValue" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_TYPE: + * FWUPD_RESULT_KEY_BIOS_SETTING_TYPE: * - * Result key to represent the type of BIOS attribute. + * Result key to represent the type of BIOS setting. * 0 is invalid, 1+ represent an attribute type * * The D-Bus type signature string is 't' i.e. a unsigned 64 bit integer. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_TYPE "BiosAttrType" +#define FWUPD_RESULT_KEY_BIOS_SETTING_TYPE "BiosSettingType" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES: + * FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES: * * Result key to represent possible values * * The D-Bus type signature string is 'as' i.e. an array of strings. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_POSSIBLE_VALUES "BiosAttrPossibleValues" +#define FWUPD_RESULT_KEY_BIOS_SETTING_POSSIBLE_VALUES "BiosSettingPossibleValues" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND: + * FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND: * - * Result key to represent the upper bound for an integer BIOS attribute. - * or minimum length for string BIOS attribute. + * Result key to represent the upper bound for an integer BIOS setting. + * or minimum length for string BIOS setting. * The D-Bus type signature string is 't' i.e. a unsigned 64 bit integer. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_LOWER_BOUND "BiosAttrLowerBound" +#define FWUPD_RESULT_KEY_BIOS_SETTING_LOWER_BOUND "BiosSettingLowerBound" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND: + * FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND: * - * Result key to represent the lower bound for an integer BIOS attribute - * or maximum length for string BIOS attribute. + * Result key to represent the lower bound for an integer BIOS setting + * or maximum length for string BIOS setting. * * The D-Bus type signature string is 't' i.e. a unsigned 64 bit integer. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_UPPER_BOUND "BiosAttrUpperBound" +#define FWUPD_RESULT_KEY_BIOS_SETTING_UPPER_BOUND "BiosSettingUpperBound" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT: + * FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT: * - * Result key to represent the scalar increment for an integer BIOS attribute. + * Result key to represent the scalar increment for an integer BIOS setting. * * The D-Bus type signature string is 't' i.e. a unsigned 64 bit integer. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_SCALAR_INCREMENT "BiosAttrScalarIncrement" +#define FWUPD_RESULT_KEY_BIOS_SETTING_SCALAR_INCREMENT "BiosSettingScalarIncrement" /** - * FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY: + * FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY: * - * Result key to represent whether BIOS attribute is read only + * Result key to represent whether BIOS setting is read only * * The D-Bus type signature string is 'b' i.e. a boolean. **/ -#define FWUPD_RESULT_KEY_BIOS_ATTR_READ_ONLY "BiosAttrReadOnly" +#define FWUPD_RESULT_KEY_BIOS_SETTING_READ_ONLY "BiosSettingReadOnly" G_END_DECLS diff --git a/libfwupd/fwupd-security-attr.c b/libfwupd/fwupd-security-attr.c index 09561529b..3e753fe6e 100644 --- a/libfwupd/fwupd-security-attr.c +++ b/libfwupd/fwupd-security-attr.c @@ -38,9 +38,9 @@ typedef struct { FwupdSecurityAttrResult result; FwupdSecurityAttrResult result_fallback; FwupdSecurityAttrFlags flags; - gchar *bios_attr_id; - gchar *bios_attr_target_value; - gchar *bios_attr_current_value; + gchar *bios_setting_id; + gchar *bios_setting_target_value; + gchar *bios_setting_current_value; } FwupdSecurityAttrPrivate; G_DEFINE_TYPE_WITH_PRIVATE(FwupdSecurityAttr, fwupd_security_attr, G_TYPE_OBJECT) @@ -227,43 +227,43 @@ fwupd_security_attr_flag_to_suffix(FwupdSecurityAttrFlags flag) } /** - * fwupd_security_attr_get_bios_attr_id: + * fwupd_security_attr_get_bios_setting_id: * @self: a #FwupdSecurityAttr * - * Gets the #FwupdBiosAttr that can be used to improve this + * Gets the #FwupdBiosSetting that can be used to improve this * #FwupdSecurityAttr. * - * Returns: The unique ID used for #FwupdBiosAttr or NULL + * Returns: The unique ID used for #FwupdBiosSetting or NULL * * Since: 1.8.4 **/ const gchar * -fwupd_security_attr_get_bios_attr_id(FwupdSecurityAttr *self) +fwupd_security_attr_get_bios_setting_id(FwupdSecurityAttr *self) { FwupdSecurityAttrPrivate *priv = GET_PRIVATE(self); g_return_val_if_fail(FWUPD_IS_SECURITY_ATTR(self), NULL); - return priv->bios_attr_id; + return priv->bios_setting_id; } /** - * fwupd_security_attr_set_bios_attr_id: + * fwupd_security_attr_set_bios_setting_id: * @self: a #FwupdSecurityAttr - * @id: Unique identifier used for #FwupdBiosAttr + * @id: Unique identifier used for #FwupdBiosSetting * - * Sets the #FwupdBiosAttr that can be used to improve this + * Sets the #FwupdBiosSetting that can be used to improve this * #FwupdSecurityAttr. * * Since: 1.8.4 **/ void -fwupd_security_attr_set_bios_attr_id(FwupdSecurityAttr *self, const gchar *id) +fwupd_security_attr_set_bios_setting_id(FwupdSecurityAttr *self, const gchar *id) { FwupdSecurityAttrPrivate *priv = GET_PRIVATE(self); g_return_if_fail(FWUPD_IS_SECURITY_ATTR(self)); - if (priv->bios_attr_id == id) + if (priv->bios_setting_id == id) return; - g_free(priv->bios_attr_id); - priv->bios_attr_id = g_strdup(id); + g_free(priv->bios_setting_id); + priv->bios_setting_id = g_strdup(id); } /** @@ -503,7 +503,7 @@ fwupd_security_attr_set_name(FwupdSecurityAttr *self, const gchar *name) } /** - * fwupd_security_attr_get_bios_attr_target_value: + * fwupd_security_attr_get_bios_setting_target_value: * @self: a #FwupdSecurityAttr * * Gets the value that when written to an attribute would activate it or satisfy @@ -514,15 +514,15 @@ fwupd_security_attr_set_name(FwupdSecurityAttr *self, const gchar *name) * Since: 1.8.4 **/ const gchar * -fwupd_security_attr_get_bios_attr_target_value(FwupdSecurityAttr *self) +fwupd_security_attr_get_bios_setting_target_value(FwupdSecurityAttr *self) { FwupdSecurityAttrPrivate *priv = GET_PRIVATE(self); g_return_val_if_fail(FWUPD_IS_SECURITY_ATTR(self), NULL); - return priv->bios_attr_target_value; + return priv->bios_setting_target_value; } /** - * fwupd_security_attr_set_bios_attr_target_value: + * fwupd_security_attr_set_bios_setting_target_value: * @self: a #FwupdSecurityAttr * @value: The string to set target value to * @@ -531,56 +531,56 @@ fwupd_security_attr_get_bios_attr_target_value(FwupdSecurityAttr *self) * Since: 1.8.4 **/ void -fwupd_security_attr_set_bios_attr_target_value(FwupdSecurityAttr *self, const gchar *value) +fwupd_security_attr_set_bios_setting_target_value(FwupdSecurityAttr *self, const gchar *value) { FwupdSecurityAttrPrivate *priv = GET_PRIVATE(self); /* not changed */ - if (g_strcmp0(priv->bios_attr_target_value, value) == 0) + if (g_strcmp0(priv->bios_setting_target_value, value) == 0) return; - g_free(priv->bios_attr_target_value); - priv->bios_attr_target_value = g_strdup(value); + g_free(priv->bios_setting_target_value); + priv->bios_setting_target_value = g_strdup(value); } /** - * fwupd_security_attr_get_bios_attr_current_value: + * fwupd_security_attr_get_bios_setting_current_value: * @self: a #FwupdSecurityAttr * - * Gets the current value of the BIOS attribute that can be changed. + * Gets the current value of the BIOS setting that can be changed. * * Returns: the current value of the attribute. * * Since: 1.8.4 **/ const gchar * -fwupd_security_attr_get_bios_attr_current_value(FwupdSecurityAttr *self) +fwupd_security_attr_get_bios_setting_current_value(FwupdSecurityAttr *self) { FwupdSecurityAttrPrivate *priv = GET_PRIVATE(self); g_return_val_if_fail(FWUPD_IS_SECURITY_ATTR(self), NULL); - return priv->bios_attr_current_value; + return priv->bios_setting_current_value; } /** - * fwupd_security_attr_set_bios_attr_current_value: + * fwupd_security_attr_set_bios_setting_current_value: * @self: a #FwupdSecurityAttr * @value: The string to set current value to * - * Sets the current value of the BIOS attribute that can be changed. + * Sets the current value of the BIOS setting that can be changed. * * Since: 1.8.4 **/ void -fwupd_security_attr_set_bios_attr_current_value(FwupdSecurityAttr *self, const gchar *value) +fwupd_security_attr_set_bios_setting_current_value(FwupdSecurityAttr *self, const gchar *value) { FwupdSecurityAttrPrivate *priv = GET_PRIVATE(self); /* not changed */ - if (g_strcmp0(priv->bios_attr_current_value, value) == 0) + if (g_strcmp0(priv->bios_setting_current_value, value) == 0) return; - g_free(priv->bios_attr_current_value); - priv->bios_attr_current_value = g_strdup(value); + g_free(priv->bios_setting_current_value); + priv->bios_setting_current_value = g_strdup(value); } /** @@ -1096,23 +1096,23 @@ fwupd_security_attr_to_variant(FwupdSecurityAttr *self) FWUPD_RESULT_KEY_METADATA, fwupd_hash_kv_to_variant(priv->metadata)); } - if (priv->bios_attr_id != NULL) { + if (priv->bios_setting_id != NULL) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_ID, - g_variant_new_string(priv->bios_attr_id)); + FWUPD_RESULT_KEY_BIOS_SETTING_ID, + g_variant_new_string(priv->bios_setting_id)); } - if (priv->bios_attr_target_value != NULL) { + if (priv->bios_setting_target_value != NULL) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE, - g_variant_new_string(priv->bios_attr_target_value)); + FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE, + g_variant_new_string(priv->bios_setting_target_value)); } - if (priv->bios_attr_current_value != NULL) { + if (priv->bios_setting_current_value != NULL) { g_variant_builder_add(&builder, "{sv}", - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, - g_variant_new_string(priv->bios_attr_current_value)); + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, + g_variant_new_string(priv->bios_setting_current_value)); } return g_variant_new("a{sv}", &builder); } @@ -1226,18 +1226,20 @@ fwupd_security_attr_from_key_value(FwupdSecurityAttr *self, const gchar *key, GV priv->metadata = fwupd_variant_to_hash_kv(value); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_ID) == 0) { - fwupd_security_attr_set_bios_attr_id(self, g_variant_get_string(value, NULL)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_ID) == 0) { + fwupd_security_attr_set_bios_setting_id(self, g_variant_get_string(value, NULL)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE) == 0) { - fwupd_security_attr_set_bios_attr_target_value(self, - g_variant_get_string(value, NULL)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE) == 0) { + fwupd_security_attr_set_bios_setting_target_value( + self, + g_variant_get_string(value, NULL)); return; } - if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE) == 0) { - fwupd_security_attr_set_bios_attr_current_value(self, - g_variant_get_string(value, NULL)); + if (g_strcmp0(key, FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE) == 0) { + fwupd_security_attr_set_bios_setting_current_value( + self, + g_variant_get_string(value, NULL)); return; } } @@ -1321,18 +1323,20 @@ fwupd_security_attr_from_json(FwupdSecurityAttr *self, JsonNode *json_node, GErr fwupd_security_attr_set_created( self, json_object_get_int_member_with_default(obj, FWUPD_RESULT_KEY_CREATED, 0)); - fwupd_security_attr_set_bios_attr_id( - self, - json_object_get_string_member_with_default(obj, FWUPD_RESULT_KEY_BIOS_ATTR_ID, NULL)); - fwupd_security_attr_set_bios_attr_target_value( + fwupd_security_attr_set_bios_setting_id( self, json_object_get_string_member_with_default(obj, - FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE, + FWUPD_RESULT_KEY_BIOS_SETTING_ID, NULL)); - fwupd_security_attr_set_bios_attr_current_value( + fwupd_security_attr_set_bios_setting_target_value( self, json_object_get_string_member_with_default(obj, - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, + FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE, + NULL)); + fwupd_security_attr_set_bios_setting_current_value( + self, + json_object_get_string_member_with_default(obj, + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, NULL)); /* also optional */ @@ -1413,12 +1417,14 @@ fwupd_security_attr_to_json(FwupdSecurityAttr *self, JsonBuilder *builder) fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_PLUGIN, priv->plugin); fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_URI, priv->url); fwupd_common_json_add_string(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE, - priv->bios_attr_target_value); + FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE, + priv->bios_setting_target_value); fwupd_common_json_add_string(builder, - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, - priv->bios_attr_current_value); - fwupd_common_json_add_string(builder, FWUPD_RESULT_KEY_BIOS_ATTR_ID, priv->bios_attr_id); + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, + priv->bios_setting_current_value); + fwupd_common_json_add_string(builder, + FWUPD_RESULT_KEY_BIOS_SETTING_ID, + priv->bios_setting_id); if (priv->flags != FWUPD_SECURITY_ATTR_FLAG_NONE) { json_builder_set_member_name(builder, FWUPD_RESULT_KEY_FLAGS); @@ -1487,13 +1493,13 @@ fwupd_security_attr_to_string(FwupdSecurityAttr *self) fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_DESCRIPTION, priv->description); fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_PLUGIN, priv->plugin); fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_URI, priv->url); - fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_ATTR_ID, priv->bios_attr_id); + fwupd_pad_kv_str(str, FWUPD_RESULT_KEY_BIOS_SETTING_ID, priv->bios_setting_id); fwupd_pad_kv_str(str, - FWUPD_RESULT_KEY_BIOS_ATTR_TARGET_VALUE, - priv->bios_attr_target_value); + FWUPD_RESULT_KEY_BIOS_SETTING_TARGET_VALUE, + priv->bios_setting_target_value); fwupd_pad_kv_str(str, - FWUPD_RESULT_KEY_BIOS_ATTR_CURRENT_VALUE, - priv->bios_attr_current_value); + FWUPD_RESULT_KEY_BIOS_SETTING_CURRENT_VALUE, + priv->bios_setting_current_value); for (guint i = 0; i < priv->obsoletes->len; i++) { const gchar *appstream_id = g_ptr_array_index(priv->obsoletes, i); @@ -1540,9 +1546,9 @@ fwupd_security_attr_finalize(GObject *object) if (priv->metadata != NULL) g_hash_table_unref(priv->metadata); - g_free(priv->bios_attr_id); - g_free(priv->bios_attr_target_value); - g_free(priv->bios_attr_current_value); + g_free(priv->bios_setting_id); + g_free(priv->bios_setting_target_value); + g_free(priv->bios_setting_current_value); g_free(priv->appstream_id); g_free(priv->name); g_free(priv->title); @@ -1661,7 +1667,7 @@ fwupd_security_attr_copy(FwupdSecurityAttr *self) fwupd_security_attr_set_flags(new, priv->flags); fwupd_security_attr_set_result(new, priv->result); fwupd_security_attr_set_created(new, priv->created); - fwupd_security_attr_set_bios_attr_id(new, priv->bios_attr_id); + fwupd_security_attr_set_bios_setting_id(new, priv->bios_setting_id); for (guint i = 0; i < priv->guids->len; i++) { const gchar *guid = g_ptr_array_index(priv->guids, i); diff --git a/libfwupd/fwupd-security-attr.h b/libfwupd/fwupd-security-attr.h index b459d5e9e..4ada93a41 100644 --- a/libfwupd/fwupd-security-attr.h +++ b/libfwupd/fwupd-security-attr.h @@ -127,17 +127,17 @@ gchar * fwupd_security_attr_to_string(FwupdSecurityAttr *self); const gchar * -fwupd_security_attr_get_bios_attr_id(FwupdSecurityAttr *self); +fwupd_security_attr_get_bios_setting_id(FwupdSecurityAttr *self); void -fwupd_security_attr_set_bios_attr_id(FwupdSecurityAttr *self, const gchar *id); +fwupd_security_attr_set_bios_setting_id(FwupdSecurityAttr *self, const gchar *id); const gchar * -fwupd_security_attr_get_bios_attr_target_value(FwupdSecurityAttr *self); +fwupd_security_attr_get_bios_setting_target_value(FwupdSecurityAttr *self); void -fwupd_security_attr_set_bios_attr_target_value(FwupdSecurityAttr *self, const gchar *value); +fwupd_security_attr_set_bios_setting_target_value(FwupdSecurityAttr *self, const gchar *value); const gchar * -fwupd_security_attr_get_bios_attr_current_value(FwupdSecurityAttr *self); +fwupd_security_attr_get_bios_setting_current_value(FwupdSecurityAttr *self); void -fwupd_security_attr_set_bios_attr_current_value(FwupdSecurityAttr *self, const gchar *value); +fwupd_security_attr_set_bios_setting_current_value(FwupdSecurityAttr *self, const gchar *value); const gchar * fwupd_security_attr_get_appstream_id(FwupdSecurityAttr *self); diff --git a/libfwupd/fwupd-self-test.c b/libfwupd/fwupd-self-test.c index b4e499fa8..1221d8ed7 100644 --- a/libfwupd/fwupd-self-test.c +++ b/libfwupd/fwupd-self-test.c @@ -12,7 +12,7 @@ #include #endif -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-client-sync.h" #include "fwupd-client.h" #include "fwupd-common.h" @@ -1218,8 +1218,8 @@ fwupd_attr_to_json_string(GObject *attr, GError **error) json_builder_begin_object(builder); if (FWUPD_IS_SECURITY_ATTR(attr)) fwupd_security_attr_to_json(FWUPD_SECURITY_ATTR(attr), builder); - else if (FWUPD_IS_BIOS_ATTR(attr)) - fwupd_bios_attr_to_json(FWUPD_BIOS_ATTR(attr), builder); + else if (FWUPD_IS_BIOS_SETTING(attr)) + fwupd_bios_setting_to_json(FWUPD_BIOS_SETTING(attr), builder); json_builder_end_object(builder); json_root = json_builder_get_root(builder); json_generator = json_generator_new(); @@ -1377,7 +1377,7 @@ fwupd_security_attr_func(void) } static void -fwupd_bios_attrs_func(void) +fwupd_bios_settings_func(void) { gboolean ret; g_autofree gchar *str1 = NULL; @@ -1385,57 +1385,59 @@ fwupd_bios_attrs_func(void) g_autofree gchar *str3 = NULL; g_autofree gchar *json1 = NULL; g_autofree gchar *json2 = NULL; - g_autoptr(FwupdBiosAttr) attr1 = fwupd_bios_attr_new("foo", "/path/to/bar"); - g_autoptr(FwupdBiosAttr) attr2 = NULL; + g_autoptr(FwupdBiosSetting) attr1 = fwupd_bios_setting_new("foo", "/path/to/bar"); + g_autoptr(FwupdBiosSetting) attr2 = NULL; g_autoptr(GError) error = NULL; g_autoptr(GVariant) data1 = NULL; g_autoptr(GVariant) data2 = NULL; g_autoptr(JsonParser) parser = json_parser_new(); - g_assert_cmpstr(fwupd_bios_attr_get_name(attr1), ==, "foo"); - fwupd_bios_attr_set_name(attr1, "UEFISecureBoot"); - g_assert_cmpstr(fwupd_bios_attr_get_name(attr1), ==, "UEFISecureBoot"); + g_assert_cmpstr(fwupd_bios_setting_get_name(attr1), ==, "foo"); + fwupd_bios_setting_set_name(attr1, "UEFISecureBoot"); + g_assert_cmpstr(fwupd_bios_setting_get_name(attr1), ==, "UEFISecureBoot"); - fwupd_bios_attr_set_kind(attr1, FWUPD_BIOS_ATTR_KIND_ENUMERATION); - g_assert_cmpint(fwupd_bios_attr_get_kind(attr1), ==, FWUPD_BIOS_ATTR_KIND_ENUMERATION); + fwupd_bios_setting_set_kind(attr1, FWUPD_BIOS_SETTING_KIND_ENUMERATION); + g_assert_cmpint(fwupd_bios_setting_get_kind(attr1), + ==, + FWUPD_BIOS_SETTING_KIND_ENUMERATION); - fwupd_bios_attr_set_description(attr1, "Controls Secure boot"); - g_assert_cmpstr(fwupd_bios_attr_get_description(attr1), ==, "Controls Secure boot"); - fwupd_bios_attr_set_current_value(attr1, "Disabled"); - g_assert_cmpstr(fwupd_bios_attr_get_current_value(attr1), ==, "Disabled"); + fwupd_bios_setting_set_description(attr1, "Controls Secure boot"); + g_assert_cmpstr(fwupd_bios_setting_get_description(attr1), ==, "Controls Secure boot"); + fwupd_bios_setting_set_current_value(attr1, "Disabled"); + g_assert_cmpstr(fwupd_bios_setting_get_current_value(attr1), ==, "Disabled"); - fwupd_bios_attr_add_possible_value(attr1, "Disabled"); - fwupd_bios_attr_add_possible_value(attr1, "Enabled"); - g_assert_true(fwupd_bios_attr_has_possible_value(attr1, "Disabled")); - g_assert_false(fwupd_bios_attr_has_possible_value(attr1, "NOT_GOING_TO_EXIST")); + fwupd_bios_setting_add_possible_value(attr1, "Disabled"); + fwupd_bios_setting_add_possible_value(attr1, "Enabled"); + g_assert_true(fwupd_bios_setting_has_possible_value(attr1, "Disabled")); + g_assert_false(fwupd_bios_setting_has_possible_value(attr1, "NOT_GOING_TO_EXIST")); - str1 = fwupd_bios_attr_to_string(attr1); + str1 = fwupd_bios_setting_to_string(attr1); ret = fu_test_compare_lines(str1, " Name: UEFISecureBoot\n" " Description: Controls Secure boot\n" " Filename: /path/to/bar\n" - " BiosAttrType: 1\n" - " BiosAttrCurrentValue: Disabled\n" - " BiosAttrReadOnly: False\n" - " BiosAttrPossibleValues: Disabled\n" - " BiosAttrPossibleValues: Enabled\n", + " BiosSettingType: 1\n" + " BiosSettingCurrentValue: Disabled\n" + " BiosSettingReadOnly: False\n" + " BiosSettingPossibleValues: Disabled\n" + " BiosSettingPossibleValues: Enabled\n", &error); g_assert_no_error(error); g_assert_true(ret); /* roundtrip GVariant */ - data1 = fwupd_bios_attr_to_variant(attr1, TRUE); - attr2 = fwupd_bios_attr_from_variant(data1); - str2 = fwupd_bios_attr_to_string(attr2); + data1 = fwupd_bios_setting_to_variant(attr1, TRUE); + attr2 = fwupd_bios_setting_from_variant(data1); + str2 = fwupd_bios_setting_to_string(attr2); ret = fu_test_compare_lines(str2, " Name: UEFISecureBoot\n" " Description: Controls Secure boot\n" " Filename: /path/to/bar\n" - " BiosAttrType: 1\n" - " BiosAttrCurrentValue: Disabled\n" - " BiosAttrReadOnly: False\n" - " BiosAttrPossibleValues: Disabled\n" - " BiosAttrPossibleValues: Enabled\n", + " BiosSettingType: 1\n" + " BiosSettingCurrentValue: Disabled\n" + " BiosSettingReadOnly: False\n" + " BiosSettingPossibleValues: Disabled\n" + " BiosSettingPossibleValues: Enabled\n", &error); g_assert_no_error(error); g_assert_true(ret); @@ -1446,13 +1448,13 @@ fwupd_bios_attrs_func(void) g_assert_nonnull(json1); ret = fu_test_compare_lines(json1, "{\n" - " \"BiosAttrReadOnly\" : \"false\",\n" - " \"BiosAttrType\" : 1,\n" + " \"BiosSettingReadOnly\" : \"false\",\n" + " \"BiosSettingType\" : 1,\n" " \"Name\" : \"UEFISecureBoot\",\n" " \"Description\" : \"Controls Secure boot\",\n" " \"Filename\" : \"/path/to/bar\",\n" - " \"BiosAttrCurrentValue\" : \"Disabled\",\n" - " \"BiosAttrPossibleValues\" : [\n" + " \"BiosSettingCurrentValue\" : \"Disabled\",\n" + " \"BiosSettingPossibleValues\" : [\n" " \"Disabled\",\n" " \"Enabled\"\n" " ]\n" @@ -1465,7 +1467,7 @@ fwupd_bios_attrs_func(void) ret = json_parser_load_from_data(parser, json1, -1, &error); g_assert_no_error(error); g_assert_true(ret); - ret = fwupd_bios_attr_from_json(attr2, json_parser_get_root(parser), &error); + ret = fwupd_bios_setting_from_json(attr2, json_parser_get_root(parser), &error); if (g_error_matches(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { g_test_skip(error->message); return; @@ -1473,24 +1475,24 @@ fwupd_bios_attrs_func(void) g_assert_no_error(error); g_assert_true(ret); - str3 = fwupd_bios_attr_to_string(attr2); + str3 = fwupd_bios_setting_to_string(attr2); ret = fu_test_compare_lines(str3, str1, &error); g_assert_no_error(error); g_assert_true(ret); /* make sure we filter CurrentValue if not trusted */ - data2 = fwupd_bios_attr_to_variant(attr1, TRUE); + data2 = fwupd_bios_setting_to_variant(attr1, TRUE); json2 = fwupd_attr_to_json_string(G_OBJECT(attr1), &error); g_assert_no_error(error); g_assert_nonnull(json2); ret = fu_test_compare_lines(json2, "{\n" - " \"BiosAttrReadOnly\" : \"false\",\n" - " \"BiosAttrType\" : 1,\n" + " \"BiosSettingReadOnly\" : \"false\",\n" + " \"BiosSettingType\" : 1,\n" " \"Name\" : \"UEFISecureBoot\",\n" " \"Description\" : \"Controls Secure boot\",\n" " \"Filename\" : \"/path/to/bar\",\n" - " \"BiosAttrPossibleValues\" : [\n" + " \"BiosSettingPossibleValues\" : [\n" " \"Disabled\",\n" " \"Enabled\"\n" " ]\n" @@ -1524,7 +1526,7 @@ main(int argc, char **argv) g_test_add_func("/fwupd/remote{local}", fwupd_remote_local_func); g_test_add_func("/fwupd/remote{duplicate}", fwupd_remote_duplicate_func); g_test_add_func("/fwupd/remote{auth}", fwupd_remote_auth_func); - g_test_add_func("/fwupd/bios-attrs", fwupd_bios_attrs_func); + g_test_add_func("/fwupd/bios-attrs", fwupd_bios_settings_func); if (fwupd_has_system_bus()) { g_test_add_func("/fwupd/client{remotes}", fwupd_client_remotes_func); g_test_add_func("/fwupd/client{devices}", fwupd_client_devices_func); diff --git a/libfwupd/fwupd.h b/libfwupd/fwupd.h index 3b29e938e..74a56e806 100644 --- a/libfwupd/fwupd.h +++ b/libfwupd/fwupd.h @@ -8,7 +8,7 @@ #define __FWUPD_H_INSIDE__ -#include +#include #include #include #include diff --git a/libfwupd/fwupd.map b/libfwupd/fwupd.map index 7b9f42120..b0c544cf4 100644 --- a/libfwupd/fwupd.map +++ b/libfwupd/fwupd.map @@ -803,49 +803,49 @@ LIBFWUPD_1.8.3 { LIBFWUPD_1.8.4 { global: - fwupd_bios_attr_add_possible_value; - fwupd_bios_attr_array_from_variant; - fwupd_bios_attr_from_json; - fwupd_bios_attr_from_variant; - fwupd_bios_attr_get_current_value; - fwupd_bios_attr_get_description; - fwupd_bios_attr_get_id; - fwupd_bios_attr_get_kind; - fwupd_bios_attr_get_lower_bound; - fwupd_bios_attr_get_name; - fwupd_bios_attr_get_path; - fwupd_bios_attr_get_possible_values; - fwupd_bios_attr_get_read_only; - fwupd_bios_attr_get_scalar_increment; - fwupd_bios_attr_get_type; - fwupd_bios_attr_get_upper_bound; - fwupd_bios_attr_has_possible_value; - fwupd_bios_attr_map_possible_value; - fwupd_bios_attr_new; - fwupd_bios_attr_set_current_value; - fwupd_bios_attr_set_description; - fwupd_bios_attr_set_id; - fwupd_bios_attr_set_kind; - fwupd_bios_attr_set_lower_bound; - fwupd_bios_attr_set_name; - fwupd_bios_attr_set_path; - fwupd_bios_attr_set_read_only; - fwupd_bios_attr_set_scalar_increment; - fwupd_bios_attr_set_upper_bound; - fwupd_bios_attr_to_json; - fwupd_bios_attr_to_string; - fwupd_bios_attr_to_variant; - fwupd_client_get_bios_attrs; - fwupd_client_get_bios_attrs_async; - fwupd_client_get_bios_attrs_finish; - fwupd_client_modify_bios_attr; - fwupd_client_modify_bios_attr_async; - fwupd_client_modify_bios_attr_finish; - fwupd_security_attr_get_bios_attr_current_value; - fwupd_security_attr_get_bios_attr_id; - fwupd_security_attr_get_bios_attr_target_value; - fwupd_security_attr_set_bios_attr_current_value; - fwupd_security_attr_set_bios_attr_id; - fwupd_security_attr_set_bios_attr_target_value; + fwupd_bios_setting_add_possible_value; + fwupd_bios_setting_array_from_variant; + fwupd_bios_setting_from_json; + fwupd_bios_setting_from_variant; + fwupd_bios_setting_get_current_value; + fwupd_bios_setting_get_description; + fwupd_bios_setting_get_id; + fwupd_bios_setting_get_kind; + fwupd_bios_setting_get_lower_bound; + fwupd_bios_setting_get_name; + fwupd_bios_setting_get_path; + fwupd_bios_setting_get_possible_values; + fwupd_bios_setting_get_read_only; + fwupd_bios_setting_get_scalar_increment; + fwupd_bios_setting_get_type; + fwupd_bios_setting_get_upper_bound; + fwupd_bios_setting_has_possible_value; + fwupd_bios_setting_map_possible_value; + fwupd_bios_setting_new; + fwupd_bios_setting_set_current_value; + fwupd_bios_setting_set_description; + fwupd_bios_setting_set_id; + fwupd_bios_setting_set_kind; + fwupd_bios_setting_set_lower_bound; + fwupd_bios_setting_set_name; + fwupd_bios_setting_set_path; + fwupd_bios_setting_set_read_only; + fwupd_bios_setting_set_scalar_increment; + fwupd_bios_setting_set_upper_bound; + fwupd_bios_setting_to_json; + fwupd_bios_setting_to_string; + fwupd_bios_setting_to_variant; + fwupd_client_get_bios_settings; + fwupd_client_get_bios_settings_async; + fwupd_client_get_bios_settings_finish; + fwupd_client_modify_bios_setting; + fwupd_client_modify_bios_setting_async; + fwupd_client_modify_bios_setting_finish; + fwupd_security_attr_get_bios_setting_current_value; + fwupd_security_attr_get_bios_setting_id; + fwupd_security_attr_get_bios_setting_target_value; + fwupd_security_attr_set_bios_setting_current_value; + fwupd_security_attr_set_bios_setting_id; + fwupd_security_attr_set_bios_setting_target_value; local: *; } LIBFWUPD_1.8.3; diff --git a/libfwupd/meson.build b/libfwupd/meson.build index 0ba3106a5..f941a8aa4 100644 --- a/libfwupd/meson.build +++ b/libfwupd/meson.build @@ -23,7 +23,7 @@ install_headers([ 'fwupd-error.h', 'fwupd-remote.h', 'fwupd-request.h', - 'fwupd-bios-attr.h', + 'fwupd-bios-setting.h', 'fwupd-security-attr.h', 'fwupd-release.h', 'fwupd-plugin.h', @@ -47,7 +47,7 @@ libfwupd_src = [ 'fwupd-device.c', # fuzzing 'fwupd-enums.c', # fuzzing 'fwupd-error.c', # fuzzing - 'fwupd-bios-attr.c', # fuzzing + 'fwupd-bios-setting.c', # fuzzing 'fwupd-security-attr.c', # fuzzing 'fwupd-release.c', # fuzzing 'fwupd-plugin.c', @@ -113,9 +113,9 @@ if introspection.allowed() 'fwupd-enums-private.h', 'fwupd-error.c', 'fwupd-error.h', - 'fwupd-bios-attr.c', - 'fwupd-bios-attr.h', - 'fwupd-bios-attr-private.h', + 'fwupd-bios-setting.c', + 'fwupd-bios-setting.h', + 'fwupd-bios-setting-private.h', 'fwupd-security-attr.c', 'fwupd-security-attr.h', 'fwupd-security-attr-private.h', diff --git a/libfwupdplugin/fu-bios-attrs-private.h b/libfwupdplugin/fu-bios-attrs-private.h deleted file mode 100644 index 63859247f..000000000 --- a/libfwupdplugin/fu-bios-attrs-private.h +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (C) 2022 Mario Limonciello - * - * SPDX-License-Identifier: LGPL-2.1+ - */ - -#pragma once - -#include - -#include "fu-bios-attrs.h" - -gboolean -fu_bios_attrs_setup(FuBiosAttrs *self, GError **error); - -GPtrArray * -fu_bios_attrs_get_all(FuBiosAttrs *self); - -GVariant * -fu_bios_attrs_to_variant(FuBiosAttrs *self, gboolean trusted); -gboolean -fu_bios_attrs_from_json(FuBiosAttrs *self, JsonNode *json_node, GError **error); diff --git a/libfwupdplugin/fu-bios-attrs.h b/libfwupdplugin/fu-bios-attrs.h deleted file mode 100644 index dfd173572..000000000 --- a/libfwupdplugin/fu-bios-attrs.h +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (C) 2022 Mario Limonciello - * - * SPDX-License-Identifier: LGPL-2.1+ - */ - -#pragma once - -#include - -#define FU_TYPE_FIRMWARE_ATTRS (fu_bios_attrs_get_type()) - -G_DECLARE_FINAL_TYPE(FuBiosAttrs, fu_bios_attrs, FU, BIOS_ATTRS, GObject) - -FuBiosAttrs * -fu_bios_attrs_new(void); -gboolean -fu_bios_attrs_get_pending_reboot(FuBiosAttrs *self, gboolean *result, GError **error); -FwupdBiosAttr * -fu_bios_attrs_get_attr(FuBiosAttrs *self, const gchar *val); diff --git a/libfwupdplugin/fu-bios-settings-private.h b/libfwupdplugin/fu-bios-settings-private.h new file mode 100644 index 000000000..cf54383a7 --- /dev/null +++ b/libfwupdplugin/fu-bios-settings-private.h @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2022 Mario Limonciello + * + * SPDX-License-Identifier: LGPL-2.1+ + */ + +#pragma once + +#include + +#include "fu-bios-settings.h" + +gboolean +fu_bios_settings_setup(FuBiosSettings *self, GError **error); + +GPtrArray * +fu_bios_settings_get_all(FuBiosSettings *self); + +GVariant * +fu_bios_settings_to_variant(FuBiosSettings *self, gboolean trusted); +gboolean +fu_bios_settings_from_json(FuBiosSettings *self, JsonNode *json_node, GError **error); diff --git a/libfwupdplugin/fu-bios-attrs.c b/libfwupdplugin/fu-bios-settings.c similarity index 57% rename from libfwupdplugin/fu-bios-attrs.c rename to libfwupdplugin/fu-bios-settings.c index 4e0bac2e9..2015fb117 100644 --- a/libfwupdplugin/fu-bios-attrs.c +++ b/libfwupdplugin/fu-bios-settings.c @@ -4,48 +4,48 @@ * SPDX-License-Identifier: LGPL-2.1+ */ -#define G_LOG_DOMAIN "FuBiosAttrs" +#define G_LOG_DOMAIN "FuBiosSettings" #include "config.h" -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-error.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-path.h" #include "fu-string.h" -struct _FuBiosAttrs { +struct _FuBiosSettings { GObject parent_instance; GPtrArray *attrs; }; -G_DEFINE_TYPE(FuBiosAttrs, fu_bios_attrs, G_TYPE_OBJECT) +G_DEFINE_TYPE(FuBiosSettings, fu_bios_settings, G_TYPE_OBJECT) static void -fu_bios_attrs_finalize(GObject *obj) +fu_bios_settings_finalize(GObject *obj) { - FuBiosAttrs *self = FU_BIOS_ATTRS(obj); + FuBiosSettings *self = FU_BIOS_SETTINGS(obj); g_ptr_array_unref(self->attrs); - G_OBJECT_CLASS(fu_bios_attrs_parent_class)->finalize(obj); + G_OBJECT_CLASS(fu_bios_settings_parent_class)->finalize(obj); } static void -fu_bios_attrs_class_init(FuBiosAttrsClass *klass) +fu_bios_settings_class_init(FuBiosSettingsClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS(klass); - object_class->finalize = fu_bios_attrs_finalize; + object_class->finalize = fu_bios_settings_finalize; } static gboolean -fu_bios_attr_get_key(FwupdBiosAttr *attr, const gchar *key, gchar **value_out, GError **error) +fu_bios_setting_get_key(FwupdBiosSetting *attr, const gchar *key, gchar **value_out, GError **error) { g_autofree gchar *tmp = NULL; - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(attr), FALSE); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(attr), FALSE); g_return_val_if_fail(&value_out != NULL, FALSE); - tmp = g_build_filename(fwupd_bios_attr_get_path(attr), key, NULL); + tmp = g_build_filename(fwupd_bios_setting_get_path(attr), key, NULL); if (!g_file_get_contents(tmp, value_out, NULL, error)) { g_prefix_error(error, "failed to load %s: ", key); return FALSE; @@ -55,26 +55,26 @@ fu_bios_attr_get_key(FwupdBiosAttr *attr, const gchar *key, gchar **value_out, G } static gboolean -fu_bios_attr_set_description(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_description(FwupdBiosSetting *attr, GError **error) { g_autofree gchar *data = NULL; - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(attr), FALSE); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(attr), FALSE); - if (!fu_bios_attr_get_key(attr, "display_name", &data, error)) + if (!fu_bios_setting_get_key(attr, "display_name", &data, error)) return FALSE; - fwupd_bios_attr_set_description(attr, data); + fwupd_bios_setting_set_description(attr, data); return TRUE; } static guint64 -fu_bios_attr_get_key_as_integer(FwupdBiosAttr *attr, const gchar *key, GError **error) +fu_bios_setting_get_key_as_integer(FwupdBiosSetting *attr, const gchar *key, GError **error) { g_autofree gchar *str = NULL; guint64 tmp; - if (!fu_bios_attr_get_key(attr, key, &str, error)) + if (!fu_bios_setting_get_key(attr, key, &str, error)) return G_MAXUINT64; if (!fu_strtoull(str, &tmp, 0, G_MAXUINT64, error)) { g_prefix_error(error, "failed to convert %s to integer: ", key); @@ -84,12 +84,12 @@ fu_bios_attr_get_key_as_integer(FwupdBiosAttr *attr, const gchar *key, GError ** } static gboolean -fu_bios_attr_set_enumeration_attrs(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_enumeration_attrs(FwupdBiosSetting *attr, GError **error) { const gchar *delimiters[] = {",", ";", NULL}; g_autofree gchar *str = NULL; - if (!fu_bios_attr_get_key(attr, "possible_values", &str, error)) + if (!fu_bios_setting_get_key(attr, "possible_values", &str, error)) return FALSE; for (guint j = 0; delimiters[j] != NULL; j++) { g_auto(GStrv) vals = NULL; @@ -97,59 +97,59 @@ fu_bios_attr_set_enumeration_attrs(FwupdBiosAttr *attr, GError **error) continue; vals = fu_strsplit(str, strlen(str), delimiters[j], -1); if (vals[0] != NULL) - fwupd_bios_attr_set_kind(attr, FWUPD_BIOS_ATTR_KIND_ENUMERATION); + fwupd_bios_setting_set_kind(attr, FWUPD_BIOS_SETTING_KIND_ENUMERATION); for (guint i = 0; vals[i] != NULL && vals[i][0] != '\0'; i++) - fwupd_bios_attr_add_possible_value(attr, vals[i]); + fwupd_bios_setting_add_possible_value(attr, vals[i]); } return TRUE; } static gboolean -fu_bios_attr_set_string_attrs(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_string_attrs(FwupdBiosSetting *attr, GError **error) { guint64 tmp; - tmp = fu_bios_attr_get_key_as_integer(attr, "min_length", error); + tmp = fu_bios_setting_get_key_as_integer(attr, "min_length", error); if (tmp == G_MAXUINT64) return FALSE; - fwupd_bios_attr_set_lower_bound(attr, tmp); - tmp = fu_bios_attr_get_key_as_integer(attr, "max_length", error); + fwupd_bios_setting_set_lower_bound(attr, tmp); + tmp = fu_bios_setting_get_key_as_integer(attr, "max_length", error); if (tmp == G_MAXUINT64) return FALSE; - fwupd_bios_attr_set_upper_bound(attr, tmp); - fwupd_bios_attr_set_kind(attr, FWUPD_BIOS_ATTR_KIND_STRING); + fwupd_bios_setting_set_upper_bound(attr, tmp); + fwupd_bios_setting_set_kind(attr, FWUPD_BIOS_SETTING_KIND_STRING); return TRUE; } static gboolean -fu_bios_attr_set_integer_attrs(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_integer_attrs(FwupdBiosSetting *attr, GError **error) { guint64 tmp; - tmp = fu_bios_attr_get_key_as_integer(attr, "min_value", error); + tmp = fu_bios_setting_get_key_as_integer(attr, "min_value", error); if (tmp == G_MAXUINT64) return FALSE; - fwupd_bios_attr_set_lower_bound(attr, tmp); - tmp = fu_bios_attr_get_key_as_integer(attr, "max_value", error); + fwupd_bios_setting_set_lower_bound(attr, tmp); + tmp = fu_bios_setting_get_key_as_integer(attr, "max_value", error); if (tmp == G_MAXUINT64) return FALSE; - fwupd_bios_attr_set_upper_bound(attr, tmp); - tmp = fu_bios_attr_get_key_as_integer(attr, "scalar_increment", error); + fwupd_bios_setting_set_upper_bound(attr, tmp); + tmp = fu_bios_setting_get_key_as_integer(attr, "scalar_increment", error); if (tmp == G_MAXUINT64) return FALSE; - fwupd_bios_attr_set_scalar_increment(attr, tmp); - fwupd_bios_attr_set_kind(attr, FWUPD_BIOS_ATTR_KIND_INTEGER); + fwupd_bios_setting_set_scalar_increment(attr, tmp); + fwupd_bios_setting_set_kind(attr, FWUPD_BIOS_SETTING_KIND_INTEGER); return TRUE; } static gboolean -fu_bios_attr_set_current_value(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_current_value(FwupdBiosSetting *attr, GError **error) { g_autofree gchar *str = NULL; - if (!fu_bios_attr_get_key(attr, "current_value", &str, error)) + if (!fu_bios_setting_get_key(attr, "current_value", &str, error)) return FALSE; - fwupd_bios_attr_set_current_value(attr, str); + fwupd_bios_setting_set_current_value(attr, str); return TRUE; } @@ -158,24 +158,24 @@ fu_bios_attr_set_current_value(FwupdBiosAttr *attr, GError **error) #define LENOVO_EXCLUDED "[Excluded from boot order:" static void -fu_bios_attr_fixup_read_only(FwupdBiosAttr *attr) +fu_bios_setting_fixup_read_only(FwupdBiosSetting *attr) { - if (fwupd_bios_attr_get_kind(attr) == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { + if (fwupd_bios_setting_get_kind(attr) == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { struct { const gchar *id; const gchar *value; } read_only_map[] = {{"com.thinklmi.SecureBoot", "Enable"}, {"com.dell-wmi-sysman.SecureBoot", "Enabled"}, {NULL, NULL}}; - const gchar *id = fwupd_bios_attr_get_id(attr); - const gchar *tmp = fwupd_bios_attr_get_current_value(attr); + const gchar *id = fwupd_bios_setting_get_id(attr); + const gchar *tmp = fwupd_bios_setting_get_current_value(attr); for (guint i = 0; read_only_map[i].id != NULL; i++) { if (g_strcmp0(id, read_only_map[i].id) != 0) continue; if (read_only_map[i].value == NULL || g_strcmp0(tmp, read_only_map[i].value) == 0) { - fwupd_bios_attr_set_read_only(attr, TRUE); + fwupd_bios_setting_set_read_only(attr, TRUE); return; } } @@ -183,9 +183,9 @@ fu_bios_attr_fixup_read_only(FwupdBiosAttr *attr) } static gboolean -fu_bios_attr_fixup_lenovo_thinklmi_bug(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_fixup_lenovo_thinklmi_bug(FwupdBiosSetting *attr, GError **error) { - const gchar *current_value = fwupd_bios_attr_get_current_value(attr); + const gchar *current_value = fwupd_bios_setting_get_current_value(attr); const gchar *tmp; g_autoptr(GString) str = NULL; g_autoptr(GString) right_str = NULL; @@ -193,14 +193,14 @@ fu_bios_attr_fixup_lenovo_thinklmi_bug(FwupdBiosAttr *attr, GError **error) if (g_getenv("FWUPD_BIOS_SETTING_VERBOSE") != NULL) { g_debug("Processing %s: (%s)", - fwupd_bios_attr_get_name(attr), - fwupd_bios_attr_get_current_value(attr)); + fwupd_bios_setting_get_name(attr), + fwupd_bios_setting_get_current_value(attr)); } /* We have read only */ tmp = g_strrstr(current_value, LENOVO_READ_ONLY_NEEDLE); if (tmp != NULL) { - fwupd_bios_attr_set_read_only(attr, TRUE); + fwupd_bios_setting_set_read_only(attr, TRUE); str = g_string_new_len(current_value, tmp - current_value); } else { str = g_string_new(current_value); @@ -214,7 +214,7 @@ fu_bios_attr_fixup_lenovo_thinklmi_bug(FwupdBiosAttr *attr, GError **error) vals = fu_strsplit(str->str, str->len, ";", 2); /* use left half for current value */ - fwupd_bios_attr_set_current_value(attr, vals[0]); + fwupd_bios_setting_set_current_value(attr, vals[0]); if (vals[1] == NULL) return TRUE; @@ -233,7 +233,7 @@ fu_bios_attr_fixup_lenovo_thinklmi_bug(FwupdBiosAttr *attr, GError **error) g_string_erase(right_str, 0, strlen(LENOVO_POSSIBLE_NEEDLE)); possible_vals = fu_strsplit(right_str->str, right_str->len, ",", -1); if (possible_vals[0] != NULL) - fwupd_bios_attr_set_kind(attr, FWUPD_BIOS_ATTR_KIND_ENUMERATION); + fwupd_bios_setting_set_kind(attr, FWUPD_BIOS_SETTING_KIND_ENUMERATION); for (guint i = 0; possible_vals[i] != NULL && possible_vals[i][0] != '\0'; i++) { /* last string */ if (possible_vals[i + 1] == NULL && @@ -242,36 +242,36 @@ fu_bios_attr_fixup_lenovo_thinklmi_bug(FwupdBiosAttr *attr, GError **error) strlen(possible_vals[i]), "]", -1); - fwupd_bios_attr_add_possible_value(attr, stripped_vals[0]); + fwupd_bios_setting_add_possible_value(attr, stripped_vals[0]); continue; } - fwupd_bios_attr_add_possible_value(attr, possible_vals[i]); + fwupd_bios_setting_add_possible_value(attr, possible_vals[i]); } } return TRUE; } static gboolean -fu_bios_attrs_run_folder_fixups(FwupdBiosAttr *attr, GError **error) +fu_bios_settings_run_folder_fixups(FwupdBiosSetting *attr, GError **error) { - if (fwupd_bios_attr_get_kind(attr) == FWUPD_BIOS_ATTR_KIND_UNKNOWN) - return fu_bios_attr_fixup_lenovo_thinklmi_bug(attr, error); + if (fwupd_bios_setting_get_kind(attr) == FWUPD_BIOS_SETTING_KIND_UNKNOWN) + return fu_bios_setting_fixup_lenovo_thinklmi_bug(attr, error); return TRUE; } static gboolean -fu_bios_attr_set_type(FuBiosAttrs *self, FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_type(FuBiosSettings *self, FwupdBiosSetting *attr, GError **error) { gboolean kernel_bug = FALSE; g_autofree gchar *data = NULL; g_autoptr(GError) error_key = NULL; g_autoptr(GError) error_local = NULL; - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), FALSE); - g_return_val_if_fail(FWUPD_IS_BIOS_ATTR(attr), FALSE); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), FALSE); + g_return_val_if_fail(FWUPD_IS_BIOS_SETTING(attr), FALSE); /* lenovo thinklmi seems to be missing it even though it's mandatory :/ */ - if (!fu_bios_attr_get_key(attr, "type", &data, &error_key)) { + if (!fu_bios_setting_get_key(attr, "type", &data, &error_key)) { #if GLIB_CHECK_VERSION(2, 64, 0) g_warning_once("KERNEL BUG: 'type' attribute not exported: (%s)", error_key->message); @@ -282,18 +282,18 @@ fu_bios_attr_set_type(FuBiosAttrs *self, FwupdBiosAttr *attr, GError **error) } if (g_strcmp0(data, "enumeration") == 0 || kernel_bug) { - if (!fu_bios_attr_set_enumeration_attrs(attr, &error_local)) { + if (!fu_bios_setting_set_enumeration_attrs(attr, &error_local)) { if (g_getenv("FWUPD_BIOS_SETTING_VERBOSE") != NULL) g_debug("failed to add enumeration attrs: %s", error_local->message); } } else if (g_strcmp0(data, "integer") == 0) { - if (!fu_bios_attr_set_integer_attrs(attr, &error_local)) { + if (!fu_bios_setting_set_integer_attrs(attr, &error_local)) { if (g_getenv("FWUPD_BIOS_SETTING_VERBOSE") != NULL) g_debug("failed to add integer attrs: %s", error_local->message); } } else if (g_strcmp0(data, "string") == 0) { - if (!fu_bios_attr_set_string_attrs(attr, &error_local)) { + if (!fu_bios_setting_set_string_attrs(attr, &error_local)) { if (g_getenv("FWUPD_BIOS_SETTING_VERBOSE") != NULL) g_debug("failed to add string attrs: %s", error_local->message); } @@ -305,70 +305,70 @@ fu_bios_attr_set_type(FuBiosAttrs *self, FwupdBiosAttr *attr, GError **error) * https://github.com/torvalds/linux/blob/v5.18/Documentation/ABI/testing/sysfs-class-firmware-attributes#L300 */ static gboolean -fu_bios_attr_set_file_attributes(FwupdBiosAttr *attr, GError **error) +fu_bios_setting_set_file_attributes(FwupdBiosSetting *attr, GError **error) { g_autofree gchar *value = NULL; - if (g_strcmp0(fwupd_bios_attr_get_name(attr), FWUPD_BIOS_ATTR_PENDING_REBOOT) != 0) { + if (g_strcmp0(fwupd_bios_setting_get_name(attr), FWUPD_BIOS_SETTING_PENDING_REBOOT) != 0) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, "%s attribute is not supported", - fwupd_bios_attr_get_name(attr)); + fwupd_bios_setting_get_name(attr)); return FALSE; } - if (!fu_bios_attr_get_key(attr, NULL, &value, error)) + if (!fu_bios_setting_get_key(attr, NULL, &value, error)) return FALSE; - fwupd_bios_attr_set_current_value(attr, value); - fwupd_bios_attr_set_read_only(attr, TRUE); + fwupd_bios_setting_set_current_value(attr, value); + fwupd_bios_setting_set_read_only(attr, TRUE); return TRUE; } static gboolean -fu_bios_attrs_set_folder_attributes(FuBiosAttrs *self, FwupdBiosAttr *attr, GError **error) +fu_bios_settings_set_folder_attributes(FuBiosSettings *self, FwupdBiosSetting *attr, GError **error) { g_autoptr(GError) error_local = NULL; - if (!fu_bios_attr_set_type(self, attr, error)) + if (!fu_bios_setting_set_type(self, attr, error)) return FALSE; - if (!fu_bios_attr_set_current_value(attr, error)) + if (!fu_bios_setting_set_current_value(attr, error)) return FALSE; - if (!fu_bios_attr_set_description(attr, &error_local)) + if (!fu_bios_setting_set_description(attr, &error_local)) g_debug("%s", error_local->message); - if (!fu_bios_attrs_run_folder_fixups(attr, error)) + if (!fu_bios_settings_run_folder_fixups(attr, error)) return FALSE; return TRUE; } static gboolean -fu_bios_attrs_populate_attribute(FuBiosAttrs *self, - const gchar *driver, - const gchar *path, - const gchar *name, - GError **error) +fu_bios_settings_populate_attribute(FuBiosSettings *self, + const gchar *driver, + const gchar *path, + const gchar *name, + GError **error) { - g_autoptr(FwupdBiosAttr) attr = NULL; + g_autoptr(FwupdBiosSetting) attr = NULL; g_autofree gchar *id = NULL; - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), FALSE); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), FALSE); g_return_val_if_fail(name != NULL, FALSE); g_return_val_if_fail(path != NULL, FALSE); g_return_val_if_fail(driver != NULL, FALSE); - attr = fwupd_bios_attr_new(name, path); + attr = fwupd_bios_setting_new(name, path); if (g_file_test(path, G_FILE_TEST_IS_DIR)) { - if (!fu_bios_attrs_set_folder_attributes(self, attr, error)) + if (!fu_bios_settings_set_folder_attributes(self, attr, error)) return FALSE; } else { - if (!fu_bios_attr_set_file_attributes(attr, error)) + if (!fu_bios_setting_set_file_attributes(attr, error)) return FALSE; } id = g_strdup_printf("com.%s.%s", driver, name); - fwupd_bios_attr_set_id(attr, id); - fu_bios_attr_fixup_read_only(attr); + fwupd_bios_setting_set_id(attr, id); + fu_bios_setting_fixup_read_only(attr); g_ptr_array_add(self->attrs, g_object_ref(attr)); @@ -376,8 +376,8 @@ fu_bios_attrs_populate_attribute(FuBiosAttrs *self, } /** - * fu_bios_attrs_setup: - * @self: a #FuBiosAttrs + * fu_bios_settings_setup: + * @self: a #FuBiosSettings * * Clears all attributes and re-initializes them. * Mostly used for the test suite, but could potentially be connected to udev @@ -386,13 +386,13 @@ fu_bios_attrs_populate_attribute(FuBiosAttrs *self, * Since: 1.8.4 **/ gboolean -fu_bios_attrs_setup(FuBiosAttrs *self, GError **error) +fu_bios_settings_setup(FuBiosSettings *self, GError **error) { guint count = 0; g_autofree gchar *sysfsfwdir = NULL; g_autoptr(GDir) class_dir = NULL; - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), FALSE); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), FALSE); if (self->attrs->len > 0) { g_debug("re-initializing attributes"); @@ -425,11 +425,11 @@ fu_bios_attrs_setup(FuBiosAttrs *self, GError **error) if (name == NULL) break; full_path = g_build_filename(path, name, NULL); - if (!fu_bios_attrs_populate_attribute(self, - driver, - full_path, - name, - &error_local)) { + if (!fu_bios_settings_populate_attribute(self, + driver, + full_path, + name, + &error_local)) { if (g_error_matches(error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { @@ -447,30 +447,30 @@ fu_bios_attrs_setup(FuBiosAttrs *self, GError **error) } static void -fu_bios_attrs_init(FuBiosAttrs *self) +fu_bios_settings_init(FuBiosSettings *self) { self->attrs = g_ptr_array_new_with_free_func((GDestroyNotify)g_object_unref); } /** - * fu_bios_attrs_get_attr: - * @self: a #FuBiosAttrs + * fu_bios_settings_get_attr: + * @self: a #FuBiosSettings * @val: the attribute ID or name to check for * * Returns: (transfer none): the attribute with the given ID or name or NULL if it doesn't exist. * * Since: 1.8.4 **/ -FwupdBiosAttr * -fu_bios_attrs_get_attr(FuBiosAttrs *self, const gchar *val) +FwupdBiosSetting * +fu_bios_settings_get_attr(FuBiosSettings *self, const gchar *val) { - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), NULL); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), NULL); g_return_val_if_fail(val != NULL, NULL); for (guint i = 0; i < self->attrs->len; i++) { - FwupdBiosAttr *attr = g_ptr_array_index(self->attrs, i); - const gchar *tmp_id = fwupd_bios_attr_get_id(attr); - const gchar *tmp_name = fwupd_bios_attr_get_name(attr); + FwupdBiosSetting *attr = g_ptr_array_index(self->attrs, i); + const gchar *tmp_id = fwupd_bios_setting_get_id(attr); + const gchar *tmp_name = fwupd_bios_setting_get_name(attr); if (g_strcmp0(val, tmp_id) == 0 || g_strcmp0(val, tmp_name) == 0) return attr; } @@ -478,25 +478,25 @@ fu_bios_attrs_get_attr(FuBiosAttrs *self, const gchar *val) } /** - * fu_bios_attrs_get_all: - * @self: a #FuBiosAttrs + * fu_bios_settings_get_all: + * @self: a #FuBiosSettings * * Gets all the attributes in the object. * - * Returns: (transfer container) (element-type FwupdBiosAttr): attributes + * Returns: (transfer container) (element-type FwupdBiosSetting): attributes * * Since: 1.8.4 **/ GPtrArray * -fu_bios_attrs_get_all(FuBiosAttrs *self) +fu_bios_settings_get_all(FuBiosSettings *self) { - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), NULL); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), NULL); return g_ptr_array_ref(self->attrs); } /** - * fu_bios_attrs_get_pending_reboot: - * @self: a #FuBiosAttrs + * fu_bios_settings_get_pending_reboot: + * @self: a #FuBiosSettings * @result: (out): Whether a reboot is pending * @error: (nullable): optional return location for an error * @@ -505,21 +505,21 @@ fu_bios_attrs_get_all(FuBiosAttrs *self) * Since: 1.8.4 **/ gboolean -fu_bios_attrs_get_pending_reboot(FuBiosAttrs *self, gboolean *result, GError **error) +fu_bios_settings_get_pending_reboot(FuBiosSettings *self, gboolean *result, GError **error) { - FwupdBiosAttr *attr; + FwupdBiosSetting *attr; const gchar *data; guint64 val = 0; g_return_val_if_fail(result != NULL, FALSE); - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), FALSE); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), FALSE); for (guint i = 0; i < self->attrs->len; i++) { const gchar *tmp; attr = g_ptr_array_index(self->attrs, i); - tmp = fwupd_bios_attr_get_name(attr); - if (g_strcmp0(tmp, FWUPD_BIOS_ATTR_PENDING_REBOOT) == 0) + tmp = fwupd_bios_setting_get_name(attr); + if (g_strcmp0(tmp, FWUPD_BIOS_SETTING_PENDING_REBOOT) == 0) break; attr = NULL; } @@ -532,7 +532,7 @@ fu_bios_attrs_get_pending_reboot(FuBiosAttrs *self, gboolean *result, GError **e return FALSE; } - data = fwupd_bios_attr_get_current_value(attr); + data = fwupd_bios_setting_get_current_value(attr); if (!fu_strtoull(data, &val, 0, G_MAXUINT32, error)) return FALSE; @@ -542,44 +542,44 @@ fu_bios_attrs_get_pending_reboot(FuBiosAttrs *self, gboolean *result, GError **e } /** - * fu_bios_attrs_to_variant: - * @self: a #FuBiosAttrs + * fu_bios_settings_to_variant: + * @self: a #FuBiosSettings * @trusted: whether the caller should receive trusted values * - * Serializes the #FwupdBiosAttr objects. + * Serializes the #FwupdBiosSetting objects. * * Returns: a #GVariant or %NULL * * Since: 1.8.4 **/ GVariant * -fu_bios_attrs_to_variant(FuBiosAttrs *self, gboolean trusted) +fu_bios_settings_to_variant(FuBiosSettings *self, gboolean trusted) { GVariantBuilder builder; - g_return_val_if_fail(FU_IS_BIOS_ATTRS(self), NULL); + g_return_val_if_fail(FU_IS_BIOS_SETTINGS(self), NULL); g_variant_builder_init(&builder, G_VARIANT_TYPE("aa{sv}")); for (guint i = 0; i < self->attrs->len; i++) { - FwupdBiosAttr *bios_attr = g_ptr_array_index(self->attrs, i); + FwupdBiosSetting *bios_setting = g_ptr_array_index(self->attrs, i); g_variant_builder_add_value(&builder, - fwupd_bios_attr_to_variant(bios_attr, trusted)); + fwupd_bios_setting_to_variant(bios_setting, trusted)); } return g_variant_new("(aa{sv})", &builder); } /** - * fu_bios_attrs_from_json: - * @self: a #FuBiosAttrs + * fu_bios_settings_from_json: + * @self: a #FuBiosSettings * - * Loads #FwupdBiosAttr objects from a JSON node. + * Loads #FwupdBiosSetting objects from a JSON node. * * Returns: TRUE if the objects were imported * * Since: 1.8.4 **/ gboolean -fu_bios_attrs_from_json(FuBiosAttrs *self, JsonNode *json_node, GError **error) +fu_bios_settings_from_json(FuBiosSettings *self, JsonNode *json_node, GError **error) { JsonArray *array; JsonObject *obj; @@ -592,18 +592,18 @@ fu_bios_attrs_from_json(FuBiosAttrs *self, JsonNode *json_node, GError **error) obj = json_node_get_object(json_node); /* this has to exist */ - if (!json_object_has_member(obj, "BiosAttributes")) { + if (!json_object_has_member(obj, "BiosSettings")) { g_set_error_literal(error, G_IO_ERROR, G_IO_ERROR_INVALID_DATA, - "no BiosAttributes property in object"); + "no BiosSettings property in object"); return FALSE; } - array = json_object_get_array_member(obj, "BiosAttributes"); + array = json_object_get_array_member(obj, "BiosSettings"); for (guint i = 0; i < json_array_get_length(array); i++) { JsonNode *node_tmp = json_array_get_element(array, i); - g_autoptr(FwupdBiosAttr) attr = fwupd_bios_attr_new(NULL, NULL); - if (!fwupd_bios_attr_from_json(attr, node_tmp, error)) + g_autoptr(FwupdBiosSetting) attr = fwupd_bios_setting_new(NULL, NULL); + if (!fwupd_bios_setting_from_json(attr, node_tmp, error)) return FALSE; g_ptr_array_add(self->attrs, g_steal_pointer(&attr)); } @@ -613,14 +613,14 @@ fu_bios_attrs_from_json(FuBiosAttrs *self, JsonNode *json_node, GError **error) } /** - * fu_bios_attrs_new: + * fu_bios_settings_new: * - * Returns: #FuBiosAttrs + * Returns: #FuBiosSettings * * Since: 1.8.4 **/ -FuBiosAttrs * -fu_bios_attrs_new(void) +FuBiosSettings * +fu_bios_settings_new(void) { return g_object_new(FU_TYPE_FIRMWARE_ATTRS, NULL); } diff --git a/libfwupdplugin/fu-bios-settings.h b/libfwupdplugin/fu-bios-settings.h new file mode 100644 index 000000000..eb39502ff --- /dev/null +++ b/libfwupdplugin/fu-bios-settings.h @@ -0,0 +1,20 @@ +/* + * Copyright (C) 2022 Mario Limonciello + * + * SPDX-License-Identifier: LGPL-2.1+ + */ + +#pragma once + +#include + +#define FU_TYPE_FIRMWARE_ATTRS (fu_bios_settings_get_type()) + +G_DECLARE_FINAL_TYPE(FuBiosSettings, fu_bios_settings, FU, BIOS_SETTINGS, GObject) + +FuBiosSettings * +fu_bios_settings_new(void); +gboolean +fu_bios_settings_get_pending_reboot(FuBiosSettings *self, gboolean *result, GError **error); +FwupdBiosSetting * +fu_bios_settings_get_attr(FuBiosSettings *self, const gchar *val); diff --git a/libfwupdplugin/fu-context-private.h b/libfwupdplugin/fu-context-private.h index 005a3d60f..41c0e0cf8 100644 --- a/libfwupdplugin/fu-context-private.h +++ b/libfwupdplugin/fu-context-private.h @@ -13,7 +13,7 @@ FuContext * fu_context_new(void); gboolean -fu_context_reload_bios_attrs(FuContext *self, GError **error); +fu_context_reload_bios_settings(FuContext *self, GError **error); gboolean fu_context_load_hwinfo(FuContext *self, GError **error); gboolean diff --git a/libfwupdplugin/fu-context.c b/libfwupdplugin/fu-context.c index 0b1e3250a..e1a9d51de 100644 --- a/libfwupdplugin/fu-context.c +++ b/libfwupdplugin/fu-context.c @@ -8,7 +8,7 @@ #include "config.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-context-private.h" #include "fu-hwids.h" #include "fu-smbios-private.h" @@ -33,7 +33,7 @@ typedef struct { FuLidState lid_state; guint battery_level; guint battery_threshold; - FuBiosAttrs *host_bios_attrs; + FuBiosSettings *host_bios_settings; } FuContextPrivate; enum { SIGNAL_SECURITY_CHANGED, SIGNAL_LAST }; @@ -119,7 +119,7 @@ fu_context_get_smbios_integer(FuContext *self, guint8 type, guint8 offset) } /** - * fu_context_reload_bios_attrs: + * fu_context_reload_bios_settings: * @self: a #FuContext * @error: (nullable): optional return location for an error * @@ -128,68 +128,68 @@ fu_context_get_smbios_integer(FuContext *self, guint8 type, guint8 offset) * Since: 1.8.4 **/ gboolean -fu_context_reload_bios_attrs(FuContext *self, GError **error) +fu_context_reload_bios_settings(FuContext *self, GError **error) { FuContextPrivate *priv = GET_PRIVATE(self); g_return_val_if_fail(FU_IS_CONTEXT(self), FALSE); - return fu_bios_attrs_setup(priv->host_bios_attrs, error); + return fu_bios_settings_setup(priv->host_bios_settings, error); } /** - * fu_context_get_bios_attrs: + * fu_context_get_bios_settings: * @self: a #FuContext * * Returns all the firmware attributes defined in the system. * - * Returns: (transfer full): A #FuBiosAttrs + * Returns: (transfer full): A #FuBiosSettings * * Since: 1.8.4 **/ -FuBiosAttrs * -fu_context_get_bios_attrs(FuContext *self) +FuBiosSettings * +fu_context_get_bios_settings(FuContext *self) { FuContextPrivate *priv = GET_PRIVATE(self); g_return_val_if_fail(FU_IS_CONTEXT(self), NULL); - return g_object_ref(priv->host_bios_attrs); + return g_object_ref(priv->host_bios_settings); } /** - * fu_context_get_bios_attr: + * fu_context_get_bios_setting: * @self: a #FuContext - * @name: a BIOS attribute title, e.g. `BootOrderLock` + * @name: a BIOS setting title, e.g. `BootOrderLock` * - * Finds out if a system supports a given BIOS attribute. + * Finds out if a system supports a given BIOS setting. * - * Returns: (transfer none): #FwupdBiosAttr if the attr exists. + * Returns: (transfer none): #FwupdBiosSetting if the attr exists. * * Since: 1.8.4 **/ -FwupdBiosAttr * -fu_context_get_bios_attr(FuContext *self, const gchar *name) +FwupdBiosSetting * +fu_context_get_bios_setting(FuContext *self, const gchar *name) { FuContextPrivate *priv = GET_PRIVATE(self); g_return_val_if_fail(FU_IS_CONTEXT(self), NULL); g_return_val_if_fail(name != NULL, NULL); - return fu_bios_attrs_get_attr(priv->host_bios_attrs, name); + return fu_bios_settings_get_attr(priv->host_bios_settings, name); } /** - * fu_context_get_bios_attr_pending_reboot: + * fu_context_get_bios_setting_pending_reboot: * @self: a #FuContext * - * Determine if updates to BIOS attributes are pending until next boot. + * Determine if updates to BIOS settings are pending until next boot. * * Returns: %TRUE if updates are pending. * * Since: 1.8.4 **/ gboolean -fu_context_get_bios_attr_pending_reboot(FuContext *self) +fu_context_get_bios_setting_pending_reboot(FuContext *self) { FuContextPrivate *priv = GET_PRIVATE(self); gboolean ret; g_return_val_if_fail(FU_IS_CONTEXT(self), FALSE); - fu_bios_attrs_get_pending_reboot(priv->host_bios_attrs, &ret, NULL); + fu_bios_settings_get_pending_reboot(priv->host_bios_settings, &ret, NULL); return ret; } @@ -889,7 +889,7 @@ fu_context_finalize(GObject *object) g_hash_table_unref(priv->hwid_flags); g_object_unref(priv->quirks); g_object_unref(priv->smbios); - g_object_unref(priv->host_bios_attrs); + g_object_unref(priv->host_bios_settings); g_hash_table_unref(priv->firmware_gtypes); g_ptr_array_unref(priv->udev_subsystems); @@ -1004,7 +1004,7 @@ fu_context_init(FuContext *self) priv->udev_subsystems = g_ptr_array_new_with_free_func(g_free); priv->firmware_gtypes = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); priv->quirks = fu_quirks_new(); - priv->host_bios_attrs = fu_bios_attrs_new(); + priv->host_bios_settings = fu_bios_settings_new(); } /** diff --git a/libfwupdplugin/fu-context.h b/libfwupdplugin/fu-context.h index 7186dafa0..781795f25 100644 --- a/libfwupdplugin/fu-context.h +++ b/libfwupdplugin/fu-context.h @@ -8,7 +8,7 @@ #include -#include "fu-bios-attrs.h" +#include "fu-bios-settings.h" #include "fu-common.h" #define FU_TYPE_CONTEXT (fu_context_get_type()) @@ -87,9 +87,9 @@ fu_context_get_battery_threshold(FuContext *self); void fu_context_set_battery_threshold(FuContext *self, guint battery_threshold); -FuBiosAttrs * -fu_context_get_bios_attrs(FuContext *self); +FuBiosSettings * +fu_context_get_bios_settings(FuContext *self); gboolean -fu_context_get_bios_attr_pending_reboot(FuContext *self); -FwupdBiosAttr * -fu_context_get_bios_attr(FuContext *self, const gchar *name); +fu_context_get_bios_setting_pending_reboot(FuContext *self); +FwupdBiosSetting * +fu_context_get_bios_setting(FuContext *self, const gchar *name); diff --git a/libfwupdplugin/fu-security-attr.c b/libfwupdplugin/fu-security-attr.c index afe7e2e14..93f653ce7 100644 --- a/libfwupdplugin/fu-security-attr.c +++ b/libfwupdplugin/fu-security-attr.c @@ -21,7 +21,7 @@ G_DEFINE_TYPE_WITH_PRIVATE(FuSecurityAttr, fu_security_attr, FWUPD_TYPE_SECURITY /** * fu_security_attr_add_bios_target_value: * @attr: a #FwupdSecurityAttr - * @id: a #FwupdBiosAttr ID or name + * @id: a #FwupdBiosSetting ID or name * @needle: The substring of a target value * * Checks all configured possible values of an enumeration attribute and @@ -36,26 +36,26 @@ fu_security_attr_add_bios_target_value(FwupdSecurityAttr *attr, { FuSecurityAttr *self = FU_SECURITY_ATTR(attr); FuSecurityAttrPrivate *priv = GET_PRIVATE(self); - FwupdBiosAttr *bios_attr; + FwupdBiosSetting *bios_setting; GPtrArray *values; - bios_attr = fu_context_get_bios_attr(priv->ctx, id); - if (bios_attr == NULL) + bios_setting = fu_context_get_bios_setting(priv->ctx, id); + if (bios_setting == NULL) return; - fwupd_security_attr_set_bios_attr_id(attr, fwupd_bios_attr_get_id(bios_attr)); - fwupd_security_attr_set_bios_attr_current_value( + fwupd_security_attr_set_bios_setting_id(attr, fwupd_bios_setting_get_id(bios_setting)); + fwupd_security_attr_set_bios_setting_current_value( attr, - fwupd_bios_attr_get_current_value(bios_attr)); - if (fwupd_bios_attr_get_kind(bios_attr) != FWUPD_BIOS_ATTR_KIND_ENUMERATION) + fwupd_bios_setting_get_current_value(bios_setting)); + if (fwupd_bios_setting_get_kind(bios_setting) != FWUPD_BIOS_SETTING_KIND_ENUMERATION) return; - if (fwupd_bios_attr_get_read_only(bios_attr)) + if (fwupd_bios_setting_get_read_only(bios_setting)) return; - values = fwupd_bios_attr_get_possible_values(bios_attr); + values = fwupd_bios_setting_get_possible_values(bios_setting); for (guint i = 0; i < values->len; i++) { const gchar *possible = g_ptr_array_index(values, i); g_autofree gchar *lower = g_utf8_strdown(possible, -1); if (g_strrstr(lower, needle)) { - fwupd_security_attr_set_bios_attr_target_value(attr, possible); + fwupd_security_attr_set_bios_setting_target_value(attr, possible); return; } } diff --git a/libfwupdplugin/fu-self-test.c b/libfwupdplugin/fu-self-test.c index e3edb55ee..771656df8 100644 --- a/libfwupdplugin/fu-self-test.c +++ b/libfwupdplugin/fu-self-test.c @@ -12,10 +12,10 @@ #include #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-security-attr-private.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-cabinet.h" #include "fu-common-private.h" #include "fu-context-private.h" @@ -2911,52 +2911,52 @@ fu_device_retry_hardware_func(void) } static void -fu_bios_attrs_load_func(void) +fu_bios_settings_load_func(void) { gboolean ret; gint integer; const gchar *tmp; GPtrArray *values; - FwupdBiosAttr *attr; - FwupdBiosAttrKind kind; + FwupdBiosSetting *setting; + FwupdBiosSettingKind kind; g_autofree gchar *test_dir = NULL; g_autoptr(FuContext) ctx = fu_context_new(); g_autoptr(GError) error = NULL; - g_autoptr(FuBiosAttrs) p620_attrs = NULL; - g_autoptr(FuBiosAttrs) p14s_attrs = NULL; - g_autoptr(FuBiosAttrs) xps9310_attrs = NULL; + g_autoptr(FuBiosSettings) p620_settings = NULL; + g_autoptr(FuBiosSettings) p14s_settings = NULL; + g_autoptr(FuBiosSettings) xp29310_settings = NULL; g_autoptr(GPtrArray) p14s_items = NULL; g_autoptr(GPtrArray) p620_items = NULL; g_autoptr(GPtrArray) xps9310_items = NULL; - /* Load attrs from a Lenovo P620 (with thinklmi driver problems) */ + /* load BIOS settings from a Lenovo P620 (with thinklmi driver problems) */ test_dir = g_test_build_filename(G_TEST_DIST, "tests", "bios-attrs", "lenovo-p620", NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - g_test_expect_message("FuBiosAttrs", G_LOG_LEVEL_WARNING, "*BUG*"); - ret = fu_context_reload_bios_attrs(ctx, &error); + g_test_expect_message("FuBiosSettings", G_LOG_LEVEL_WARNING, "*BUG*"); + ret = fu_context_reload_bios_settings(ctx, &error); g_assert_no_error(error); g_assert_true(ret); g_test_assert_expected_messages(); - p620_attrs = fu_context_get_bios_attrs(ctx); - p620_items = fu_bios_attrs_get_all(p620_attrs); + p620_settings = fu_context_get_bios_settings(ctx); + p620_items = fu_bios_settings_get_all(p620_settings); g_assert_cmpint(p620_items->len, ==, 128); /* make sure nothing pending */ - ret = fu_context_get_bios_attr_pending_reboot(ctx); + ret = fu_context_get_bios_setting_pending_reboot(ctx); g_assert_false(ret); - /* check an attribute reads from kernel as expected by fwupd today */ - attr = fu_context_get_bios_attr(ctx, "com.thinklmi.AMDMemoryGuard"); - g_assert_nonnull(attr); - tmp = fwupd_bios_attr_get_name(attr); + /* check a BIOS setting reads from kernel as expected by fwupd today */ + setting = fu_context_get_bios_setting(ctx, "com.thinklmi.AMDMemoryGuard"); + g_assert_nonnull(setting); + tmp = fwupd_bios_setting_get_name(setting); g_assert_cmpstr(tmp, ==, "AMDMemoryGuard"); - tmp = fwupd_bios_attr_get_description(attr); + tmp = fwupd_bios_setting_get_description(setting); g_assert_cmpstr(tmp, ==, "AMDMemoryGuard"); - tmp = fwupd_bios_attr_get_current_value(attr); + tmp = fwupd_bios_setting_get_current_value(setting); g_assert_cmpstr(tmp, ==, "Disable"); - values = fwupd_bios_attr_get_possible_values(attr); + values = fwupd_bios_setting_get_possible_values(setting); for (guint i = 0; i < values->len; i++) { const gchar *possible = g_ptr_array_index(values, i); if (i == 0) @@ -2965,14 +2965,14 @@ fu_bios_attrs_load_func(void) g_assert_cmpstr(possible, ==, "Enable"); } - /* try to read an attribute known to have ][Status] to make sure we worked + /* try to read an BIOS setting known to have ][Status] to make sure we worked * around the thinklmi bug sufficiently */ - attr = fu_context_get_bios_attr(ctx, "com.thinklmi.StartupSequence"); - g_assert_nonnull(attr); - tmp = fwupd_bios_attr_get_current_value(attr); + setting = fu_context_get_bios_setting(ctx, "com.thinklmi.StartupSequence"); + g_assert_nonnull(setting); + tmp = fwupd_bios_setting_get_current_value(setting); g_assert_cmpstr(tmp, ==, "Primary"); - values = fwupd_bios_attr_get_possible_values(attr); + values = fwupd_bios_setting_get_possible_values(setting); for (guint i = 0; i < values->len; i++) { const gchar *possible = g_ptr_array_index(values, i); if (i == 0) @@ -2981,40 +2981,40 @@ fu_bios_attrs_load_func(void) g_assert_cmpstr(possible, ==, "Automatic"); } - /* check no attributes have [Status in them */ + /* check no BIOS settings have [Status in them */ for (guint i = 0; i < p620_items->len; i++) { - attr = g_ptr_array_index(p620_items, i); - tmp = fwupd_bios_attr_get_current_value(attr); + setting = g_ptr_array_index(p620_items, i); + tmp = fwupd_bios_setting_get_current_value(setting); g_debug("%s", tmp); g_assert_null(g_strrstr(tmp, "[Status")); } g_free(test_dir); - /* Load attrs from a Lenovo P14s Gen1 */ + /* load BIOS settings from a Lenovo P14s Gen1 */ test_dir = g_test_build_filename(G_TEST_DIST, "tests", "bios-attrs", "lenovo-p14s-gen1", NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - ret = fu_context_reload_bios_attrs(ctx, &error); + ret = fu_context_reload_bios_settings(ctx, &error); g_assert_no_error(error); g_assert_true(ret); - p14s_attrs = fu_context_get_bios_attrs(ctx); - p14s_items = fu_bios_attrs_get_all(p14s_attrs); + p14s_settings = fu_context_get_bios_settings(ctx); + p14s_items = fu_bios_settings_get_all(p14s_settings); g_assert_cmpint(p14s_items->len, ==, 75); /* reboot should be pending on this one */ - ret = fu_context_get_bios_attr_pending_reboot(ctx); + ret = fu_context_get_bios_setting_pending_reboot(ctx); g_assert_true(ret); - /* look for an enumeration attribute with a space */ - attr = fu_context_get_bios_attr(ctx, "com.thinklmi.SleepState"); - g_assert_nonnull(attr); - tmp = fwupd_bios_attr_get_name(attr); + /* look for an enumeration BIOS setting with a space */ + setting = fu_context_get_bios_setting(ctx, "com.thinklmi.SleepState"); + g_assert_nonnull(setting); + tmp = fwupd_bios_setting_get_name(setting); g_assert_cmpstr(tmp, ==, "SleepState"); - tmp = fwupd_bios_attr_get_description(attr); + tmp = fwupd_bios_setting_get_description(setting); g_assert_cmpstr(tmp, ==, "SleepState"); - values = fwupd_bios_attr_get_possible_values(attr); + values = fwupd_bios_setting_get_possible_values(setting); for (guint i = 0; i < values->len; i++) { const gchar *possible = g_ptr_array_index(values, i); if (i == 0) @@ -3024,57 +3024,57 @@ fu_bios_attrs_load_func(void) } /* make sure we defaulted UEFI Secure boot to read only if enabled */ - attr = fu_context_get_bios_attr(ctx, "com.thinklmi.SecureBoot"); - g_assert_nonnull(attr); - ret = fwupd_bios_attr_get_read_only(attr); + setting = fu_context_get_bios_setting(ctx, "com.thinklmi.SecureBoot"); + g_assert_nonnull(setting); + ret = fwupd_bios_setting_get_read_only(setting); g_assert_true(ret); g_free(test_dir); - /* load attrs from a Dell XPS 9310 */ + /* load BIOS settings from a Dell XPS 9310 */ test_dir = g_test_build_filename(G_TEST_DIST, "tests", "bios-attrs", "dell-xps13-9310", NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - ret = fu_context_reload_bios_attrs(ctx, &error); + ret = fu_context_reload_bios_settings(ctx, &error); g_assert_no_error(error); g_assert_true(ret); - xps9310_attrs = fu_context_get_bios_attrs(ctx); - xps9310_items = fu_bios_attrs_get_all(xps9310_attrs); + xp29310_settings = fu_context_get_bios_settings(ctx); + xps9310_items = fu_bios_settings_get_all(xp29310_settings); g_assert_cmpint(xps9310_items->len, ==, 109); - /* make sure that we DIDN'T parse reset_bios attribute */ - attr = fu_context_get_bios_attr(ctx, FWUPD_BIOS_ATTR_RESET_BIOS); - g_assert_null(attr); + /* make sure that we DIDN'T parse reset_bios setting */ + setting = fu_context_get_bios_setting(ctx, FWUPD_BIOS_SETTING_RESET_BIOS); + g_assert_null(setting); - /* look at a integer attribute */ - attr = fu_context_get_bios_attr(ctx, "com.dell-wmi-sysman.CustomChargeStop"); - g_assert_nonnull(attr); - kind = fwupd_bios_attr_get_kind(attr); - g_assert_cmpint(kind, ==, FWUPD_BIOS_ATTR_KIND_INTEGER); - integer = fwupd_bios_attr_get_lower_bound(attr); + /* look at a integer BIOS setting */ + setting = fu_context_get_bios_setting(ctx, "com.dell-wmi-sysman.CustomChargeStop"); + g_assert_nonnull(setting); + kind = fwupd_bios_setting_get_kind(setting); + g_assert_cmpint(kind, ==, FWUPD_BIOS_SETTING_KIND_INTEGER); + integer = fwupd_bios_setting_get_lower_bound(setting); g_assert_cmpint(integer, ==, 55); - integer = fwupd_bios_attr_get_upper_bound(attr); + integer = fwupd_bios_setting_get_upper_bound(setting); g_assert_cmpint(integer, ==, 100); - integer = fwupd_bios_attr_get_scalar_increment(attr); + integer = fwupd_bios_setting_get_scalar_increment(setting); g_assert_cmpint(integer, ==, 1); - /* look at a string attribute */ - attr = fu_context_get_bios_attr(ctx, "com.dell-wmi-sysman.Asset"); - g_assert_nonnull(attr); - integer = fwupd_bios_attr_get_lower_bound(attr); + /* look at a string BIOS setting */ + setting = fu_context_get_bios_setting(ctx, "com.dell-wmi-sysman.Asset"); + g_assert_nonnull(setting); + integer = fwupd_bios_setting_get_lower_bound(setting); g_assert_cmpint(integer, ==, 1); - integer = fwupd_bios_attr_get_upper_bound(attr); + integer = fwupd_bios_setting_get_upper_bound(setting); g_assert_cmpint(integer, ==, 64); - tmp = fwupd_bios_attr_get_description(attr); + tmp = fwupd_bios_setting_get_description(setting); g_assert_cmpstr(tmp, ==, "Asset Tag"); - /* look at a enumeration attribute */ - attr = fu_context_get_bios_attr(ctx, "com.dell-wmi-sysman.BiosRcvrFrmHdd"); - g_assert_nonnull(attr); - kind = fwupd_bios_attr_get_kind(attr); - g_assert_cmpint(kind, ==, FWUPD_BIOS_ATTR_KIND_ENUMERATION); - values = fwupd_bios_attr_get_possible_values(attr); + /* look at a enumeration BIOS setting */ + setting = fu_context_get_bios_setting(ctx, "com.dell-wmi-sysman.BiosRcvrFrmHdd"); + g_assert_nonnull(setting); + kind = fwupd_bios_setting_get_kind(setting); + g_assert_cmpint(kind, ==, FWUPD_BIOS_SETTING_KIND_ENUMERATION); + values = fwupd_bios_setting_get_possible_values(setting); for (guint i = 0; i < values->len; i++) { const gchar *possible = g_ptr_array_index(values, i); if (i == 0) @@ -3084,9 +3084,9 @@ fu_bios_attrs_load_func(void) } /* make sure we defaulted UEFI Secure boot to read only if enabled */ - attr = fu_context_get_bios_attr(ctx, "com.dell-wmi-sysman.SecureBoot"); - g_assert_nonnull(attr); - ret = fwupd_bios_attr_get_read_only(attr); + setting = fu_context_get_bios_setting(ctx, "com.dell-wmi-sysman.SecureBoot"); + g_assert_nonnull(setting); + ret = fwupd_bios_setting_get_read_only(setting); g_assert_true(ret); } @@ -3586,7 +3586,7 @@ main(int argc, char **argv) g_test_add_func("/fwupd/progress{parent-1-step}", fu_progress_parent_one_step_proxy_func); g_test_add_func("/fwupd/progress{no-equal}", fu_progress_non_equal_steps_func); g_test_add_func("/fwupd/progress{finish}", fu_progress_finish_func); - g_test_add_func("/fwupd/bios-attrs{load}", fu_bios_attrs_load_func); + g_test_add_func("/fwupd/bios-attrs{load}", fu_bios_settings_load_func); g_test_add_func("/fwupd/security-attrs{hsi}", fu_security_attrs_hsi_func); g_test_add_func("/fwupd/plugin{devices}", fu_plugin_devices_func); g_test_add_func("/fwupd/plugin{device-inhibit-children}", diff --git a/libfwupdplugin/fwupdplugin.h b/libfwupdplugin/fwupdplugin.h index e39a70ded..6f8320b8c 100644 --- a/libfwupdplugin/fwupdplugin.h +++ b/libfwupdplugin/fwupdplugin.h @@ -12,7 +12,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/libfwupdplugin/fwupdplugin.map b/libfwupdplugin/fwupdplugin.map index 331475c51..0a12f595c 100644 --- a/libfwupdplugin/fwupdplugin.map +++ b/libfwupdplugin/fwupdplugin.map @@ -1071,18 +1071,18 @@ LIBFWUPDPLUGIN_1.8.3 { LIBFWUPDPLUGIN_1.8.4 { global: fu_backend_add_string; - fu_bios_attrs_from_json; - fu_bios_attrs_get_all; - fu_bios_attrs_get_attr; - fu_bios_attrs_get_pending_reboot; - fu_bios_attrs_get_type; - fu_bios_attrs_new; - fu_bios_attrs_setup; - fu_bios_attrs_to_variant; - fu_context_get_bios_attr; - fu_context_get_bios_attr_pending_reboot; - fu_context_get_bios_attrs; - fu_context_reload_bios_attrs; + fu_bios_settings_from_json; + fu_bios_settings_get_all; + fu_bios_settings_get_attr; + fu_bios_settings_get_pending_reboot; + fu_bios_settings_get_type; + fu_bios_settings_new; + fu_bios_settings_setup; + fu_bios_settings_to_variant; + fu_context_get_bios_setting; + fu_context_get_bios_setting_pending_reboot; + fu_context_get_bios_settings; + fu_context_reload_bios_settings; fu_device_security_attr_new; fu_plugin_add_string; fu_plugin_security_attr_new; diff --git a/libfwupdplugin/meson.build b/libfwupdplugin/meson.build index 873c2e72d..97b54690c 100644 --- a/libfwupdplugin/meson.build +++ b/libfwupdplugin/meson.build @@ -41,7 +41,7 @@ fwupdplugin_src = [ 'fu-cfu-payload.c', # fuzzing 'fu-volume.c', # fuzzing 'fu-firmware.c', # fuzzing - 'fu-bios-attrs.c', # fuzzing + 'fu-bios-settings.c', # fuzzing 'fu-firmware-common.c', # fuzzing 'fu-dfuse-firmware.c', # fuzzing 'fu-fmap-firmware.c', # fuzzing @@ -145,7 +145,7 @@ fwupdplugin_headers = [ 'fu-linear-firmware.h', 'fu-volume.h', 'fu-firmware.h', - 'fu-bios-attrs.h', + 'fu-bios-settings.h', 'fu-firmware-common.h', 'fu-fmap-firmware.h', 'fu-dfuse-firmware.h', @@ -193,7 +193,7 @@ fwupdplugin_headers_private = [ 'fu-device-private.h', 'fu-kenv.h', 'fu-plugin-private.h', - 'fu-bios-attrs-private.h', + 'fu-bios-settings-private.h', 'fu-security-attrs-private.h', 'fu-smbios-private.h', 'fu-udev-device-private.h', diff --git a/plugins/lenovo-thinklmi/fu-plugin-lenovo-thinklmi.c b/plugins/lenovo-thinklmi/fu-plugin-lenovo-thinklmi.c index 8079d4778..f1fa0c5e1 100644 --- a/plugins/lenovo-thinklmi/fu-plugin-lenovo-thinklmi.c +++ b/plugins/lenovo-thinklmi/fu-plugin-lenovo-thinklmi.c @@ -15,7 +15,7 @@ fu_plugin_lenovo_thinklmi_startup(FuPlugin *plugin, FuProgress *progress, GError { FuContext *ctx = fu_plugin_get_context(plugin); - if (fu_context_get_bios_attr(ctx, BOOT_ORDER_LOCK) == NULL) { + if (fu_context_get_bios_setting(ctx, BOOT_ORDER_LOCK) == NULL) { g_set_error_literal(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, @@ -30,25 +30,25 @@ static void fu_plugin_lenovo_thinklmi_device_registered(FuPlugin *plugin, FuDevice *device) { FuContext *ctx = fu_plugin_get_context(plugin); - FwupdBiosAttr *attr; + FwupdBiosSetting *attr; g_autoptr(GError) error_local = NULL; if (g_strcmp0(fu_device_get_plugin(device), "uefi_capsule") != 0) return; /* check if boot order lock is turned on */ - attr = fu_context_get_bios_attr(ctx, BOOT_ORDER_LOCK); + attr = fu_context_get_bios_setting(ctx, BOOT_ORDER_LOCK); if (!attr) { g_debug("failed to find %s in cache\n", BOOT_ORDER_LOCK); return; } - if (g_strcmp0(fwupd_bios_attr_get_current_value(attr), "Enable") == 0) + if (g_strcmp0(fwupd_bios_setting_get_current_value(attr), "Enable") == 0) fu_device_inhibit(device, "uefi-capsule-bootorder", "BootOrder is locked in firmware setup"); /* check if we're pending for a reboot */ - if (fu_context_get_bios_attr_pending_reboot(ctx)) + if (fu_context_get_bios_setting_pending_reboot(ctx)) fu_device_inhibit(device, "uefi-capsule-pending-reboot", "UEFI BIOS settings update pending reboot"); diff --git a/plugins/lenovo-thinklmi/fu-self-test.c b/plugins/lenovo-thinklmi/fu-self-test.c index 7bbfeb527..823405ba3 100644 --- a/plugins/lenovo-thinklmi/fu-self-test.c +++ b/plugins/lenovo-thinklmi/fu-self-test.c @@ -11,7 +11,7 @@ #include #include -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-context-private.h" #include "fu-device-private.h" #include "fu-plugin-private.h" @@ -39,7 +39,7 @@ fu_test_self_init(FuTest *self, GError **error_global) g_autofree gchar *pluginfn_uefi = NULL; g_autofree gchar *pluginfn_lenovo = NULL; - g_test_expect_message("FuBiosAttrs", G_LOG_LEVEL_WARNING, "*KERNEL*BUG*"); + g_test_expect_message("FuBiosSettings", G_LOG_LEVEL_WARNING, "*KERNEL*BUG*"); ret = fu_context_load_quirks(ctx, FU_QUIRKS_LOAD_FLAG_NO_CACHE | FU_QUIRKS_LOAD_FLAG_NO_VERIFY, @@ -49,7 +49,7 @@ fu_test_self_init(FuTest *self, GError **error_global) ret = fu_context_load_hwinfo(ctx, &error); g_assert_no_error(error); g_assert_true(ret); - ret = fu_context_reload_bios_attrs(ctx, &error); + ret = fu_context_reload_bios_settings(ctx, &error); g_assert_true(ret); g_assert_no_error(error); g_test_assert_expected_messages(); @@ -123,7 +123,7 @@ fu_plugin_lenovo_thinklmi_bootorder_locked(gconstpointer user_data) g_test_build_filename(G_TEST_DIST, "tests", "firmware-attributes", "locked", NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - ret = fu_context_reload_bios_attrs(self->ctx, &error); + ret = fu_context_reload_bios_settings(self->ctx, &error); g_assert_true(ret); g_assert_no_error(error); @@ -143,7 +143,7 @@ fu_plugin_lenovo_thinklmi_bootorder_unlocked(gconstpointer user_data) g_test_build_filename(G_TEST_DIST, "tests", "firmware-attributes", "unlocked", NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - ret = fu_context_reload_bios_attrs(self->ctx, &error); + ret = fu_context_reload_bios_settings(self->ctx, &error); g_assert_true(ret); g_assert_no_error(error); dev = fu_test_probe_fake_esrt(self); @@ -165,7 +165,7 @@ fu_plugin_lenovo_thinklmi_reboot_pending(gconstpointer user_data) NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - ret = fu_context_reload_bios_attrs(self->ctx, &error); + ret = fu_context_reload_bios_settings(self->ctx, &error); g_assert_true(ret); g_assert_no_error(error); dev = fu_test_probe_fake_esrt(self); diff --git a/po/POTFILES.in b/po/POTFILES.in index c9d00a8c0..a2adfd77b 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -16,5 +16,5 @@ src/fu-remote-list.c src/fu-security-attr-common.c src/fu-tool.c src/fu-util.c -src/fu-util-bios-attr.c +src/fu-util-bios-setting.c src/fu-util-common.c diff --git a/policy/org.freedesktop.fwupd.policy.in b/policy/org.freedesktop.fwupd.policy.in index fc58789a8..b7e9952fd 100644 --- a/policy/org.freedesktop.fwupd.policy.in +++ b/policy/org.freedesktop.fwupd.policy.in @@ -184,10 +184,10 @@ - - Get BIOS attributes + + Get BIOS settings - Authentication is required to read BIOS attributes + Authentication is required to read BIOS settings auth_admin no @@ -195,8 +195,8 @@ - - Set a BIOS attribute + + Set one or more BIOS settings Authentication is required to modify BIOS settings @@ -204,7 +204,7 @@ no auth_admin - org.freedesktop.fwupd.get-bios-attributes + org.freedesktop.fwupd.get-bios-settings diff --git a/src/fu-daemon.c b/src/fu-daemon.c index 3681b97d9..2bd1ece3d 100644 --- a/src/fu-daemon.c +++ b/src/fu-daemon.c @@ -18,7 +18,7 @@ #endif #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-device-private.h" #include "fwupd-enums-private.h" #include "fwupd-plugin-private.h" @@ -27,7 +27,7 @@ #include "fwupd-request-private.h" #include "fwupd-security-attr-private.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-daemon.h" #include "fu-device-private.h" #include "fu-engine.h" @@ -505,11 +505,11 @@ fu_daemon_authorize_unlock_cb(GObject *source, GAsyncResult *res, gpointer user_ } static void -fu_daemon_authorize_get_bios_attrs_cb(GObject *source, GAsyncResult *res, gpointer user_data) +fu_daemon_authorize_get_bios_settings_cb(GObject *source, GAsyncResult *res, gpointer user_data) { g_autoptr(FuMainAuthHelper) helper = (FuMainAuthHelper *)user_data; g_autoptr(GError) error = NULL; - g_autoptr(FuBiosAttrs) attrs = NULL; + g_autoptr(FuBiosSettings) attrs = NULL; FuContext *ctx; GVariant *val = NULL; #ifdef HAVE_POLKIT @@ -530,13 +530,13 @@ fu_daemon_authorize_get_bios_attrs_cb(GObject *source, GAsyncResult *res, gpoint /* authenticated */ ctx = fu_engine_get_context(helper->self->engine); - attrs = fu_context_get_bios_attrs(ctx); - val = fu_bios_attrs_to_variant(attrs, TRUE); + attrs = fu_context_get_bios_settings(ctx); + val = fu_bios_settings_to_variant(attrs, TRUE); g_dbus_method_invocation_return_value(helper->invocation, val); } static void -fu_daemon_authorize_set_bios_attrs_cb(GObject *source, GAsyncResult *res, gpointer user_data) +fu_daemon_authorize_set_bios_settings_cb(GObject *source, GAsyncResult *res, gpointer user_data) { g_autoptr(FuMainAuthHelper) helper = (FuMainAuthHelper *)user_data; g_autoptr(GError) error = NULL; @@ -557,7 +557,7 @@ fu_daemon_authorize_set_bios_attrs_cb(GObject *source, GAsyncResult *res, gpoint #endif /* HAVE_POLKIT */ /* authenticated */ - if (!fu_engine_modify_bios_attrs(helper->self->engine, helper->bios_settings, &error)) { + if (!fu_engine_modify_bios_settings(helper->self->engine, helper->bios_settings, &error)) { g_dbus_method_invocation_return_gerror(helper->invocation, error); return; } @@ -1987,17 +1987,18 @@ fu_daemon_daemon_method_call(GDBusConnection *connection, #endif /* HAVE_GIO_UNIX */ return; } - if (g_strcmp0(method_name, "GetBiosAttrs") == 0) { + if (g_strcmp0(method_name, "GetBiosSettings") == 0) { gboolean authenticate = fu_engine_request_get_feature_flags(request) & FWUPD_FEATURE_FLAG_ALLOW_AUTHENTICATION; g_debug("Called %s", method_name); if (!authenticate) { - g_autoptr(FuBiosAttrs) attrs = - fu_context_get_bios_attrs(fu_engine_get_context(self->engine)); - val = fu_bios_attrs_to_variant(attrs, - fu_engine_request_get_device_flags(request) & - FWUPD_DEVICE_FLAG_TRUSTED); + g_autoptr(FuBiosSettings) attrs = + fu_context_get_bios_settings(fu_engine_get_context(self->engine)); + val = fu_bios_settings_to_variant( + attrs, + fu_engine_request_get_device_flags(request) & + FWUPD_DEVICE_FLAG_TRUSTED); g_dbus_method_invocation_return_value(invocation, val); } else { g_autoptr(FuMainAuthHelper) helper = NULL; @@ -2015,19 +2016,21 @@ fu_daemon_daemon_method_call(GDBusConnection *connection, polkit_authority_check_authorization( self->authority, subject, - "org.freedesktop.fwupd.get-bios-attributes", + "org.freedesktop.fwupd.get-bios-settings", NULL, POLKIT_CHECK_AUTHORIZATION_FLAGS_ALLOW_USER_INTERACTION, NULL, - fu_daemon_authorize_get_bios_attrs_cb, + fu_daemon_authorize_get_bios_settings_cb, g_steal_pointer(&helper)); #else - fu_daemon_authorize_get_bios_attrs_cb(NULL, NULL, g_steal_pointer(&helper)); + fu_daemon_authorize_get_bios_settings_cb(NULL, + NULL, + g_steal_pointer(&helper)); #endif /* HAVE_POLKIT */ } return; } - if (g_strcmp0(method_name, "SetBiosAttrs") == 0) { + if (g_strcmp0(method_name, "SetBiosSettings") == 0) { g_autoptr(FuMainAuthHelper) helper = NULL; const gchar *key; const gchar *value; @@ -2056,14 +2059,14 @@ fu_daemon_daemon_method_call(GDBusConnection *connection, polkit_authority_check_authorization( self->authority, subject, - "org.freedesktop.fwupd.set-bios-attribute", + "org.freedesktop.fwupd.set-bios-settings", NULL, POLKIT_CHECK_AUTHORIZATION_FLAGS_ALLOW_USER_INTERACTION, NULL, - fu_daemon_authorize_set_bios_attrs_cb, + fu_daemon_authorize_set_bios_settings_cb, g_steal_pointer(&helper)); #else - fu_daemon_authorize_set_bios_attrs_cb(NULL, NULL, g_steal_pointer(&helper)); + fu_daemon_authorize_set_bios_settings_cb(NULL, NULL, g_steal_pointer(&helper)); #endif /* HAVE_POLKIT */ return; diff --git a/src/fu-engine.c b/src/fu-engine.c index 1e8025fa3..6d462b9b6 100644 --- a/src/fu-engine.c +++ b/src/fu-engine.c @@ -28,7 +28,7 @@ #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-common-private.h" #include "fwupd-device-private.h" #include "fwupd-enums-private.h" @@ -37,7 +37,7 @@ #include "fwupd-resources.h" #include "fwupd-security-attr-private.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-cabinet.h" #include "fu-context-private.h" #include "fu-coswid-firmware.h" @@ -728,15 +728,15 @@ fu_engine_modify_remote(FuEngine *self, } static gboolean -fu_engine_update_bios_attr(FwupdBiosAttr *attr, const gchar *value, GError **error) +fu_engine_update_bios_setting(FwupdBiosSetting *attr, const gchar *value, GError **error) { int fd; g_autofree gchar *fn = - g_build_filename(fwupd_bios_attr_get_path(attr), "current_value", NULL); + g_build_filename(fwupd_bios_setting_get_path(attr), "current_value", NULL); g_autoptr(FuIOChannel) io = NULL; - if (g_strcmp0(fwupd_bios_attr_get_current_value(attr), value) == 0) { - g_debug("%s is already set to %s", fwupd_bios_attr_get_id(attr), value); + if (g_strcmp0(fwupd_bios_setting_get_current_value(attr), value) == 0) { + g_debug("%s is already set to %s", fwupd_bios_setting_get_id(attr), value); return TRUE; } @@ -762,9 +762,9 @@ fu_engine_update_bios_attr(FwupdBiosAttr *attr, const gchar *value, GError **err FU_IO_CHANNEL_FLAG_NONE, error)) return FALSE; - fwupd_bios_attr_set_current_value(attr, value); + fwupd_bios_setting_set_current_value(attr, value); - g_debug("set %s to %s", fwupd_bios_attr_get_id(attr), value); + g_debug("set %s to %s", fwupd_bios_setting_get_id(attr), value); return TRUE; } @@ -774,7 +774,7 @@ fu_engine_update_bios_attr(FwupdBiosAttr *attr, const gchar *value, GError **err * error messages */ static gboolean -fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GError **error) +fu_engine_validate_bios_setting_input(FwupdBiosSetting *attr, const gchar **value, GError **error) { guint64 tmp = 0; @@ -788,17 +788,17 @@ fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GEr "attribute not found"); return FALSE; } - if (fwupd_bios_attr_get_read_only(attr)) { + if (fwupd_bios_setting_get_read_only(attr)) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, "%s is read only", - fwupd_bios_attr_get_name(attr)); + fwupd_bios_setting_get_name(attr)); return FALSE; - } else if (fwupd_bios_attr_get_kind(attr) == FWUPD_BIOS_ATTR_KIND_INTEGER) { + } else if (fwupd_bios_setting_get_kind(attr) == FWUPD_BIOS_SETTING_KIND_INTEGER) { if (!fu_strtoull(*value, &tmp, 0, G_MAXUINT64, error)) return FALSE; - if (tmp < fwupd_bios_attr_get_lower_bound(attr)) { + if (tmp < fwupd_bios_setting_get_lower_bound(attr)) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, @@ -806,10 +806,10 @@ fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GEr "); expected at least %" G_GUINT64_FORMAT, *value, tmp, - fwupd_bios_attr_get_lower_bound(attr)); + fwupd_bios_setting_get_lower_bound(attr)); return FALSE; } - if (tmp > fwupd_bios_attr_get_upper_bound(attr)) { + if (tmp > fwupd_bios_setting_get_upper_bound(attr)) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, @@ -817,12 +817,12 @@ fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GEr "); expected no more than %" G_GUINT64_FORMAT, *value, tmp, - fwupd_bios_attr_get_upper_bound(attr)); + fwupd_bios_setting_get_upper_bound(attr)); return FALSE; } - } else if (fwupd_bios_attr_get_kind(attr) == FWUPD_BIOS_ATTR_KIND_STRING) { + } else if (fwupd_bios_setting_get_kind(attr) == FWUPD_BIOS_SETTING_KIND_STRING) { tmp = strlen(*value); - if (tmp < fwupd_bios_attr_get_lower_bound(attr)) { + if (tmp < fwupd_bios_setting_get_lower_bound(attr)) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, @@ -830,10 +830,10 @@ fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GEr "); expected at least %" G_GUINT64_FORMAT, *value, tmp, - fwupd_bios_attr_get_lower_bound(attr)); + fwupd_bios_setting_get_lower_bound(attr)); return FALSE; } - if (tmp > fwupd_bios_attr_get_upper_bound(attr)) { + if (tmp > fwupd_bios_setting_get_upper_bound(attr)) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED, @@ -841,11 +841,11 @@ fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GEr "); expected no more than %" G_GUINT64_FORMAT, *value, tmp, - fwupd_bios_attr_get_upper_bound(attr)); + fwupd_bios_setting_get_upper_bound(attr)); return FALSE; } - } else if (fwupd_bios_attr_get_kind(attr) == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { - const gchar *result = fwupd_bios_attr_map_possible_value(attr, *value, error); + } else if (fwupd_bios_setting_get_kind(attr) == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { + const gchar *result = fwupd_bios_setting_map_possible_value(attr, *value, error); if (result == NULL) return FALSE; *value = result; @@ -860,34 +860,34 @@ fu_engine_validate_bios_attr_input(FwupdBiosAttr *attr, const gchar **value, GEr } static gboolean -fu_engine_modify_single_bios_attr(FuEngine *self, - const gchar *key, - const gchar *value, - GError **error) +fu_engine_modify_single_bios_setting(FuEngine *self, + const gchar *key, + const gchar *value, + GError **error) { - FwupdBiosAttr *attr = fu_context_get_bios_attr(self->ctx, key); + FwupdBiosSetting *attr = fu_context_get_bios_setting(self->ctx, key); const gchar *tmp = value; - if (!fu_engine_validate_bios_attr_input(attr, &tmp, error)) + if (!fu_engine_validate_bios_setting_input(attr, &tmp, error)) return FALSE; - return fu_engine_update_bios_attr(attr, tmp, error); + return fu_engine_update_bios_setting(attr, tmp, error); } /** - * fu_engine_modify_bios_attrs: + * fu_engine_modify_bios_settings: * @self: a #FuEngine * @settings: Hashtable of settings/values to configure * @error: (nullable): optional return location for an error * - * Use the kernel API to set one or more BIOS attributes. + * Use the kernel API to set one or more BIOS settings. * * Returns: %TRUE for success **/ gboolean -fu_engine_modify_bios_attrs(FuEngine *self, GHashTable *settings, GError **error) +fu_engine_modify_bios_settings(FuEngine *self, GHashTable *settings, GError **error) { - FwupdBiosAttr *pending; + FwupdBiosSetting *pending; GHashTableIter iter; gpointer key, value; @@ -905,20 +905,20 @@ fu_engine_modify_bios_attrs(FuEngine *self, GHashTable *settings, GError **error (const gchar *)key); return FALSE; } - if (!fu_engine_modify_single_bios_attr(self, key, value, error)) + if (!fu_engine_modify_single_bios_setting(self, key, value, error)) return FALSE; } - pending = fu_context_get_bios_attr(self->ctx, FWUPD_BIOS_ATTR_PENDING_REBOOT); + pending = fu_context_get_bios_setting(self->ctx, FWUPD_BIOS_SETTING_PENDING_REBOOT); if (pending == NULL) { g_set_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_FOUND, "attribute %s not found", - FWUPD_BIOS_ATTR_PENDING_REBOOT); + FWUPD_BIOS_SETTING_PENDING_REBOOT); return FALSE; } - fwupd_bios_attr_set_current_value(pending, "1"); + fwupd_bios_setting_set_current_value(pending, "1"); return TRUE; } @@ -6505,10 +6505,10 @@ fu_engine_security_attrs_from_json(FuEngine *self, JsonNode *json_node, GError * } static gboolean -fu_engine_bios_attrs_from_json(FuEngine *self, JsonNode *json_node, GError **error) +fu_engine_bios_settings_from_json(FuEngine *self, JsonNode *json_node, GError **error) { JsonObject *obj; - g_autoptr(FuBiosAttrs) bios_attrs = fu_context_get_bios_attrs(self->ctx); + g_autoptr(FuBiosSettings) bios_settings = fu_context_get_bios_settings(self->ctx); /* sanity check */ if (!JSON_NODE_HOLDS_OBJECT(json_node)) { @@ -6518,9 +6518,9 @@ fu_engine_bios_attrs_from_json(FuEngine *self, JsonNode *json_node, GError **err /* not supplied */ obj = json_node_get_object(json_node); - if (!json_object_has_member(obj, "BiosAttributes")) + if (!json_object_has_member(obj, "BiosSettings")) return TRUE; - if (!fu_bios_attrs_from_json(bios_attrs, json_node, error)) + if (!fu_bios_settings_from_json(bios_settings, json_node, error)) return FALSE; /* success */ @@ -6595,7 +6595,7 @@ fu_engine_load_host_emulation(FuEngine *self, const gchar *fn, GError **error) return FALSE; if (!fu_engine_security_attrs_from_json(self, json_parser_get_root(parser), error)) return FALSE; - if (!fu_engine_bios_attrs_from_json(self, json_parser_get_root(parser), error)) + if (!fu_engine_bios_settings_from_json(self, json_parser_get_root(parser), error)) return FALSE; #ifdef HAVE_HSI @@ -6893,7 +6893,7 @@ fu_engine_check_firmware_attributes(FuEngine *self, FuDevice *device) subsystem = fu_udev_device_get_subsystem(FU_UDEV_DEVICE(device)); if (g_strcmp0(subsystem, "firmware-attributes") == 0) { g_autoptr(GError) error = NULL; - if (!fu_context_reload_bios_attrs(self->ctx, &error)) + if (!fu_context_reload_bios_settings(self->ctx, &error)) g_debug("%s", error->message); } } diff --git a/src/fu-engine.h b/src/fu-engine.h index 6c7d14077..0969a1a26 100644 --- a/src/fu-engine.h +++ b/src/fu-engine.h @@ -244,4 +244,4 @@ fu_engine_schedule_update(FuEngine *self, GError * fu_engine_error_array_get_best(GPtrArray *errors); gboolean -fu_engine_modify_bios_attrs(FuEngine *self, GHashTable *settings, GError **error); +fu_engine_modify_bios_settings(FuEngine *self, GHashTable *settings, GError **error); diff --git a/src/fu-self-test.c b/src/fu-self-test.c index 021835f4d..5dde250d1 100644 --- a/src/fu-self-test.c +++ b/src/fu-self-test.c @@ -13,10 +13,10 @@ #include #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-security-attr-private.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-cabinet-common.h" #include "fu-config.h" #include "fu-context-private.h" @@ -4475,18 +4475,18 @@ fu_common_store_cab_error_wrong_checksum_func(void) } static void -fu_engine_modify_bios_attrs_func(void) +fu_engine_modify_bios_settings_func(void) { gboolean ret; const gchar *current; - FwupdBiosAttr *attr1; - FwupdBiosAttr *attr2; - FwupdBiosAttr *attr3; - FwupdBiosAttr *attr4; + FwupdBiosSetting *attr1; + FwupdBiosSetting *attr2; + FwupdBiosSetting *attr3; + FwupdBiosSetting *attr4; g_autofree gchar *test_dir = NULL; g_autoptr(FuEngine) engine = fu_engine_new(); g_autoptr(GError) error = NULL; - g_autoptr(FuBiosAttrs) attrs = NULL; + g_autoptr(FuBiosSettings) attrs = NULL; g_autoptr(GPtrArray) items = NULL; g_autoptr(GHashTable) bios_settings = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); @@ -4495,59 +4495,60 @@ fu_engine_modify_bios_attrs_func(void) test_dir = g_test_build_filename(G_TEST_DIST, "tests", "bios-attrs", NULL); (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - ret = fu_context_reload_bios_attrs(fu_engine_get_context(engine), &error); + ret = fu_context_reload_bios_settings(fu_engine_get_context(engine), &error); g_assert_no_error(error); g_assert_true(ret); - attrs = fu_context_get_bios_attrs(fu_engine_get_context(engine)); - items = fu_bios_attrs_get_all(attrs); + attrs = fu_context_get_bios_settings(fu_engine_get_context(engine)); + items = fu_bios_settings_get_all(attrs); g_assert_cmpint(items->len, ==, 4); /* enumeration */ - attr1 = - fu_context_get_bios_attr(fu_engine_get_context(engine), "com.fwupd-internal.Absolute"); + attr1 = fu_context_get_bios_setting(fu_engine_get_context(engine), + "com.fwupd-internal.Absolute"); g_assert_nonnull(attr1); - current = fwupd_bios_attr_get_current_value(attr1); + current = fwupd_bios_setting_get_current_value(attr1); g_assert_nonnull(current); g_hash_table_insert(bios_settings, g_strdup("Absolute"), g_strdup("Disabled")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_no_error(error); g_assert_true(ret); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("Absolute"), g_strdup("off")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_no_error(error); g_assert_true(ret); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("Absolute"), g_strdup("FOO")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_false(ret); g_assert_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED); g_clear_error(&error); - /* use BiosAttrId instead */ + /* use BiosSettingId instead */ g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("com.fwupd-internal.Absolute"), g_strdup(current)); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_no_error(error); g_assert_true(ret); /* string */ - attr2 = fu_context_get_bios_attr(fu_engine_get_context(engine), "com.fwupd-internal.Asset"); + attr2 = + fu_context_get_bios_setting(fu_engine_get_context(engine), "com.fwupd-internal.Asset"); g_assert_nonnull(attr2); - current = fwupd_bios_attr_get_current_value(attr2); + current = fwupd_bios_setting_get_current_value(attr2); g_assert_nonnull(current); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("Asset"), g_strdup("1")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_no_error(error); g_assert_true(ret); @@ -4556,55 +4557,55 @@ fu_engine_modify_bios_attrs_func(void) bios_settings, g_strdup("Absolute"), g_strdup("1234567891123456789112345678911234567891123456789112345678911111")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_false(ret); g_assert_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED); g_clear_error(&error); /* integer */ - attr3 = fu_context_get_bios_attr(fu_engine_get_context(engine), - "com.fwupd-internal.CustomChargeStop"); + attr3 = fu_context_get_bios_setting(fu_engine_get_context(engine), + "com.fwupd-internal.CustomChargeStop"); g_assert_nonnull(attr3); - current = fwupd_bios_attr_get_current_value(attr3); + current = fwupd_bios_setting_get_current_value(attr3); g_assert_nonnull(current); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("CustomChargeStop"), g_strdup("70")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_true(ret); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("CustomChargeStop"), g_strdup("110")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_false(ret); g_assert_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED); g_clear_error(&error); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("CustomChargeStop"), g_strdup("1")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_false(ret); g_assert_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED); g_clear_error(&error); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("CustomChargeStop"), g_strdup(current)); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_true(ret); g_assert_no_error(error); /* Read Only */ - attr4 = fu_context_get_bios_attr(fu_engine_get_context(engine), - "com.fwupd-internal.pending_reboot"); + attr4 = fu_context_get_bios_setting(fu_engine_get_context(engine), + "com.fwupd-internal.pending_reboot"); g_assert_nonnull(attr4); - current = fwupd_bios_attr_get_current_value(attr4); + current = fwupd_bios_setting_get_current_value(attr4); g_assert_nonnull(current); g_hash_table_remove_all(bios_settings); g_hash_table_insert(bios_settings, g_strdup("pending_reboot"), g_strdup("foo")); - ret = fu_engine_modify_bios_attrs(engine, bios_settings, &error); + ret = fu_engine_modify_bios_settings(engine, bios_settings, &error); g_assert_false(ret); g_assert_error(error, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED); g_clear_error(&error); @@ -4793,6 +4794,6 @@ main(int argc, char **argv) g_test_add_func("/fwupd/common{cab-error-missing-file}", fu_common_store_cab_error_missing_file_func); g_test_add_func("/fwupd/common{cab-error-size}", fu_common_store_cab_error_size_func); - g_test_add_func("/fwupd/write-bios-attrs", fu_engine_modify_bios_attrs_func); + g_test_add_func("/fwupd/write-bios-attrs", fu_engine_modify_bios_settings_func); return g_test_run(); } diff --git a/src/fu-tool.c b/src/fu-tool.c index 20f2b41d1..6f3a50fab 100644 --- a/src/fu-tool.c +++ b/src/fu-tool.c @@ -21,12 +21,12 @@ #include #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-common-private.h" #include "fwupd-device-private.h" #include "fwupd-plugin-private.h" -#include "fu-bios-attrs-private.h" +#include "fu-bios-settings-private.h" #include "fu-cabinet.h" #include "fu-context-private.h" #include "fu-debug.h" @@ -39,7 +39,7 @@ #include "fu-security-attr-common.h" #include "fu-security-attrs-private.h" #include "fu-smbios-private.h" -#include "fu-util-bios-attr.h" +#include "fu-util-bios-setting.h" #include "fu-util-common.h" #ifdef HAVE_SYSTEMD @@ -3224,9 +3224,9 @@ fu_util_switch_branch(FuUtilPrivate *priv, gchar **values, GError **error) } static gboolean -fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) +fu_util_set_bios_setting(FuUtilPrivate *priv, gchar **input, GError **error) { - g_autoptr(GHashTable) settings = fu_util_bios_attrs_parse_argv(input, error); + g_autoptr(GHashTable) settings = fu_util_bios_settings_parse_argv(input, error); if (settings == NULL) return FALSE; @@ -3237,8 +3237,8 @@ fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) error)) return FALSE; - if (!fu_engine_modify_bios_attrs(priv->engine, settings, error)) { - g_prefix_error(error, "failed to set BIOS attribute: "); + if (!fu_engine_modify_bios_settings(priv->engine, settings, error)) { + g_prefix_error(error, "failed to set BIOS setting: "); return FALSE; } @@ -3250,7 +3250,7 @@ fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) while (g_hash_table_iter_next(&iter, &key, &value)) { g_autofree gchar *msg = /* TRANSLATORS: Configured a BIOS setting to a value */ - g_strdup_printf(_("Set BIOS attribute '%s' using '%s'."), + g_strdup_printf(_("Set BIOS setting '%s' using '%s'."), (const gchar *)key, (const gchar *)value); g_print("\n%s\n", msg); @@ -3267,9 +3267,9 @@ fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) } static gboolean -fu_util_get_bios_attr(FuUtilPrivate *priv, gchar **values, GError **error) +fu_util_get_bios_setting(FuUtilPrivate *priv, gchar **values, GError **error) { - g_autoptr(FuBiosAttrs) attrs = NULL; + g_autoptr(FuBiosSettings) attrs = NULL; g_autoptr(GPtrArray) items = NULL; FuContext *ctx = fu_engine_get_context(priv->engine); gboolean found = FALSE; @@ -3281,15 +3281,15 @@ fu_util_get_bios_attr(FuUtilPrivate *priv, gchar **values, GError **error) error)) return FALSE; - attrs = fu_context_get_bios_attrs(ctx); - items = fu_bios_attrs_get_all(attrs); + attrs = fu_context_get_bios_settings(ctx); + items = fu_bios_settings_get_all(attrs); if (priv->as_json) - return fu_util_get_bios_attr_as_json(values, items, error); + return fu_util_get_bios_setting_as_json(values, items, error); for (guint i = 0; i < items->len; i++) { - FwupdBiosAttr *attr = g_ptr_array_index(items, i); - if (fu_util_bios_attr_matches_args(attr, values)) { - g_autofree gchar *tmp = fu_util_bios_attr_to_string(attr, 0); + FwupdBiosSetting *attr = g_ptr_array_index(items, i); + if (fu_util_bios_setting_matches_args(attr, values)) { + g_autofree gchar *tmp = fu_util_bios_setting_to_string(attr, 0); g_print("%s\n", tmp); found = TRUE; } @@ -3848,14 +3848,14 @@ main(int argc, char *argv[]) _("[SETTING1] [ SETTING2]..."), /* TRANSLATORS: command description */ _("Retrieve BIOS settings. If no arguments are passed all settings are returned"), - fu_util_get_bios_attr); + fu_util_get_bios_setting); fu_util_cmd_array_add(cmd_array, "set-bios-setting", /* TRANSLATORS: command argument: uppercase, spaces->dashes */ _("SETTING VALUE"), /* TRANSLATORS: command description */ _("Set a BIOS setting"), - fu_util_set_bios_attr); + fu_util_set_bios_setting); /* do stuff on ctrl+c */ priv->cancellable = g_cancellable_new(); diff --git a/src/fu-util-bios-attr.h b/src/fu-util-bios-attr.h deleted file mode 100644 index 51b1aefbf..000000000 --- a/src/fu-util-bios-attr.h +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (C) 2017 Richard Hughes - * - * SPDX-License-Identifier: LGPL-2.1+ - */ - -#pragma once - -#include - -#include "fwupd-bios-attr-private.h" - -gchar * -fu_util_bios_attr_to_string(FwupdBiosAttr *attr, guint idt); -gboolean -fu_util_bios_attr_matches_args(FwupdBiosAttr *attr, gchar **values); -gboolean -fu_util_get_bios_attr_as_json(gchar **values, GPtrArray *attrs, GError **error); -GHashTable * -fu_util_bios_attrs_parse_argv(gchar **input, GError **error); diff --git a/src/fu-util-bios-attr.c b/src/fu-util-bios-setting.c similarity index 65% rename from src/fu-util-bios-attr.c rename to src/fu-util-bios-setting.c index 6907378fb..45446d160 100644 --- a/src/fu-util-bios-attr.c +++ b/src/fu-util-bios-setting.c @@ -10,29 +10,29 @@ #include -#include "fu-bios-attrs-private.h" -#include "fu-util-bios-attr.h" +#include "fu-bios-settings-private.h" +#include "fu-util-bios-setting.h" #include "fu-util-common.h" static gboolean -fu_util_bios_attr_dup_fields(const gchar *name, const gchar *desc) +fu_util_bios_setting_dup_fields(const gchar *name, const gchar *desc) { return g_strcmp0(name, desc) == 0; } static void -fu_util_bios_attr_update_description(FwupdBiosAttr *attr) +fu_util_bios_setting_update_description(FwupdBiosSetting *setting) { - const gchar *name = fwupd_bios_attr_get_name(attr); - const gchar *old = fwupd_bios_attr_get_description(attr); + const gchar *name = fwupd_bios_setting_get_name(setting); + const gchar *old = fwupd_bios_setting_get_description(setting); const gchar *new = NULL; - if (g_strcmp0(name, FWUPD_BIOS_ATTR_PENDING_REBOOT) == 0) { + if (g_strcmp0(name, FWUPD_BIOS_SETTING_PENDING_REBOOT) == 0) { /* TRANSLATORS: Settings refers to BIOS settings in this context */ new = _("Settings will apply after system reboots"); } /* For providing a better description on a number of Lenovo systems */ - if (fu_util_bios_attr_dup_fields(name, old)) { + if (fu_util_bios_setting_dup_fields(name, old)) { if (g_strcmp0(old, "WindowsUEFIFirmwareUpdate") == 0) { /* TRANSLATORS: description of a BIOS setting */ new = _("BIOS updates delivered via LVFS or Windows Update"); @@ -42,21 +42,21 @@ fu_util_bios_attr_update_description(FwupdBiosAttr *attr) new = gettext(old); } if (new != NULL) - fwupd_bios_attr_set_description(attr, new); + fwupd_bios_setting_set_description(setting, new); } static const gchar * -fu_util_bios_attr_kind_to_string(FwupdBiosAttrKind kind) +fu_util_bios_setting_kind_to_string(FwupdBiosSettingKind kind) { - if (kind == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { + if (kind == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { /* TRANSLATORS: The BIOS setting can only be changed to fixed values */ return _("Enumeration"); } - if (kind == FWUPD_BIOS_ATTR_KIND_INTEGER) { + if (kind == FWUPD_BIOS_SETTING_KIND_INTEGER) { /* TRANSLATORS: The BIOS setting only accepts integers in a fixed range */ return _("Integer"); } - if (kind == FWUPD_BIOS_ATTR_KIND_STRING) { + if (kind == FWUPD_BIOS_SETTING_KIND_STRING) { /* TRANSLATORS: The BIOS setting accepts strings */ return _("String"); } @@ -64,14 +64,14 @@ fu_util_bios_attr_kind_to_string(FwupdBiosAttrKind kind) } gboolean -fu_util_bios_attr_matches_args(FwupdBiosAttr *attr, gchar **values) +fu_util_bios_setting_matches_args(FwupdBiosSetting *setting, gchar **values) { const gchar *name; /* no arguments set */ if (g_strv_length(values) == 0) return TRUE; - name = fwupd_bios_attr_get_name(attr); + name = fwupd_bios_setting_get_name(setting); /* check all arguments */ for (guint j = 0; j < g_strv_length(values); j++) { @@ -82,19 +82,19 @@ fu_util_bios_attr_matches_args(FwupdBiosAttr *attr, gchar **values) } gboolean -fu_util_get_bios_attr_as_json(gchar **values, GPtrArray *attrs, GError **error) +fu_util_get_bios_setting_as_json(gchar **values, GPtrArray *settings, GError **error) { g_autoptr(JsonBuilder) builder = json_builder_new(); json_builder_begin_object(builder); - json_builder_set_member_name(builder, "BiosAttributes"); + json_builder_set_member_name(builder, "BiosSettings"); json_builder_begin_array(builder); - for (guint i = 0; i < attrs->len; i++) { - FwupdBiosAttr *attr = g_ptr_array_index(attrs, i); - if (fu_util_bios_attr_matches_args(attr, values)) { - fu_util_bios_attr_update_description(attr); + for (guint i = 0; i < settings->len; i++) { + FwupdBiosSetting *setting = g_ptr_array_index(settings, i); + if (fu_util_bios_setting_matches_args(setting, values)) { + fu_util_bios_setting_update_description(setting); json_builder_begin_object(builder); - fwupd_bios_attr_to_json(attr, builder); + fwupd_bios_setting_to_json(setting, builder); json_builder_end_object(builder); } } @@ -104,31 +104,31 @@ fu_util_get_bios_attr_as_json(gchar **values, GPtrArray *attrs, GError **error) } gchar * -fu_util_bios_attr_to_string(FwupdBiosAttr *attr, guint idt) +fu_util_bios_setting_to_string(FwupdBiosSetting *setting, guint idt) { const gchar *tmp; - FwupdBiosAttrKind type; + FwupdBiosSettingKind type; g_autofree gchar *current_value = NULL; g_autoptr(GError) error_local = NULL; g_autoptr(GString) str = g_string_new(NULL); if (g_getenv("FWUPD_VERBOSE") != NULL) { g_autofree gchar *debug_str = NULL; - debug_str = fwupd_bios_attr_to_string(attr); + debug_str = fwupd_bios_setting_to_string(setting); g_debug("%s", debug_str); return NULL; } - tmp = fwupd_bios_attr_get_name(attr); + tmp = fwupd_bios_setting_get_name(setting); fu_string_append(str, idt, tmp, NULL); - type = fwupd_bios_attr_get_kind(attr); - tmp = fu_util_bios_attr_kind_to_string(type); + type = fwupd_bios_setting_get_kind(setting); + tmp = fu_util_bios_setting_kind_to_string(type); if (tmp != NULL) { /* TRANSLATORS: type of BIOS setting */ fu_string_append(str, idt + 1, _("Setting type"), tmp); } - tmp = fwupd_bios_attr_get_current_value(attr); + tmp = fwupd_bios_setting_get_current_value(setting); if (tmp != NULL) { current_value = g_strdup(tmp); } else { @@ -138,14 +138,14 @@ fu_util_bios_attr_to_string(FwupdBiosAttr *attr, guint idt) /* TRANSLATORS: current value of a BIOS setting */ fu_string_append(str, idt + 1, _("Current Value"), current_value); - fu_util_bios_attr_update_description(attr); - tmp = fwupd_bios_attr_get_description(attr); + fu_util_bios_setting_update_description(setting); + tmp = fwupd_bios_setting_get_description(setting); if (tmp != NULL) { /* TRANSLATORS: description of BIOS setting */ fu_string_append(str, idt + 1, _("Description"), tmp); } - if (fwupd_bios_attr_get_read_only(attr)) { + if (fwupd_bios_setting_get_read_only(setting)) { /* TRANSLATORS: item is TRUE */ tmp = _("True"); } else { @@ -155,15 +155,17 @@ fu_util_bios_attr_to_string(FwupdBiosAttr *attr, guint idt) /* TRANSLATORS: BIOS setting is read only */ fu_string_append(str, idt + 1, _("Read Only"), tmp); - if (type == FWUPD_BIOS_ATTR_KIND_INTEGER || type == FWUPD_BIOS_ATTR_KIND_STRING) { + if (type == FWUPD_BIOS_SETTING_KIND_INTEGER || type == FWUPD_BIOS_SETTING_KIND_STRING) { g_autofree gchar *lower = - g_strdup_printf("%" G_GUINT64_FORMAT, fwupd_bios_attr_get_lower_bound(attr)); + g_strdup_printf("%" G_GUINT64_FORMAT, + fwupd_bios_setting_get_lower_bound(setting)); g_autofree gchar *upper = - g_strdup_printf("%" G_GUINT64_FORMAT, fwupd_bios_attr_get_upper_bound(attr)); - if (type == FWUPD_BIOS_ATTR_KIND_INTEGER) { + g_strdup_printf("%" G_GUINT64_FORMAT, + fwupd_bios_setting_get_upper_bound(setting)); + if (type == FWUPD_BIOS_SETTING_KIND_INTEGER) { g_autofree gchar *scalar = g_strdup_printf("%" G_GUINT64_FORMAT, - fwupd_bios_attr_get_scalar_increment(attr)); + fwupd_bios_setting_get_scalar_increment(setting)); if (lower != NULL) { /* TRANSLATORS: Lowest valid integer for BIOS setting */ fu_string_append(str, idt + 1, _("Minimum value"), lower); @@ -186,8 +188,8 @@ fu_util_bios_attr_to_string(FwupdBiosAttr *attr, guint idt) fu_string_append(str, idt + 1, _("Maximum length"), upper); } } - } else if (type == FWUPD_BIOS_ATTR_KIND_ENUMERATION) { - GPtrArray *values = fwupd_bios_attr_get_possible_values(attr); + } else if (type == FWUPD_BIOS_SETTING_KIND_ENUMERATION) { + GPtrArray *values = fwupd_bios_setting_get_possible_values(setting); if (values != NULL && values->len > 0) { /* TRANSLATORS: Possible values for a bios setting */ fu_string_append(str, idt + 1, _("Possible Values"), NULL); @@ -202,7 +204,7 @@ fu_util_bios_attr_to_string(FwupdBiosAttr *attr, guint idt) } GHashTable * -fu_util_bios_attrs_parse_argv(gchar **input, GError **error) +fu_util_bios_settings_parse_argv(gchar **input, GError **error) { g_autoptr(GHashTable) bios_settings = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); @@ -220,7 +222,7 @@ fu_util_bios_attrs_parse_argv(gchar **input, GError **error) if (g_strv_length(input) == 1) { g_autofree gchar *data = NULL; g_autoptr(JsonParser) parser = json_parser_new(); - g_autoptr(FuBiosAttrs) new_bios_attrs = fu_bios_attrs_new(); + g_autoptr(FuBiosSettings) new_bios_settings = fu_bios_settings_new(); g_autoptr(GPtrArray) new_items = NULL; if (!g_file_get_contents(input[0], &data, NULL, error)) @@ -230,15 +232,18 @@ fu_util_bios_attrs_parse_argv(gchar **input, GError **error) return NULL; } - if (!fu_bios_attrs_from_json(new_bios_attrs, json_parser_get_root(parser), error)) + if (!fu_bios_settings_from_json(new_bios_settings, + json_parser_get_root(parser), + error)) return NULL; - new_items = fu_bios_attrs_get_all(new_bios_attrs); + new_items = fu_bios_settings_get_all(new_bios_settings); for (guint i = 0; i < new_items->len; i++) { - FwupdBiosAttr *item_attr = g_ptr_array_index(new_items, i); - g_hash_table_insert(bios_settings, - g_strdup(fwupd_bios_attr_get_id(item_attr)), - g_strdup(fwupd_bios_attr_get_current_value(item_attr))); + FwupdBiosSetting *item_setting = g_ptr_array_index(new_items, i); + g_hash_table_insert( + bios_settings, + g_strdup(fwupd_bios_setting_get_id(item_setting)), + g_strdup(fwupd_bios_setting_get_current_value(item_setting))); } } else { for (guint i = 0; i < g_strv_length(input); i += 2) diff --git a/src/fu-util-bios-setting.h b/src/fu-util-bios-setting.h new file mode 100644 index 000000000..3f06eddf6 --- /dev/null +++ b/src/fu-util-bios-setting.h @@ -0,0 +1,20 @@ +/* + * Copyright (C) 2017 Richard Hughes + * + * SPDX-License-Identifier: LGPL-2.1+ + */ + +#pragma once + +#include + +#include "fwupd-bios-setting-private.h" + +gchar * +fu_util_bios_setting_to_string(FwupdBiosSetting *setting, guint idt); +gboolean +fu_util_bios_setting_matches_args(FwupdBiosSetting *setting, gchar **values); +gboolean +fu_util_get_bios_setting_as_json(gchar **values, GPtrArray *settings, GError **error); +GHashTable * +fu_util_bios_settings_parse_argv(gchar **input, GError **error); diff --git a/src/fu-util-common.h b/src/fu-util-common.h index 281dc6a2a..43282d117 100644 --- a/src/fu-util-common.h +++ b/src/fu-util-common.h @@ -10,7 +10,7 @@ #include -#include "fwupd-bios-attr-private.h" +#include "fwupd-bios-setting-private.h" #include "fwupd-security-attr-private.h" /* this is only valid for tools */ diff --git a/src/fu-util.c b/src/fu-util.c index 3f3fc94ef..2ea04f4e5 100644 --- a/src/fu-util.c +++ b/src/fu-util.c @@ -30,7 +30,7 @@ #include "fu-plugin-private.h" #include "fu-polkit-agent.h" #include "fu-progressbar.h" -#include "fu-util-bios-attr.h" +#include "fu-util-bios-setting.h" #include "fu-util-common.h" #ifdef HAVE_SYSTEMD @@ -3387,7 +3387,7 @@ fu_util_sync_bkc(FuUtilPrivate *priv, gchar **values, GError **error) } static gboolean -fu_util_security_modify_bios_attr(FuUtilPrivate *priv, FwupdSecurityAttr *attr, GError **error) +fu_util_security_modify_bios_setting(FuUtilPrivate *priv, FwupdSecurityAttr *attr, GError **error) { g_autoptr(GString) body = g_string_new(NULL); g_autoptr(GString) title = g_string_new(NULL); @@ -3408,9 +3408,9 @@ fu_util_security_modify_bios_attr(FuUtilPrivate *priv, FwupdSecurityAttr *attr, _("This tool can change the BIOS setting '%s' from '%s' to '%s' " "automatically, but it will only be active after restarting the " "computer."), - fwupd_security_attr_get_bios_attr_id(attr), - fwupd_security_attr_get_bios_attr_current_value(attr), - fwupd_security_attr_get_bios_attr_target_value(attr)); + fwupd_security_attr_get_bios_setting_id(attr), + fwupd_security_attr_get_bios_setting_current_value(attr), + fwupd_security_attr_get_bios_setting_target_value(attr)); g_string_append(body, "\n\n"); g_string_append_printf(body, /* TRANSLATORS: the user has to manually recover; we can't do it */ @@ -3426,9 +3426,12 @@ fu_util_security_modify_bios_attr(FuUtilPrivate *priv, FwupdSecurityAttr *attr, if (!fu_util_prompt_for_boolean(FALSE)) return TRUE; g_hash_table_insert(bios_settings, - g_strdup(fwupd_security_attr_get_bios_attr_id(attr)), - g_strdup(fwupd_security_attr_get_bios_attr_target_value(attr))); - if (!fwupd_client_modify_bios_attr(priv->client, bios_settings, priv->cancellable, error)) + g_strdup(fwupd_security_attr_get_bios_setting_id(attr)), + g_strdup(fwupd_security_attr_get_bios_setting_target_value(attr))); + if (!fwupd_client_modify_bios_setting(priv->client, + bios_settings, + priv->cancellable, + error)) return FALSE; /* do not offer to upload the report */ @@ -3534,10 +3537,10 @@ fu_util_security(FuUtilPrivate *priv, gchar **values, GError **error) for (guint j = 0; j < attrs->len; j++) { FwupdSecurityAttr *attr = g_ptr_array_index(attrs, j); if (!fwupd_security_attr_has_flag(attr, FWUPD_SECURITY_ATTR_FLAG_SUCCESS) && - fwupd_security_attr_get_bios_attr_id(attr) != NULL && - fwupd_security_attr_get_bios_attr_current_value(attr) != NULL && - fwupd_security_attr_get_bios_attr_target_value(attr) != NULL) { - if (!fu_util_security_modify_bios_attr(priv, attr, error)) + fwupd_security_attr_get_bios_setting_id(attr) != NULL && + fwupd_security_attr_get_bios_setting_current_value(attr) != NULL && + fwupd_security_attr_get_bios_setting_target_value(attr) != NULL) { + if (!fu_util_security_modify_bios_setting(priv, attr, error)) return FALSE; } } @@ -3866,15 +3869,15 @@ fu_util_show_plugin_warnings(FuUtilPrivate *priv) } static gboolean -fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) +fu_util_set_bios_setting(FuUtilPrivate *priv, gchar **input, GError **error) { - g_autoptr(GHashTable) settings = fu_util_bios_attrs_parse_argv(input, error); + g_autoptr(GHashTable) settings = fu_util_bios_settings_parse_argv(input, error); if (settings == NULL) return FALSE; - if (!fwupd_client_modify_bios_attr(priv->client, settings, priv->cancellable, error)) { - g_prefix_error(error, "failed to set BIOS attribute: "); + if (!fwupd_client_modify_bios_setting(priv->client, settings, priv->cancellable, error)) { + g_prefix_error(error, "failed to set BIOS setting: "); return FALSE; } @@ -3886,7 +3889,7 @@ fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) while (g_hash_table_iter_next(&iter, &key, &value)) { g_autofree gchar *msg = /* TRANSLATORS: Configured a BIOS setting to a value */ - g_strdup_printf(_("Set BIOS attribute '%s' using '%s'."), + g_strdup_printf(_("Set BIOS setting '%s' using '%s'."), (const gchar *)key, (const gchar *)value); g_print("\n%s\n", msg); @@ -3903,21 +3906,21 @@ fu_util_set_bios_attr(FuUtilPrivate *priv, gchar **input, GError **error) } static gboolean -fu_util_get_bios_attr(FuUtilPrivate *priv, gchar **values, GError **error) +fu_util_get_bios_setting(FuUtilPrivate *priv, gchar **values, GError **error) { g_autoptr(GPtrArray) attrs = NULL; gboolean found = FALSE; - attrs = fwupd_client_get_bios_attrs(priv->client, priv->cancellable, error); + attrs = fwupd_client_get_bios_settings(priv->client, priv->cancellable, error); if (attrs == NULL) return FALSE; if (priv->as_json) - return fu_util_get_bios_attr_as_json(values, attrs, error); + return fu_util_get_bios_setting_as_json(values, attrs, error); for (guint i = 0; i < attrs->len; i++) { - FwupdBiosAttr *attr = g_ptr_array_index(attrs, i); - if (fu_util_bios_attr_matches_args(attr, values)) { - g_autofree gchar *tmp = fu_util_bios_attr_to_string(attr, 0); + FwupdBiosSetting *attr = g_ptr_array_index(attrs, i); + if (fu_util_bios_setting_matches_args(attr, values)) { + g_autofree gchar *tmp = fu_util_bios_setting_to_string(attr, 0); g_print("\n%s\n", tmp); found = TRUE; } @@ -4446,14 +4449,14 @@ main(int argc, char *argv[]) _("[SETTING1] [SETTING2] [--no-authenticate]"), /* TRANSLATORS: command description */ _("Retrieve BIOS settings. If no arguments are passed all settings are returned"), - fu_util_get_bios_attr); + fu_util_get_bios_setting); fu_util_cmd_array_add(cmd_array, "set-bios-setting", /* TRANSLATORS: command argument: uppercase, spaces->dashes */ _("SETTING1 VALUE1 [SETTING2] [VALUE2]"), /* TRANSLATORS: command description */ _("Sets one or more BIOS settings"), - fu_util_set_bios_attr); + fu_util_set_bios_setting); /* do stuff on ctrl+c */ priv->cancellable = g_cancellable_new(); diff --git a/src/meson.build b/src/meson.build index 692831806..1fbce778c 100644 --- a/src/meson.build +++ b/src/meson.build @@ -85,7 +85,7 @@ fwupdmgr = executable( 'fu-history.c', 'fu-progressbar.c', 'fu-security-attr-common.c', - 'fu-util-bios-attr.c', + 'fu-util-bios-setting.c', 'fu-util-common.c', client_src, systemd_src @@ -188,7 +188,7 @@ fwupdtool = executable( 'fu-tool.c', 'fu-progressbar.c', 'fu-util-common.c', - 'fu-util-bios-attr.c', + 'fu-util-bios-setting.c', daemon_src, ], include_directories: [ diff --git a/src/org.freedesktop.fwupd.xml b/src/org.freedesktop.fwupd.xml index 89edd2044..7e58cceee 100644 --- a/src/org.freedesktop.fwupd.xml +++ b/src/org.freedesktop.fwupd.xml @@ -866,35 +866,35 @@ - + - Modify BIOS attribute + Modify BIOS setting - An array of BIOS attributes and their new values. + An array of BIOS settings and their new values. - + - Gets a list of all the BIOS attributes. + Gets a list of all the BIOS settings. - An array of BIOS attributes, with any properties set on each. + An array of BIOS settings, with any properties set on each.