diff options
author | Warner Losh <imp@FreeBSD.org> | 2017-11-10 23:30:23 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2017-11-10 23:30:23 +0000 |
commit | 831bec116381607774fa8621dc0e154555d763e0 (patch) | |
tree | 2fdc073afa0de45aff61dde685ca23a6f0a2e572 | |
parent | 2dc620ac8318f40c8843896e4e568bb08575fcda (diff) | |
download | src-831bec116381607774fa8621dc0e154555d763e0.tar.gz src-831bec116381607774fa8621dc0e154555d763e0.zip |
Simplify the efivar interface a little.
We started out having Linux compatible libefivar interfaces. This was
in anticipation of porting the GPL'd efibootmgr to FreeBSD via a
port. However, since we need that functionality in the base, that port
isn't going to happened. It also appears that efivar is a private
library that's not used much outside a command line util and
efibootmgr. Reduce compatibility with the Linux version a little by
removing the mode parameter to efi_set_variable (which was unused on
FreeBSD, and not set to something useful in the code we'd
written). Also remove some efi error routines that were never
implemented and existed only to placate early GPL efibootmgr porting
experiments.
Suggested by: Matt Williams
Sponsored by: Netflix
Notes
Notes:
svn path=/head/; revision=325684
-rw-r--r-- | lib/libefivar/efivar.c | 6 | ||||
-rw-r--r-- | lib/libefivar/efivar.h | 35 | ||||
-rw-r--r-- | usr.sbin/efivar/efivar.c | 2 |
3 files changed, 5 insertions, 38 deletions
diff --git a/lib/libefivar/efivar.c b/lib/libefivar/efivar.c index 4e02eb80caef..a825d9e9f9bf 100644 --- a/lib/libefivar/efivar.c +++ b/lib/libefivar/efivar.c @@ -150,7 +150,7 @@ efi_append_variable(efi_guid_t guid, const char *name, { return efi_set_variable(guid, name, data, data_size, - attributes | EFI_VARIABLE_APPEND_WRITE, 0); + attributes | EFI_VARIABLE_APPEND_WRITE); } int @@ -158,7 +158,7 @@ efi_del_variable(efi_guid_t guid, const char *name) { /* data_size of 0 deletes the variable */ - return efi_set_variable(guid, name, NULL, 0, 0, 0); + return efi_set_variable(guid, name, NULL, 0, 0); } int @@ -358,7 +358,7 @@ 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 __unused) + uint8_t *data, size_t data_size, uint32_t attributes) { struct efi_var_ioc var; int rv; diff --git a/lib/libefivar/efivar.h b/lib/libefivar/efivar.h index cba8a8e61849..5725bb029d7c 100644 --- a/lib/libefivar/efivar.h +++ b/lib/libefivar/efivar.h @@ -83,7 +83,7 @@ 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); + uint8_t *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); @@ -99,37 +99,4 @@ int efi_known_guid(struct uuid_table **); extern const efi_guid_t efi_guid_empty; -/* Stubs that are expected, but aren't really used */ -static inline int -efi_error_get(unsigned int n __unused, char ** const fn __unused, - char ** const func __unused, int *line __unused, - char ** const msg __unused, int *err __unused) -{ - return 0; -} - -static inline int -efi_error_set(const char *fn __unused, const char *func __unused, - int line __unused, int err __unused, const char *fmt __unused, ...) -{ - return 0; -} - -static inline void -efi_error_clear(void) -{ -} - -static inline int -efi_error(const char *fmt __unused, ...) -{ - return 0; -} - -static inline int -efi_error_val(int val __unused, const char *fmt __unused, ...) -{ - return 0; -} - #endif /* _EFIVAR_H_ */ diff --git a/usr.sbin/efivar/efivar.c b/usr.sbin/efivar/efivar.c index d156f78f1851..25eb8415b5a5 100644 --- a/usr.sbin/efivar/efivar.c +++ b/usr.sbin/efivar/efivar.c @@ -147,7 +147,7 @@ write_variable(char *name, char *val) breakdown_name(name, &guid, &vname); data = get_value(val, &datalen); - if (efi_set_variable(guid, vname, data, datalen, attrib, 0) < 0) + if (efi_set_variable(guid, vname, data, datalen, attrib) < 0) err(1, "efi_set_variable"); } |