freebsd-src/lib/libefivar
Jose Luis Duran b782b7884c libefivar: Fix FromText bug for multi-instance devicepath
UefiDevicePathLibConvertTextToDevicePath correctly detects when it
has hit a ',' splicing together multiple paths. However, the code
that tries to cope with it:
{code}
if (IsInstanceEnd) {
  DeviceNode = (EFI_DEVICE_PATH_PROTOCOL *) AllocatePool (
                                   END_DEVICE_PATH_LENGTH);
  ASSERT (DeviceNode != NULL);
  SetDevicePathEndNode (DeviceNode);

  NewDevicePath = AppendDevicePathNode (DevicePath, DeviceNode);
  FreePool (DevicePath);
  FreePool (DeviceNode);
  DevicePath = NewDevicePath;
}
{code}
causes a problem. The END node that's appended it the node for the
entire list. So when the node is appended in AppendDevicePathNode,
it winds up disappearing. This leads to the path
'PciRoot(0x0),PciRoot(0x0)' parsing as if 'PciRoot(0x0)/PciRoot(0x0)'
were specified. These are two very different things.

NOTE:
This fix was already committed.  It has been included with the sole
intention of reducing diffs with upstream.

Upstream Bug:	https://bugzilla.tianocore.org/show_bug.cgi?id=419
Obtained from:	647636e175
Pull Request:	https://github.com/freebsd/freebsd-src/pull/581
2022-02-27 09:11:59 -07:00
..
efi-osdep.h libefivar: define MDE_CPU_RISCV64 2020-07-06 17:47:29 +00:00
efivar-dp-format.c libefivar: Correct the string expression of UTF8 vendor device path 2022-02-23 09:20:26 -07:00
efivar-dp-parse.c libefivar: Fix FromText bug for multi-instance devicepath 2022-02-27 09:11:59 -07:00
efivar-dp-xlate.c Add additional sanity checks. 2019-12-09 01:32:18 +00:00
efivar-dp.h Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
efivar.3 Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
efivar.c Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
efivar.h Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
FreeBSD-update
Makefile libefivar(3): efi_set_variables_supported.3 should be efi_variables_supported.3 2021-12-21 20:42:39 +08:00
Makefile.depend Update Makefile.depend files 2019-12-11 17:37:53 +00:00
ProcessorBind.h
uefi-dplib.h Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
uefi-dputil.c Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
uefi-guid.c
uefi-guid.dat