\r
#include "Mtftp4Impl.h"\r
\r
-CHAR8 *mMtftp4SupportedOptions[MTFTP4_SUPPORTED_OPTIONS] = {\r
+CHAR8 *mMtftp4SupportedOptions[MTFTP4_SUPPORTED_OPTIONS] = {\r
"blksize",\r
"windowsize",\r
"timeout",\r
"multicast"\r
};\r
\r
-\r
/**\r
Check whether two ascii strings are equal, ignore the case.\r
\r
**/\r
BOOLEAN\r
NetStringEqualNoCase (\r
- IN UINT8 *Str1,\r
- IN UINT8 *Str2\r
+ IN UINT8 *Str1,\r
+ IN UINT8 *Str2\r
)\r
{\r
- UINT8 Ch1;\r
- UINT8 Ch2;\r
+ UINT8 Ch1;\r
+ UINT8 Ch2;\r
\r
ASSERT ((Str1 != NULL) && (Str2 != NULL));\r
\r
- for (; (*Str1 != '\0') && (*Str2 != '\0'); Str1++, Str2++) {\r
+ for ( ; (*Str1 != '\0') && (*Str2 != '\0'); Str1++, Str2++) {\r
Ch1 = *Str1;\r
Ch2 = *Str2;\r
\r
}\r
}\r
\r
- return (BOOLEAN) (*Str1 == *Str2);\r
+ return (BOOLEAN)(*Str1 == *Str2);\r
}\r
\r
-\r
/**\r
Convert a string to a UINT32 number.\r
\r
**/\r
UINT32\r
NetStringToU32 (\r
- IN UINT8 *Str\r
+ IN UINT8 *Str\r
)\r
{\r
- UINT32 Num;\r
+ UINT32 Num;\r
\r
ASSERT (Str != NULL);\r
\r
Num = 0;\r
\r
- for (; NET_IS_DIGIT (*Str); Str++) {\r
+ for ( ; NET_IS_DIGIT (*Str); Str++) {\r
Num = Num * 10 + (*Str - '0');\r
}\r
\r
return Num;\r
}\r
\r
-\r
/**\r
Convert a string of the format "192.168.0.1" to an IP address.\r
\r
**/\r
EFI_STATUS\r
NetStringToIp (\r
- IN UINT8 *Str,\r
- OUT IP4_ADDR *Ip\r
+ IN UINT8 *Str,\r
+ OUT IP4_ADDR *Ip\r
)\r
{\r
- UINT32 Byte;\r
- UINT32 Addr;\r
- UINTN Index;\r
+ UINT32 Byte;\r
+ UINT32 Addr;\r
+ UINTN Index;\r
\r
*Ip = 0;\r
Addr = 0;\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Go through the packet to fill the Options array with the start\r
addresses of each MTFTP option name/value pair.\r
**/\r
EFI_STATUS\r
Mtftp4FillOptions (\r
- IN EFI_MTFTP4_PACKET *Packet,\r
- IN UINT32 PacketLen,\r
- IN OUT UINT32 *Count,\r
- OUT EFI_MTFTP4_OPTION *Options OPTIONAL\r
+ IN EFI_MTFTP4_PACKET *Packet,\r
+ IN UINT32 PacketLen,\r
+ IN OUT UINT32 *Count,\r
+ OUT EFI_MTFTP4_OPTION *Options OPTIONAL\r
)\r
{\r
- UINT8 *Cur;\r
- UINT8 *Last;\r
- UINT8 Num;\r
- UINT8 *Name;\r
- UINT8 *Value;\r
+ UINT8 *Cur;\r
+ UINT8 *Last;\r
+ UINT8 Num;\r
+ UINT8 *Name;\r
+ UINT8 *Value;\r
\r
- Num = 0;\r
- Cur = (UINT8 *) Packet + MTFTP4_OPCODE_LEN;\r
- Last = (UINT8 *) Packet + PacketLen - 1;\r
+ Num = 0;\r
+ Cur = (UINT8 *)Packet + MTFTP4_OPCODE_LEN;\r
+ Last = (UINT8 *)Packet + PacketLen - 1;\r
\r
//\r
// process option name and value pairs. The last byte is always zero\r
Num++;\r
\r
if ((Options != NULL) && (Num <= *Count)) {\r
- Options[Num - 1].OptionStr = Name;\r
- Options[Num - 1].ValueStr = Value;\r
+ Options[Num - 1].OptionStr = Name;\r
+ Options[Num - 1].ValueStr = Value;\r
}\r
\r
Cur++;\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Allocate and fill in a array of Mtftp options from the Packet.\r
\r
**/\r
EFI_STATUS\r
Mtftp4ExtractOptions (\r
- IN EFI_MTFTP4_PACKET *Packet,\r
- IN UINT32 PacketLen,\r
- OUT UINT32 *OptionCount,\r
- OUT EFI_MTFTP4_OPTION **OptionList OPTIONAL\r
+ IN EFI_MTFTP4_PACKET *Packet,\r
+ IN UINT32 PacketLen,\r
+ OUT UINT32 *OptionCount,\r
+ OUT EFI_MTFTP4_OPTION **OptionList OPTIONAL\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
*OptionCount = 0;\r
\r
//\r
// The last byte must be zero to terminate the options\r
//\r
- if (*((UINT8 *) Packet + PacketLen - 1) != 0) {\r
+ if (*((UINT8 *)Packet + PacketLen - 1) != 0) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Parse the MTFTP multicast option.\r
\r
**/\r
EFI_STATUS\r
Mtftp4ExtractMcast (\r
- IN UINT8 *Value,\r
- IN OUT MTFTP4_OPTION *Option\r
+ IN UINT8 *Value,\r
+ IN OUT MTFTP4_OPTION *Option\r
)\r
{\r
- EFI_STATUS Status;\r
- UINT32 Num;\r
+ EFI_STATUS Status;\r
+ UINT32 Num;\r
\r
//\r
// The multicast option is formatted like "204.0.0.1,1857,1"\r
// The server can also omit the ip and port, use ",,1"\r
//\r
if (*Value == ',') {\r
- Option->McastIp = 0;\r
+ Option->McastIp = 0;\r
} else {\r
Status = NetStringToIp (Value, &Option->McastIp);\r
\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- Option->McastPort = (UINT16) Num;\r
+ Option->McastPort = (UINT16)Num;\r
\r
while (NET_IS_DIGIT (*Value)) {\r
Value++;\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- Option->Master = (BOOLEAN) (Num == 1);\r
+ Option->Master = (BOOLEAN)(Num == 1);\r
\r
while (NET_IS_DIGIT (*Value)) {\r
Value++;\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Parse the option in Options array to MTFTP4_OPTION which program\r
can access directly.\r
**/\r
EFI_STATUS\r
Mtftp4ParseOption (\r
- IN EFI_MTFTP4_OPTION *Options,\r
- IN UINT32 Count,\r
- IN BOOLEAN Request,\r
- IN UINT16 Operation,\r
- OUT MTFTP4_OPTION *MtftpOption\r
+ IN EFI_MTFTP4_OPTION *Options,\r
+ IN UINT32 Count,\r
+ IN BOOLEAN Request,\r
+ IN UINT16 Operation,\r
+ OUT MTFTP4_OPTION *MtftpOption\r
)\r
{\r
- EFI_STATUS Status;\r
- UINT32 Index;\r
- UINT32 Value;\r
- EFI_MTFTP4_OPTION *This;\r
+ EFI_STATUS Status;\r
+ UINT32 Index;\r
+ UINT32 Value;\r
+ EFI_MTFTP4_OPTION *This;\r
\r
MtftpOption->Exist = 0;\r
\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- if (NetStringEqualNoCase (This->OptionStr, (UINT8 *) "blksize")) {\r
+ if (NetStringEqualNoCase (This->OptionStr, (UINT8 *)"blksize")) {\r
//\r
// block size option, valid value is between [8, 65464]\r
//\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- MtftpOption->BlkSize = (UINT16) Value;\r
- MtftpOption->Exist |= MTFTP4_BLKSIZE_EXIST;\r
-\r
- } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *) "timeout")) {\r
+ MtftpOption->BlkSize = (UINT16)Value;\r
+ MtftpOption->Exist |= MTFTP4_BLKSIZE_EXIST;\r
+ } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *)"timeout")) {\r
//\r
// timeout option, valid value is between [1, 255]\r
//\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- MtftpOption->Timeout = (UINT8) Value;\r
-\r
- } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *) "tsize")) {\r
+ MtftpOption->Timeout = (UINT8)Value;\r
+ } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *)"tsize")) {\r
//\r
// tsize option, the biggest transfer supported is 4GB with block size option\r
//\r
- MtftpOption->Tsize = NetStringToU32 (This->ValueStr);\r
+ MtftpOption->Tsize = NetStringToU32 (This->ValueStr);\r
MtftpOption->Exist |= MTFTP4_TSIZE_EXIST;\r
-\r
- } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *) "multicast")) {\r
+ } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *)"multicast")) {\r
//\r
// Multicast option, if it is a request, the value must be a zero\r
// length string, otherwise, it is formatted like "204.0.0.1,1857,1\0"\r
if (*(This->ValueStr) != '\0') {\r
return EFI_INVALID_PARAMETER;\r
}\r
-\r
} else {\r
Status = Mtftp4ExtractMcast (This->ValueStr, MtftpOption);\r
\r
}\r
\r
MtftpOption->Exist |= MTFTP4_MCAST_EXIST;\r
-\r
- } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *) "windowsize")) {\r
+ } else if (NetStringEqualNoCase (This->OptionStr, (UINT8 *)"windowsize")) {\r
if (Operation == EFI_MTFTP4_OPCODE_WRQ) {\r
//\r
// Currently, windowsize is not supported in the write operation.\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- MtftpOption->WindowSize = (UINT16) Value;\r
- MtftpOption->Exist |= MTFTP4_WINDOWSIZE_EXIST;\r
+ MtftpOption->WindowSize = (UINT16)Value;\r
+ MtftpOption->Exist |= MTFTP4_WINDOWSIZE_EXIST;\r
} else if (Request) {\r
//\r
// Ignore the unsupported option if it is a reply, and return\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Parse the options in the OACK packet to MTFTP4_OPTION which program\r
can access directly.\r
**/\r
EFI_STATUS\r
Mtftp4ParseOptionOack (\r
- IN EFI_MTFTP4_PACKET *Packet,\r
- IN UINT32 PacketLen,\r
- IN UINT16 Operation,\r
- OUT MTFTP4_OPTION *MtftpOption\r
+ IN EFI_MTFTP4_PACKET *Packet,\r
+ IN UINT32 PacketLen,\r
+ IN UINT16 Operation,\r
+ OUT MTFTP4_OPTION *MtftpOption\r
)\r
{\r
- EFI_MTFTP4_OPTION *OptionList;\r
- EFI_STATUS Status;\r
- UINT32 Count;\r
+ EFI_MTFTP4_OPTION *OptionList;\r
+ EFI_STATUS Status;\r
+ UINT32 Count;\r
\r
MtftpOption->Exist = 0;\r
\r
if (EFI_ERROR (Status) || (Count == 0)) {\r
return Status;\r
}\r
+\r
ASSERT (OptionList != NULL);\r
\r
Status = Mtftp4ParseOption (OptionList, Count, FALSE, Operation, MtftpOption);\r