diff options
author | Ilias Apalodimas <ilias.apalodimas@linaro.org> | 2020-12-31 12:26:46 +0200 |
---|---|---|
committer | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2020-12-31 14:33:23 +0100 |
commit | fe179d7fb5c10d8a4e299af06c766f47f2c8d51a (patch) | |
tree | 5c762b7b7158c4692a774708b42af30726540a4d /include/efi_loader.h | |
parent | 47d2b3b9c98e1adf231f8143bc01b0046ebd5c9c (diff) |
efi_loader: Add size checks to efi_create_indexed_name()
Although the function description states the caller must provide a
sufficient buffer, it's better to have in function checks that the
destination buffer can hold the intended value.
So let's add an extra argument with the buffer size and check that
before doing any copying.
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Diffstat (limited to 'include/efi_loader.h')
-rw-r--r-- | include/efi_loader.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/efi_loader.h b/include/efi_loader.h index 62a6c3de5a..790d4bf64c 100644 --- a/include/efi_loader.h +++ b/include/efi_loader.h @@ -824,7 +824,8 @@ bool efi_image_parse(void *efi, size_t len, struct efi_image_regions **regp, void efi_memcpy_runtime(void *dest, const void *src, size_t n); /* commonly used helper function */ -u16 *efi_create_indexed_name(u16 *buffer, const char *name, unsigned int index); +u16 *efi_create_indexed_name(u16 *buffer, size_t buffer_size, const char *name, + unsigned int index); extern const struct efi_firmware_management_protocol efi_fmp_fit; extern const struct efi_firmware_management_protocol efi_fmp_raw; |