From 8e1d329ff5eebb7bcc9bf8eb931b8c6517598a10 Mon Sep 17 00:00:00 2001 From: "xypron.glpk@gmx.de" Date: Thu, 29 Jun 2017 21:16:19 +0200 Subject: [PATCH] efi_loader: efi_handle_protocol set attributes UEFI spec 2.7 indicates that HandleProtocol can be implemented by calling OpenProtocol with attributes = EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL. Currently we pass attributes = 0 to efi_open_protocol. 0 is not a valid value when calling OpenProtocol. This does not cause any errors yet because our implementation of OpenProtocol is incomplete. We should pass the correct value to enable a fully compliant implementation of OpenProtocol in the future. Signed-off-by: Heinrich Schuchardt Signed-off-by: Alexander Graf --- lib/efi_loader/efi_boottime.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index 556d806805..27e51a253f 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -752,8 +752,8 @@ static efi_status_t EFIAPI efi_handle_protocol(void *handle, efi_guid_t *protocol, void **protocol_interface) { - return efi_open_protocol(handle, protocol, protocol_interface, - NULL, NULL, 0); + return efi_open_protocol(handle, protocol, protocol_interface, NULL, + NULL, EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL); } static const struct efi_boot_services efi_boot_services = { -- 2.39.5