\r
#include "Dhcp4Impl.h"\r
\r
-//\r
-// A list of the format of DHCP Options sorted by option tag\r
-// to validate a dhcp message. Refere the comments of the\r
-// DHCP_OPTION_FORMAT structure.\r
-//\r
+///\r
+/// A list of the format of DHCP Options sorted by option tag\r
+/// to validate a dhcp message. Refere the comments of the\r
+/// DHCP_OPTION_FORMAT structure.\r
+///\r
DHCP_OPTION_FORMAT DhcpOptionFormats[] = {\r
{DHCP_TAG_NETMASK, DHCP_OPTION_IP, 1, 1 , TRUE},\r
{DHCP_TAG_TIME_OFFSET, DHCP_OPTION_INT32, 1, 1 , FALSE},\r
if (Tag < DhcpOptionFormats[Middle].Tag) {\r
Right = Middle - 1;\r
} else {\r
- Left = Middle + 1;\r
+ Left = Middle + 1;\r
}\r
}\r
\r
@param OptValue The value of the option\r
@param Len The length of the option value\r
\r
- @return TRUE is the option is valid, otherwise FALSE.\r
+ @retval TRUE The option is valid.\r
+ @retval FALSE Otherwise.\r
\r
**/\r
BOOLEAN\r
Occur = Len / Unit;\r
\r
if (((Format->MinOccur != -1) && (Occur < Format->MinOccur)) ||\r
- ((Format->MaxOccur != -1) && (Occur > Format->MaxOccur))) {\r
+ ((Format->MaxOccur != -1) && (Occur > Format->MaxOccur))\r
+ ) {\r
return FALSE;\r
}\r
\r
**/\r
EFI_STATUS\r
DhcpGetParameter (\r
- IN UINT8 Tag,\r
- IN INTN Len,\r
- IN UINT8 *Data,\r
- IN DHCP_PARAMETER *Para\r
+ IN UINT8 Tag,\r
+ IN INTN Len,\r
+ IN UINT8 *Data,\r
+ OUT DHCP_PARAMETER *Para\r
)\r
{\r
switch (Tag) {\r
@param BufLen The length of the buffer\r
@param Check The callback function for each option found\r
@param Context The opaque parameter for the Check\r
- @param Overload variable to save the value of DHCP_TAG_OVERLOAD\r
+ @param Overload Variable to save the value of DHCP_TAG_OVERLOAD\r
option.\r
\r
@retval EFI_SUCCESS All the options are valid\r
@param Context The opaque parameter for Check\r
\r
@retval EFI_SUCCESS The DHCP packet's options are well formated\r
- @retval Others The DHCP packet's options are not well formated\r
+ @retval EFI_INVALID_PARAMETER The DHCP packet's options are not well formated\r
\r
**/\r
EFI_STATUS\r
\r
\r
/**\r
- Call back function to DhcpiterateOptions to compute each option's\r
+ Call back function to DhcpIterateOptions to compute each option's\r
length. It just adds the data length of all the occurances of this\r
Tag. Context is an array of 256 DHCP_OPTION_COUNT.\r
\r
\r
\r
/**\r
- Call back function to DhcpiterateOptions to consolidate each option's\r
- data. There are maybe several occurance of the same option.\r
+ Call back function to DhcpIterateOptions to consolidate each option's\r
+ data. There are maybe several occurrence of the same option.\r
\r
@param Tag The option to consolidate its data\r
@param Len The length of option data\r
as a UINT8. It then iterates the DHCP packet to get data length of\r
each option by calling DhcpIterOptions with DhcpGetOptionLen. Now, it\r
knows the number of present options and their length. It allocates a\r
- array of DHCP_OPTION and a continous buffer after the array to put\r
+ array of DHCP_OPTION and a continuous buffer after the array to put\r
all the options' data. Each option's data is pointed to by the Data\r
field in DHCP_OPTION structure. At last, it call DhcpIterateOptions\r
with DhcpFillOption to fill each option's data to its position in the\r
**/\r
UINT8 *\r
DhcpAppendOption (\r
- IN UINT8 *Buf,\r
- IN UINT8 Tag,\r
- IN UINT16 DataLen,\r
- IN UINT8 *Data\r
+ OUT UINT8 *Buf,\r
+ IN UINT8 Tag,\r
+ IN UINT16 DataLen,\r
+ IN UINT8 *Data\r
)\r
{\r
INTN Index;\r
function.\r
\r
@retval EFI_OUT_OF_RESOURCES Failed to allocate memory\r
+ @retval EFI_INVALID_PARAMETER The options in SeekPacket are mal-formated\r
@retval EFI_SUCCESS The packet is build.\r
\r
**/\r