Efi_pxe_base_code.dhcp(), Dhcp(), Func – Intel Extensible Firmware Interface User Manual
Page 651
Protocols
— Network Support
Version 1.10
12/01/02
15-45
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
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
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.