From: Heinrich Schuchardt Date: Sun, 5 May 2019 09:24:53 +0000 (+0200) Subject: efi_loader: HandleProtocol parameter checks X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=e7c3cd6b67d87383fa48b41c1b4037b75ceab597;p=u-boot.git efi_loader: HandleProtocol parameter checks HandleProtocol() and OpenProtocol() have to return EFI_UNSUPPORTED if the protocol is not installed on the handle. Signed-off-by: Heinrich Schuchardt --- diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c index ab299aa17f..6d86dafc16 100644 --- a/lib/efi_loader/efi_boottime.c +++ b/lib/efi_loader/efi_boottime.c @@ -2636,8 +2636,15 @@ static efi_status_t EFIAPI efi_open_protocol } r = efi_search_protocol(handle, protocol, &handler); - if (r != EFI_SUCCESS) + switch (r) { + case EFI_SUCCESS: + break; + case EFI_NOT_FOUND: + r = EFI_UNSUPPORTED; goto out; + default: + goto out; + } r = efi_protocol_open(handler, protocol_interface, agent_handle, controller_handle, attributes);