[U-Boot] Pull request: efi_loader: check CreateEvent() parameters

Heinrich Schuchardt xypron.glpk at gmx.de
Sat Jul 1 07:49:02 UTC 2017


Dear Tom,

could you, please, consider pulling

[U-Boot,1/2] efi_loader: run CreateEvent() notify function based on flags
https://patchwork.ozlabs.org/patch/737793/

[U-Boot,2/2] efi_loader: check CreateEvent() parameters
https://patchwork.ozlabs.org/patch/737794/

I have reviewed the patches and tested loading grub via EFI on an Odroid
C2 based on git HEAD (8d6040c725bfa40fba1bd6b5f356ee713c1ac7d1).

Best regards

Heinrich Schuchardt


On 07/01/2017 08:44 AM, Heinrich Schuchardt wrote:
> On 03/12/2017 09:26 AM, Jonathan Gray wrote:
>> Add some of the invalid parameter checks described in the UEFI
>> specification for CreateEvent().  This does not include checking
>> the validity of the type and tpl parameters.
>>
>> Signed-off-by: Jonathan Gray <jsg at jsg.id.au>
>> ---
>>  lib/efi_loader/efi_boottime.c | 10 ++++++++++
>>  1 file changed, 10 insertions(+)
>>
>> diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
>> index eb5946a959..7172b690a5 100644
>> --- a/lib/efi_loader/efi_boottime.c
>> +++ b/lib/efi_loader/efi_boottime.c
>> @@ -189,6 +189,16 @@ static efi_status_t EFIAPI efi_create_event(
>>  		return EFI_EXIT(EFI_OUT_OF_RESOURCES);
>>  	}
>>  
>> +	if (event == NULL)
>> +		return EFI_EXIT(EFI_INVALID_PARAMETER);
>> +
>> +	if ((type & EVT_NOTIFY_SIGNAL) && (type & EVT_NOTIFY_WAIT))
>> +		return EFI_EXIT(EFI_INVALID_PARAMETER);
>> +
>> +	if ((type & (EVT_NOTIFY_SIGNAL|EVT_NOTIFY_WAIT)) &&
>> +	     notify_function == NULL)
>> +		return EFI_EXIT(EFI_INVALID_PARAMETER);
>> +
>>  	efi_event.type = type;
>>  	efi_event.notify_tpl = notify_tpl;
>>  	efi_event.notify_function = notify_function;
>>
> 
> In case of EVT_NOTIFY_WAIT we should also check if the event is already
> in the signaled state. But this flag is not implemented yet.
> 
> Acked-By: Heinrich Schuchardt <xypron.glpk at gmx.de>
> 



More information about the U-Boot mailing list