\r
typedef enum{\r
///\r
- /// A DHCPDISCOVER packet is about to be sent.\r
+ /// The packet to start the configuration sequence is about to be sent.\r
///\r
Dhcp4SendDiscover = 0x01,\r
///\r
- /// A DHCPOFFER packet was just received.\r
+ /// A reply packet was just received.\r
///\r
Dhcp4RcvdOffer = 0x02,\r
///\r
@param NewPacket The packet that is used to replace the above Packet.\r
\r
@retval EFI_SUCCESS Tells the EFI DHCPv4 Protocol driver to continue the DHCP process.\r
+ When it is in the Dhcp4Selecting state, it tells the EFI DHCPv4 Protocol\r
+ driver to stop collecting additional packets. The driver will exit\r
+ the Dhcp4Selecting state and enter the Dhcp4Requesting state.\r
@retval EFI_NOT_READY Only used in the Dhcp4Selecting state. The EFI DHCPv4 Protocol\r
- driver will continue to wait for more DHCPOFFER packets until the retry\r
+ driver will continue to wait for more packets until the retry\r
timeout expires.\r
@retval EFI_ABORTED Tells the EFI DHCPv4 Protocol driver to abort the current process and\r
return to the Dhcp4Init or Dhcp4InitReboot state.\r
\r
typedef struct {\r
///\r
- /// Number of times to try sending DHCPDISCOVER packets and \r
- /// waiting for DHCPOFFER packets before accepting failure.\r
+ /// Number of times to try sending a packet during the Dhcp4SendDiscover\r
+ /// event and waiting for a response during the Dhcp4RcvdOffer event.\r
/// Set to zero to use the default try counts and timeout values.\r
///\r
UINT32 DiscoverTryCount;\r
///\r
- /// Maximum amount of time (in seconds) to wait for DHCPOFFER packets in each \r
+ /// Maximum amount of time (in seconds) to wait for returned packets in each \r
/// of the retries. Timeout values of zero will default to a timeout value \r
/// of one second. Set to NULL to use default timeout values.\r
///\r
UINT32 *DiscoverTimeout;\r
///\r
- /// Number of times to try sending DHCPREQUEST packets and waiting for DHCPACK \r
- /// packets before accepting failure. Set to zero to use the default try counts and timeout values.\r
+ /// Number of times to try sending a packet during the Dhcp4SendRequest event\r
+ /// and waiting for a response during the Dhcp4RcvdAck event before accepting\r
+ /// failure. Set to zero to use the default try counts and timeout values.\r
///\r
UINT32 RequestTryCount;\r
///\r
- /// Maximum amount of time (in seconds) to wait for DHCPACK packets in each of the retries. \r
+ /// Maximum amount of time (in seconds) to wait for return packets in each of the retries. \r
/// Timeout values of zero will default to a timeout value of one second. \r
/// Set to NULL to use default timeout values.\r
///\r
UINT32 *RequestTimeout;\r
///\r
- /// Setting this parameter to the previously allocated IP address will cause \r
- /// the EFI DHCPv4 Protocol driver to enter the Dhcp4InitReboot state. \r
- /// Set this field to 0.0.0.0 to enter the Dhcp4Init state.\r
+ /// For a DHCPDISCOVER, setting this parameter to the previously allocated IP\r
+ /// address will cause the EFI DHCPv4 Protocol driver to enter the Dhcp4InitReboot state. \r
+ /// And set this field to 0.0.0.0 to enter the Dhcp4Init state.\r
+ /// For a DHCPINFORM this parameter should be set to the client network address\r
+ /// which was assigned to the client during a DHCPDISCOVER.\r
///\r
EFI_IPv4_ADDRESS ClientAddress;\r
///\r
///\r
UINT32 OptionCount;\r
///\r
- /// List of DHCP options to be included in every DHCPDISCOVER packet and \r
- /// subsequent DHCPREQUEST packet that is generated from DHCPOFFER packets.\r
+ /// List of DHCP options to be included in every packet that is sent during the\r
+ /// Dhcp4SendDiscover event. Pad options are appended automatically by DHCP driver\r
+ /// in outgoing DHCP packets. If OptionList itself contains pad option, they are\r
+ /// ignored by the driver. OptionList can be freed after EFI_DHCP4_PROTOCOL.Configure()\r
+ /// returns. Ignored if OptionCount is zero.\r
///\r
EFI_DHCP4_PACKET_OPTION **OptionList;\r
} EFI_DHCP4_CONFIG_DATA;\r
\r
@retval EFI_SUCCESS The EFI DHCPv4 Protocol driver is now in the Dhcp4Init or\r
Dhcp4InitReboot state, if the original state of this driver\r
- was Dhcp4Stopped and the value of Dhcp4CfgData was\r
- not NULL. Otherwise, the state was left unchanged.\r
+ was Dhcp4Stopped, Dhcp4Init,Dhcp4InitReboot, or Dhcp4Bound\r
+ and the value of Dhcp4CfgData was not NULL.\r
+ Otherwise, the state was left unchanged.\r
@retval EFI_ACCESS_DENIED This instance of the EFI DHCPv4 Protocol driver was not in the\r
Dhcp4Stopped, Dhcp4Init, Dhcp4InitReboot, or Dhcp4Bound state;\r
Or onother instance of this EFI DHCPv4 Protocol driver is already\r
this function after collection process completes.\r
@retval EFI_NO_MAPPING The default station address is not available yet.\r
@retval EFI_OUT_OF_RESOURCES Required system resources could not be allocated.\r
- @retval EFI_UNSUPPORTED The implementation doesn’t support this function\r
+ @retval EFI_UNSUPPORTED The implementation doesn't support this function\r
@retval Others Some other unexpected error occurred.\r
\r
**/\r
Parses the packed DHCP option data.\r
\r
The Parse() function is used to retrieve the option list from a DHCP packet.\r
- If *OptionCount isn’t zero, and there is enough space for all the DHCP options\r
+ If *OptionCount isn't zero, and there is enough space for all the DHCP options\r
in the Packet, each element of PacketOptionList is set to point to somewhere in\r
the Packet->Dhcp4.Option where a new DHCP option begins. If RFC3396 is supported,\r
- the caller should reassemble the parsed DHCP options to get the finial result.\r
- If *OptionCount is zero or there isn’t enough space for all of them, the number\r
+ the caller should reassemble the parsed DHCP options to get the final result.\r
+ If *OptionCount is zero or there isn't enough space for all of them, the number\r
of DHCP options in the Packet is returned in OptionCount.\r
\r
@param This Pointer to the EFI_DHCP4_PROTOCOL instance.\r