[efi] Record cached DHCPACK from loaded image's device handle, if present

Record the cached DHCPACK obtained from the EFI_PXE_BASE_CODE_PROTOCOL
instance installed on the loaded image's device handle, if present.

This allows a chainloaded UEFI iPXE to reuse the IPv4 address and DHCP
options previously obtained by the built-in PXE stack, as is already
done for a chainloaded BIOS iPXE.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown
2021-02-17 18:11:43 +00:00
parent d562339fca
commit cd3de55ea5
4 changed files with 115 additions and 0 deletions

View File

@@ -0,0 +1,16 @@
#ifndef _IPXE_EFI_CACHEDHCP_H
#define _IPXE_EFI_CACHEDHCP_H
/** @file
*
* EFI cached DHCP packet
*
*/
FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#include <ipxe/efi/efi.h>
extern int efi_cachedhcp_record ( EFI_HANDLE device );
#endif /* _IPXE_EFI_CACHEDHCP_H */

View File

@@ -386,6 +386,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#define ERRFILE_efi_veto ( ERRFILE_OTHER | 0x00520000 )
#define ERRFILE_efi_autoboot ( ERRFILE_OTHER | 0x00530000 )
#define ERRFILE_efi_autoexec ( ERRFILE_OTHER | 0x00540000 )
#define ERRFILE_efi_cachedhcp ( ERRFILE_OTHER | 0x00550000 )
/** @} */