diff options
author | Michael Brown | 2023-01-15 22:36:08 +0100 |
---|---|---|
committer | Michael Brown | 2023-01-15 22:36:08 +0100 |
commit | 5a2fa6040e17562ce742df09aa20b8774b3879c5 (patch) | |
tree | 608b47590365c52ca7e6c767d32d6487689e7312 /src/interface/efi/efiprefix.c | |
parent | [netdevice] Allow duplicate MAC addresses (diff) | |
download | ipxe-5a2fa6040e17562ce742df09aa20b8774b3879c5.tar.gz ipxe-5a2fa6040e17562ce742df09aa20b8774b3879c5.tar.xz ipxe-5a2fa6040e17562ce742df09aa20b8774b3879c5.zip |
[autoboot] Include VLAN tag in filter for identifying autoboot device
When chainloading iPXE from a VLAN device, the MAC address of the
loaded image's device handle will match the MAC address of the trunk
device created by iPXE, and the autoboot process will then erroneously
consider the trunk device to be an autoboot device.
Fix by recording the VLAN tag along with the MAC address, and treating
the VLAN tag as part of the filter used to match the MAC address
against candidate network devices.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/interface/efi/efiprefix.c')
-rw-r--r-- | src/interface/efi/efiprefix.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/interface/efi/efiprefix.c b/src/interface/efi/efiprefix.c index 7286b3e0..bdc36d9b 100644 --- a/src/interface/efi/efiprefix.c +++ b/src/interface/efi/efiprefix.c @@ -81,7 +81,7 @@ static void efi_init_application ( void ) { EFI_DEVICE_PATH_PROTOCOL *path = efi_loaded_image_path; /* Identify autoboot device, if any */ - efi_set_autoboot_ll_addr ( device ); + efi_set_autoboot_ll_addr ( device, path ); /* Store cached DHCP packet, if any */ efi_cachedhcp_record ( device, path ); |