Date: Thu, 18 Apr 2019 05:40:50 +0000 (UTC) From: Warner Losh <imp@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r346346 - in head/stand/efi: include libefi Message-ID: <201904180540.x3I5eo96086202@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: imp Date: Thu Apr 18 05:40:50 2019 New Revision: 346346 URL: https://svnweb.freebsd.org/changeset/base/346346 Log: Add efi_delenv Add an interface to remove / delete UEFI variables. Modified: head/stand/efi/include/efilib.h head/stand/efi/libefi/efienv.c Modified: head/stand/efi/include/efilib.h ============================================================================== --- head/stand/efi/include/efilib.h Thu Apr 18 05:37:18 2019 (r346345) +++ head/stand/efi/include/efilib.h Thu Apr 18 05:40:50 2019 (r346346) @@ -122,6 +122,7 @@ void cpy16to8(const CHAR16 *, char *, size_t); * the loader setting / getting FreeBSD specific variables. */ +EFI_STATUS efi_delenv(EFI_GUID *guid, const char *varname); EFI_STATUS efi_freebsd_getenv(const char *v, void *data, __size_t *len); EFI_STATUS efi_getenv(EFI_GUID *g, const char *v, void *data, __size_t *len); EFI_STATUS efi_global_getenv(const char *v, void *data, __size_t *len); Modified: head/stand/efi/libefi/efienv.c ============================================================================== --- head/stand/efi/libefi/efienv.c Thu Apr 18 05:37:18 2019 (r346345) +++ head/stand/efi/libefi/efienv.c Thu Apr 18 05:40:50 2019 (r346346) @@ -103,3 +103,21 @@ efi_setenv_freebsd_wcs(const char *varname, CHAR16 *va return (rv); } +/* + * efi_delenv -- deletes the specified env variable + */ +EFI_STATUS +efi_delenv(EFI_GUID *guid, const char *name) +{ + CHAR16 *var; + size_t len; + EFI_STATUS rv; + + var = NULL; + if (utf8_to_ucs2(name, &var, &len) != 0) + return (EFI_OUT_OF_RESOURCES); + + rv = RS->SetVariable(var, guid, 0, 0, NULL); + free(var); + return rv; +}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201904180540.x3I5eo96086202>