The runtime service GetNextVariable() returns the length of the next
variable including the closing 0x0000. This length should be in bytes.
Comparing the output of EDK2 and U-Boot shows that this is currently not
correctly implemented:
EDK2:
OsIndicationsSupported: 46
PlatformLang: 26
PlatformLangCodes: 36
U-Boot:
OsIndicationsSupported: 23
PlatformLang: 13
PlatformLangCodes: 18
Provide correct length in GetNextVariable().
v2:
correct return value of the initial call too
increase buffer size for variable names in unit test
Heinrich Schuchardt (2):
efi_loader: correct reported length in GetNextVariable()
efi_selftest: check length report by GetNextVariableName()
lib/efi_loader/efi_variable.c | 11 ++++++-----
lib/efi_selftest/efi_selftest_variables.c | 10 ++++++++--
2 files changed, 14 insertions(+), 7 deletions(-)
--
2.25.1