diff options
author | Jonathan Gray <jsg@jsg.id.au> | 2017-11-22 14:18:59 +1100 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2017-12-01 13:23:02 +0100 |
commit | b6e9e09770035b4606c408e800f28231dcca9e98 (patch) | |
tree | 0bb366fbb44c9526e14d06d0912d8569f1ed478f /configs | |
parent | ebb4dd5bc3d39b3a2109970936c7e74556110915 (diff) |
efi_loader: initialise partition_signature memory
Zero partition_signature in the efi_device_path_hard_drive_path
structure when signature_type is 0 (no signature) as required by the
UEFI specification.
This is required so that efi_dp_match() will work as expected
when doing memcmp() comparisons. Previously uninitialised memory
would cause it not match nodes when it should have when the signature
type was not GUID.
Corrects a problem where the loaded image protocol would not return a
device path with MEDIA_DEVICE causing the OpenBSD bootloader to fail
on rpi_3 and other targets.
v2: Also handle signature_type 1 (MBR) as described in the specification
Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
Tested-by: Artturi Alm <artturi.alm@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'configs')
0 files changed, 0 insertions, 0 deletions