
On Fri, 6 Jan 2023 at 17:27, Heinrich Schuchardt xypron.glpk@gmx.de wrote:
On 1/6/23 10:46, Vincent Stehlé wrote:
As per the EFI specification, the HII database protocol function set_keyboard_layout() must return EFI_INVALID_PARAMETER when it is called with a NULL key_guid argument. Modify the function accordingly to improve conformance.
Signed-off-by: Vincent Stehlé vincent.stehle@arm.com Cc: Heinrich Schuchardt xypron.glpk@gmx.de Cc: Ilias Apalodimas ilias.apalodimas@linaro.org
lib/efi_loader/efi_hii.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/lib/efi_loader/efi_hii.c b/lib/efi_loader/efi_hii.c index 27db3be6a17..3b54ecb11ac 100644 --- a/lib/efi_loader/efi_hii.c +++ b/lib/efi_loader/efi_hii.c @@ -758,6 +758,9 @@ set_keyboard_layout(const struct efi_hii_database_protocol *this, { EFI_ENTRY("%p, %pUs", this, key_guid);
if (!key_guid)
return EFI_EXIT(EFI_INVALID_PARAMETER);
This is just suppressing an SCT warning for an unimplemented function. I think we should complete the implementation of the HII protocols instead of trying to hide the deficiency.
I don't think we are hiding the fact that the function isn't implemented here. 34.8.11 EFI_HII_DATABASE_PROTOCOL.SetKeyboardLayout() says that we must return if the KeyGuid is NULL
Reviewed-by: Ilias Apalodimas ilias.apalodimas@linaro.org
Best regards
Heinrich
}return EFI_EXIT(EFI_NOT_FOUND);