diff options
author | Ilias Apalodimas <ilias.apalodimas@linaro.org> | 2020-11-22 15:10:26 +0200 |
---|---|---|
committer | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2020-11-29 05:18:37 +0100 |
commit | 6974a4a37348ba272e53dd33effcc0db9e144c59 (patch) | |
tree | a92bfd16dfad8a9a35e08e79747128be3c9af148 /lib/charset.c | |
parent | 03699bc75621934f7fb5d5a023007b39fb21ad6b (diff) | |
download | u-boot-6974a4a37348ba272e53dd33effcc0db9e144c59.tar.gz u-boot-6974a4a37348ba272e53dd33effcc0db9e144c59.tar.bz2 u-boot-6974a4a37348ba272e53dd33effcc0db9e144c59.zip |
charset: make u16_strnlen accessible at runtime
commit 1fabfeef506c ("efi_loader: parameter check in GetNextVariableName()")
introduces a check using u16_strnlen(). This code is used on EFI
runtime variables as well, so unless we mark it as runtime, the kernel
will crash trying to access it.
Fixes: 1fabfeef506c ("efi_loader: parameter check in GetNextVariableName()")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Diffstat (limited to 'lib/charset.c')
-rw-r--r-- | lib/charset.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/charset.c b/lib/charset.c index 5686d6fb59..2177014ee1 100644 --- a/lib/charset.c +++ b/lib/charset.c @@ -8,6 +8,7 @@ #include <common.h> #include <charset.h> #include <capitalization.h> +#include <efi_loader.h> #include <malloc.h> static struct capitalization_table capitalization_table[] = @@ -372,7 +373,7 @@ size_t u16_strlen(const void *in) return ret; } -size_t u16_strnlen(const u16 *in, size_t count) +size_t __efi_runtime u16_strnlen(const u16 *in, size_t count) { size_t i; for (i = 0; count-- && in[i]; i++); |