summaryrefslogtreecommitdiffstats
path: root/src/arch/i386/prefix/kkpxeprefix.S
diff options
context:
space:
mode:
authorJoshua Oreman2009-12-08 09:48:15 +0100
committerMarty Connor2010-01-20 23:16:37 +0100
commit9e9cc8c60ff573e02615889a4b7fa469c42fe425 (patch)
tree13a23d6b289f4d299d508aef1931c28c6b07acaf /src/arch/i386/prefix/kkpxeprefix.S
parent[dhcp] Add generic facility for using cached network settings (diff)
downloadipxe-9e9cc8c60ff573e02615889a4b7fa469c42fe425.tar.gz
ipxe-9e9cc8c60ff573e02615889a4b7fa469c42fe425.tar.xz
ipxe-9e9cc8c60ff573e02615889a4b7fa469c42fe425.zip
[pxe] Support cached DHCP packets in .kkpxe images
If we don't unload the PXE stack before executing gPXE, automatically take advantage of the cached DHCPACK that the underlying/parent PXE stack can provide. If that cached DHCPACK contains option 175.178, or the user sets the use-cached setting before invoking DHCP, the real DHCP request will be skipped and the cached DHCPACK will be used for network configuration. Otherwise, the cached settings block is thrown away as soon as a fresh one is acquired. Signed-off-by: Marty Connor <mdc@etherboot.org>
Diffstat (limited to 'src/arch/i386/prefix/kkpxeprefix.S')
-rw-r--r--src/arch/i386/prefix/kkpxeprefix.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/arch/i386/prefix/kkpxeprefix.S b/src/arch/i386/prefix/kkpxeprefix.S
index 4d13f404..02cc6fee 100644
--- a/src/arch/i386/prefix/kkpxeprefix.S
+++ b/src/arch/i386/prefix/kkpxeprefix.S
@@ -5,6 +5,9 @@
FILE_LICENCE ( GPL2_OR_LATER )
+/* Since we have the whole stack, we can use cached DHCP information */
+REQUEST_OBJECT ( pxeparent_dhcp )
+
#define PXELOADER_KEEP_UNDI
#define PXELOADER_KEEP_PXE
#include "pxeprefix.S"