FreeBSD manual

download PDF document: efivar.3.pdf

LIBEFIVAR(3) FreeBSD Library Functions Manual LIBEFIVAR(3)
NAME libefivar - EFI Non Volatile Variable Support
SYNOPSIS #include <efivar.h>
int efi_append_variable(efi_guid_t guid, const char *name, void *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, void **data, ssize_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, void *data, size_t data_size, uint32_t attributes);
int efi_str_to_guid(const char *s, efi_guid_t *guid);
int efi_variables_supported(void);
DESCRIPTION The libefivar library implements access to EFI Variables via the EFI Runtime Services. 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_get_variable_attributes() - efi_get_variable_size() - efi_guid_to_name() - efi_guid_to_str() - efi_guid_to_symbol() - efi_name_to_guid() - efi_set_variable() - efi_str_to_guid()
SEE ALSO efidev(4)
HISTORY The libefivar library first appeared in FreeBSD 12.0.
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.
FreeBSD 14.0-RELEASE-p11 October 25, 2018 FreeBSD 14.0-RELEASE-p11