PXE Base Code Protocol
Version 1.02 12/12/00 251
14.1.3 EFI_PXE_BASE_CODE.Dhcp()
Summary
Attempts to complete a DHCPv4 D.O.R.A. (discover / offer / request / acknowledge) or DHCPv6
S.A.R.R (solicit / advertise / request / reply) sequence.
Prototype
EFI_STATUS
(EFIAPI *EFI_PXE_BASE_CODE_DHCP) (
IN EFI_PXE_BASE_CODE *This,
IN BOOLEAN SortOffers
);
Parameters
This Pointer to the EFI_PXE_BASE_CODE instance.
SortOffers TRUE if the offers received should be sorted. Set to FALSE to try the
offers in the order that they are received.
Description
This function attempts to complete the DHCP sequence. If this sequence is completed, then
EFI_SUCCESS is returned, and the DhcpCompleted, ProxyOfferReceived, StationIp,
SubnetMask, DhcpDiscover, DhcpAck, and ProxyOffer fields of the
EFI_PXE_BASE_CODE_MODE structure are filled in.
If SortOffers is TRUE, then the cached DHCP offer packets will be sorted before they are tried.
If SortOffers is FALSE, then the cached DHCP offer packets will be tried in the order in which
they are received. Please see the Preboot Execution Environment (PXE) Specification for
additional details on the implementation of DHCP.
This function can take at least 31 seconds to timeout and return control to the caller. If the DHCP
sequence does not complete, then EFI_TIMEOUT will be returned.
If the Callback Protocol does not return
EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE, then the DHCP sequence will be
stopped and EFI_ABORTED will be returned.