NAME
libefivar
—
EFI Non Volatile Variable
Support
LIBRARY
library “libefivar”
SYNOPSIS
#include
<efivar.h>
int
efi_append_variable
(efi_guid_t
guid, const char
*name, uint8_t
*data, size_t
data_size, uint32_t
attributes);
int
efi_del_variable
(efi_guid_t
guid, const char
*name);
int
efi_get_variable
(efi_guid_t
guid, const char
*name, uint8_t
**data, size_t
*data_size, uint32_t
*attributes);
int
efi_get_variable_attributes
(efi_guid_t
guid, const char
*name, uint32_t
*attributes);
int
efi_get_variable_size
(efi_guid_t
guid, const char
*name, size_t
*size);
int
efi_get_next_variable_name
(efi_guid_t
**guid, char
**name);
int
efi_guid_to_name
(efi_guid_t
*guid, char
**name);
int
efi_guid_to_symbol
(efi_guid_t
*guid, char
**symbol);
int
efi_guid_to_str
(const
efi_guid_t *guid, char
**sp);
int
efi_name_to_guid
(const
char *name, efi_guid_t
*guid);
int
efi_set_variable
(efi_guid_t
guid, const char
*name, uint8_t
*data, size_t
data_size, uint32_t
attributes, mode_t
mode);
int
efi_str_to_guid
(const
char *s, efi_guid_t
*guid);
int
efi_variables_supported
(void);
DESCRIPTION
Thelibefivar
library implements access to EFI Variables
via the EFI Runtime Serivces. All char * strings are converted to 16-bit UTF
strings before passing them to EFI.
efi_variables_supported
()
returns non-zero if the current machine supports setting of EFI firmware
variables and the kernel support for doing so is present. Otherwise zero is
returned.
efi_del_variable
()
deletes the EFI variable selected by guid
and
name
.
efi_get_variable
()
efi_get_variable_attributes
()
efi_get_variable_size
()
efi_append_variable
()
efi_set_variable
()
efi_get_next_variable_name
()
efi_str_to_guid
()
efi_guid_to_str
()
efi_name_to_guid
()
efi_guid_to_name
()
efi_guid_to_symbol
()
This function is not actually implemented.
SEE ALSO
AUTHORS
This software was originally written by Warner Losh.
BUGS
No facilities exist to process the strings as native UTF. This is a limitation in the Linux libefivar library interface.