### Class

# FwupdPlugin Efivars

#### Description

    class FwupdPlugin.Efivars : GObject.Object
    {
      /* No available fields */
    }

No description available.

#### Ancestors

- GObject

#### Constructors

###### fu_efivars_new

No description available.

#### Instance methods

###### fu_efivars_create_boot_entry_for_volume

Creates a BootXXXX variable for a given volume, name and target.

since: 2.0.6

###### fu_efivars_delete

Removes a variable from NVRAM, returning an error if it does not exist.

since: 2.0.0

###### fu_efivars_delete_with_glob

Removes a group of variables from NVRAM.

since: 2.0.0

###### fu_efivars_exists

Test if a variable exists.

since: 2.0.0

###### fu_efivars_get_boot_current

Gets the index of the `BootCurrent` variable.

since: 2.0.0

###### fu_efivars_get_boot_data

Gets the raw data of the `BootXXXX` variable.

since: 2.0.0

###### fu_efivars_get_boot_entries

Gets the loadopt data for all the entries listed in `BootOrder`.

since: 2.0.0

###### fu_efivars_get_boot_entry

Gets the loadopt data of the `BootXXXX` variable.

since: 2.0.0

###### fu_efivars_get_boot_next

Gets the index of the `BootNext` variable.

since: 2.0.0

###### fu_efivars_get_boot_order

Gets the indexes of the `BootOrder` variable.

since: 2.0.0

###### fu_efivars_get_data

Gets the data from a UEFI variable in NVRAM.

since: 2.0.0

###### fu_efivars_get_data_bytes

Gets the data from a UEFI variable in NVRAM.

since: 2.0.0

###### fu_efivars_get_monitor

Returns a file monitor for a specific key.

since: 2.0.0

###### fu_efivars_get_names

Gets the list of names where the GUID matches. An error is set if there are no names matching the GUID.

since: 2.0.0

###### fu_efivars_get_secure_boot

Determines if secure boot was enabled.

since: 2.0.0

###### fu_efivars_set_boot_data

Sets the raw data of the `BootXXXX` variable. If `blob` is `NULL` then the boot entry is deleted.

since: 2.0.0

###### fu_efivars_set_boot_entry

Sets the loadopt data of the `BootXXXX` variable.

since: 2.0.0

###### fu_efivars_set_boot_next

Sets the index of the `BootNext` variable.

since: 2.0.0

###### fu_efivars_set_boot_order

Sets the index of the `BootNext` variable.

since: 2.0.0

###### fu_efivars_set_data

Sets the data to a UEFI variable in NVRAM.

since: 2.0.0

###### fu_efivars_set_data_bytes

Sets the data to a UEFI variable in NVRAM.

since: 2.0.0

###### fu_efivars_space_free

Gets the free size available for new EFI variables, as reported from QueryVariableInfo.

since: 2.0.12

###### fu_efivars_space_used

Gets the total size used by all EFI variables. This may be less than the size reported by the kernel as some (hopefully small) variables are hidden from userspace.

since: 2.0.0

###### fu_efivars_supported

Determines if the kernel supports EFI variables.

since: 2.0.0

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Signals

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct FwupdPluginEfivarsClass {
      GObjectClass parent_class;
      gboolean (* supported) (
        FuEfivars* self,
        GError** error
      );
      guint64 (* space_used) (
        FuEfivars* self,
        GError** error
      );
      guint64 (* space_free) (
        FuEfivars* self,
        GError** error
      );
      gboolean (* exists) (
        FuEfivars* self,
        const gchar* guid,
        const gchar* name
      );
      GFileMonitor* (* get_monitor) (
        FuEfivars* self,
        const gchar* guid,
        const gchar* name,
        GError** error
      );
      gboolean (* get_data) (
        FuEfivars* self,
        const gchar* guid,
        const gchar* name,
        guint8** data,
        gsize* data_sz,
        FuEfiVariableAttrs* attr,
        GError** error
      );
      gboolean (* set_data) (
        FuEfivars* self,
        const gchar* guid,
        const gchar* name,
        const guint8* data,
        gsize sz,
        FuEfiVariableAttrs attr,
        GError** error
      );
      gboolean (* delete) (
        FuEfivars* self,
        const gchar* guid,
        const gchar* name,
        GError** error
      );
      gboolean (* delete_with_glob) (
        FuEfivars* self,
        const gchar* guid,
        const gchar* name_glob,
        GError** error
      );
      GPtrArray* (* get_names) (
        FuEfivars* self,
        const gchar* guid,
        GError** error
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`supported: gboolean (* supported) ( FuEfivars* self, GError** error )`

  No description available.

`space_used: guint64 (* space_used) ( FuEfivars* self, GError** error )`

  No description available.

`space_free: guint64 (* space_free) ( FuEfivars* self, GError** error )`

  No description available.

`exists: gboolean (* exists) ( FuEfivars* self, const gchar* guid, const gchar* name )`

  No description available.

`get_monitor: GFileMonitor* (* get_monitor) ( FuEfivars* self, const gchar* guid, const gchar* name, GError** error )`

  No description available.

`get_data: gboolean (* get_data) ( FuEfivars* self, const gchar* guid, const gchar* name, guint8** data, gsize* data_sz, FuEfiVariableAttrs* attr, GError** error )`

  No description available.

`set_data: gboolean (* set_data) ( FuEfivars* self, const gchar* guid, const gchar* name, const guint8* data, gsize sz, FuEfiVariableAttrs attr, GError** error )`

  No description available.

`delete: gboolean (* delete) ( FuEfivars* self, const gchar* guid, const gchar* name, GError** error )`

  No description available.

`delete_with_glob: gboolean (* delete_with_glob) ( FuEfivars* self, const gchar* guid, const gchar* name_glob, GError** error )`

  No description available.

`get_names: GPtrArray* (* get_names) ( FuEfivars* self, const gchar* guid, GError** error )`

  No description available.

#### Virtual methods

###### FwupdPlugin.EfivarsClass.delete

Removes a variable from NVRAM, returning an error if it does not exist.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.delete_with_glob

Removes a group of variables from NVRAM.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.exists

Test if a variable exists.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.get_data

Gets the data from a UEFI variable in NVRAM.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.get_monitor

Returns a file monitor for a specific key.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.get_names

Gets the list of names where the GUID matches. An error is set if there are no names matching the GUID.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.set_data

Sets the data to a UEFI variable in NVRAM.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.space_free

Gets the free size available for new EFI variables, as reported from QueryVariableInfo.

since: 2.0.12

###### FwupdPlugin.EfivarsClass.space_used

Gets the total size used by all EFI variables. This may be less than the size reported by the kernel as some (hopefully small) variables are hidden from userspace.

since: 2.0.0

###### FwupdPlugin.EfivarsClass.supported

Determines if the kernel supports EFI variables.

since: 2.0.0