Soletta™ Framework
|
EFI variables API for Soletta. More...
Macros | |
#define | CREATE_BLOB(_val) |
Macro to create a struct sol_blob with value passed as argument. More... | |
#define | CREATE_BUFFER(_val) |
Macro to create a struct sol_buffer with value passed as argument and flags SOL_BUFFER_FLAGS_MEMORY_NOT_OWNED and SOL_BUFFER_FLAGS_NO_NUL_BYTE. More... | |
Functions | |
static int | sol_efivars_read_bool (const char *name, bool *value) |
Reads a boolean from the EFI given variable and set to value. More... | |
static int | sol_efivars_read_double (const char *name, double *value) |
Reads a double from the EFI given variable and set to value. More... | |
static int | sol_efivars_read_drange (const char *name, struct sol_drange *value) |
Reads a sol_drange from the EFI given variable and set to value. More... | |
static int | sol_efivars_read_int32 (const char *name, int32_t *value) |
Reads an int32_t from the EFI given variable and set to value. More... | |
static int | sol_efivars_read_irange (const char *name, struct sol_irange *value) |
Reads a sol_irange from the EFI given variable and set to value. More... | |
int | sol_efivars_read_raw (const char *name, struct sol_buffer *buffer) |
Read stored contents and set to buffer. More... | |
static int | sol_efivars_read_string (const char *name, char **value) |
Reads a string from the EFI given variable and set to value. More... | |
static int | sol_efivars_read_uint8 (const char *name, uint8_t *value) |
Reads an uint8_t from the EFI given variable and set to value. More... | |
static int | sol_efivars_write_bool (const char *name, bool value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes a boolean into an EFI variable. More... | |
static int | sol_efivars_write_double (const char *name, double value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes a double into an EFI variable. More... | |
static int | sol_efivars_write_drange (const char *name, struct sol_drange *value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes a sol_drange into an EFI variable. More... | |
static int | sol_efivars_write_int32 (const char *name, int32_t value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes an int32_t into an EFI variable. More... | |
static int | sol_efivars_write_irange (const char *name, struct sol_irange *value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes a sol_irange into an EFI variable. More... | |
int | sol_efivars_write_raw (const char *name, struct sol_blob *blob, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes buffer contents to storage. More... | |
static int | sol_efivars_write_string (const char *name, const char *value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes a string into an EFI variable. More... | |
static int | sol_efivars_write_uint8 (const char *name, uint8_t value, void(*cb)(void *data, const char *name, struct sol_blob *blob, int status), const void *data) |
Writes an uint8_t into an EFI variable. More... | |
EFI variables API for Soletta.
#define CREATE_BLOB | ( | _val | ) |
Macro to create a struct sol_blob with value passed as argument.
Referenced by sol_efivars_write_bool(), sol_efivars_write_double(), sol_efivars_write_drange(), sol_efivars_write_int32(), sol_efivars_write_irange(), and sol_efivars_write_uint8().
#define CREATE_BUFFER | ( | _val | ) |
Macro to create a struct sol_buffer with value passed as argument and flags SOL_BUFFER_FLAGS_MEMORY_NOT_OWNED and SOL_BUFFER_FLAGS_NO_NUL_BYTE.
Referenced by sol_efivars_read_bool(), sol_efivars_read_double(), sol_efivars_read_drange(), sol_efivars_read_int32(), sol_efivars_read_irange(), and sol_efivars_read_uint8().
|
inlinestatic |
Reads a boolean from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References CREATE_BUFFER, and sol_efivars_read_raw().
|
inlinestatic |
Reads a double from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References CREATE_BUFFER, and sol_efivars_read_raw().
|
inlinestatic |
Reads a sol_drange from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References CREATE_BUFFER, and sol_efivars_read_raw().
|
inlinestatic |
Reads an int32_t from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References CREATE_BUFFER, and sol_efivars_read_raw().
|
inlinestatic |
Reads a sol_irange from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References CREATE_BUFFER, and sol_efivars_read_raw().
int sol_efivars_read_raw | ( | const char * | name, |
struct sol_buffer * | buffer | ||
) |
Read stored contents and set to buffer.
This function will read the contents of the EFI variable name into the buffer buffer. It will try to resize the buffer if needed.
name | name of property. It will look for an EFI variable with this name. |
buffer | buffer that will be set with read contents. |
return 0 on success, a negative number on failure
Referenced by sol_efivars_read_bool(), sol_efivars_read_double(), sol_efivars_read_drange(), sol_efivars_read_int32(), sol_efivars_read_irange(), sol_efivars_read_string(), and sol_efivars_read_uint8().
|
inlinestatic |
Reads a string from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References sol_buffer_fini(), SOL_BUFFER_INIT_EMPTY, sol_buffer_steal(), and sol_efivars_read_raw().
|
inlinestatic |
Reads an uint8_t from the EFI given variable and set to value.
This function will read the contents of the EFI variable name into the variable value.
name | name of property. It will look for an EFI variable with this name. |
value | The variable that will be set with read contents. |
return 0
on success, a negative number on failure
References CREATE_BUFFER, and sol_efivars_read_raw().
|
inlinestatic |
Writes a boolean into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References CREATE_BLOB, sol_blob_unref(), and sol_efivars_write_raw().
|
inlinestatic |
Writes a double into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References CREATE_BLOB, sol_blob_unref(), and sol_efivars_write_raw().
|
inlinestatic |
Writes a sol_drange into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References CREATE_BLOB, sol_blob_unref(), and sol_efivars_write_raw().
|
inlinestatic |
Writes an int32_t into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References CREATE_BLOB, sol_blob_unref(), and sol_efivars_write_raw().
|
inlinestatic |
Writes a sol_irange into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References CREATE_BLOB, sol_blob_unref(), and sol_efivars_write_raw().
int sol_efivars_write_raw | ( | const char * | name, |
struct sol_blob * | blob, | ||
void(*)(void *data, const char *name, struct sol_blob *blob, int status) | cb, | ||
const void * | data | ||
) |
Writes buffer contents to storage.
Note that as writing operations are asynchronous, to check if it completely succeeded, one needs to register a callback that will inform writing result.
name | name of property. It will create a new EFI variable with this name. |
blob | blob that will be written |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0 on success, a negative number on failure
Referenced by sol_efivars_write_bool(), sol_efivars_write_double(), sol_efivars_write_drange(), sol_efivars_write_int32(), sol_efivars_write_irange(), sol_efivars_write_string(), and sol_efivars_write_uint8().
|
inlinestatic |
Writes a string into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References sol_blob_new(), SOL_BLOB_TYPE_DEFAULT, sol_blob_unref(), sol_efivars_write_raw(), SOL_NULL_CHECK, and SOL_NULL_CHECK_GOTO.
|
inlinestatic |
Writes an uint8_t into an EFI variable.
This function uses sol_efivars_write_raw() internally, the same behaviour should be considered.
name | name of property. It will create a new EFI variable with this name. |
value | The value to be written. |
cb | callback to be called when writing finishes. It contains status of writing: if failed, is lesser than zero. |
data | user data to be sent to callback cb |
return 0
on success, a negative number on failure
References CREATE_BLOB, sol_blob_unref(), and sol_efivars_write_raw().