Browse Source

efi_loader: check interface when uninstalling protocol

The interface has to be checked in UninstallProtocolInterface.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Heinrich Schuchardt 7 years ago
parent
commit
1f470e1790
1 changed files with 2 additions and 0 deletions
  1. 2 0
      lib/efi_loader/efi_boottime.c

+ 2 - 0
lib/efi_loader/efi_boottime.c

@@ -493,6 +493,8 @@ efi_status_t efi_remove_protocol(const efi_handle_t handle,
 		return ret;
 	if (guidcmp(handler->guid, protocol))
 		return EFI_INVALID_PARAMETER;
+	if (handler->protocol_interface != protocol_interface)
+		return EFI_INVALID_PARAMETER;
 	list_del(&handler->link);
 	free(handler);
 	return EFI_SUCCESS;