efi_loader: correct reported length in GetNextVariable()
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Fri, 20 Mar 2020 18:04:34 +0000 (19:04 +0100)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Sun, 22 Mar 2020 10:06:23 +0000 (11:06 +0100)
commit4d7f5af841c4622fb6c5d155e31c1072f3b052df
tree8345a954aad2103a7e1af9bd75110212e4964ec7
parent47a9596354e074146596559ee7330e1941db43be
efi_loader: correct reported length in GetNextVariable()

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().

Fixes: d99a87f84b75 ("efi_loader: implement GetNextVariableName()")
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
lib/efi_loader/efi_variable.c