#include <Library/PrintLib.h>\r
#include <Library/UefiLib.h>\r
\r
-#define NIC_ITEM_CONFIG_SIZE (sizeof (NIC_IP4_CONFIG_INFO) + sizeof (EFI_IP4_ROUTE_TABLE) * MAX_IP4_CONFIG_IN_VARIABLE)\r
-#define DEFAULT_ZERO_START ((UINTN) ~0)\r
+#define NIC_ITEM_CONFIG_SIZE (sizeof (NIC_IP4_CONFIG_INFO) + sizeof (EFI_IP4_ROUTE_TABLE) * MAX_IP4_CONFIG_IN_VARIABLE)\r
+#define DEFAULT_ZERO_START ((UINTN) ~0)\r
\r
//\r
// All the supported IP4 masks in host byte order.\r
0xFFFFFFFF,\r
};\r
\r
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_IPv4_ADDRESS mZeroIp4Addr = {{0, 0, 0, 0}};\r
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_IPv4_ADDRESS mZeroIp4Addr = {\r
+ { 0, 0, 0, 0 }\r
+};\r
\r
//\r
// Any error level digitally larger than mNetDebugLevelMax\r
// will be silently discarded.\r
//\r
-GLOBAL_REMOVE_IF_UNREFERENCED UINTN mNetDebugLevelMax = NETDEBUG_LEVEL_ERROR;\r
-GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mSyslogPacketSeq = 0xDEADBEEF;\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINTN mNetDebugLevelMax = NETDEBUG_LEVEL_ERROR;\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mSyslogPacketSeq = 0xDEADBEEF;\r
\r
//\r
// You can change mSyslogDstMac mSyslogDstIp and mSyslogSrcIp\r
// here to direct the syslog packets to the syslog deamon. The\r
// default is broadcast to both the ethernet and IP.\r
//\r
-GLOBAL_REMOVE_IF_UNREFERENCED UINT8 mSyslogDstMac[NET_ETHER_ADDR_LEN] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};\r
-GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mSyslogDstIp = 0xffffffff;\r
-GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mSyslogSrcIp = 0;\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINT8 mSyslogDstMac[NET_ETHER_ADDR_LEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mSyslogDstIp = 0xffffffff;\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINT32 mSyslogSrcIp = 0;\r
\r
-GLOBAL_REMOVE_IF_UNREFERENCED CHAR8 *mMonthName[] = {\r
+GLOBAL_REMOVE_IF_UNREFERENCED CHAR8 *mMonthName[] = {\r
"Jan",\r
"Feb",\r
"Mar",\r
//\r
// VLAN device path node template\r
//\r
-GLOBAL_REMOVE_IF_UNREFERENCED VLAN_DEVICE_PATH mNetVlanDevicePathTemplate = {\r
+GLOBAL_REMOVE_IF_UNREFERENCED VLAN_DEVICE_PATH mNetVlanDevicePathTemplate = {\r
{\r
MESSAGING_DEVICE_PATH,\r
MSG_VLAN_DP,\r
{\r
- (UINT8) (sizeof (VLAN_DEVICE_PATH)),\r
- (UINT8) ((sizeof (VLAN_DEVICE_PATH)) >> 8)\r
+ (UINT8)(sizeof (VLAN_DEVICE_PATH)),\r
+ (UINT8)((sizeof (VLAN_DEVICE_PATH)) >> 8)\r
}\r
},\r
0\r
VOID\r
)\r
{\r
- EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
- EFI_STATUS Status;\r
- EFI_HANDLE *Handles;\r
- UINTN HandleCount;\r
- UINTN Index;\r
+ EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
+ EFI_STATUS Status;\r
+ EFI_HANDLE *Handles;\r
+ UINTN HandleCount;\r
+ UINTN Index;\r
\r
//\r
// Locate the handles which has SNP installed.\r
Status = gBS->HandleProtocol (\r
Handles[Index],\r
&gEfiSimpleNetworkProtocolGuid,\r
- (VOID **) &Snp\r
+ (VOID **)&Snp\r
);\r
\r
if ((Status == EFI_SUCCESS) && (Snp != NULL) &&\r
(Snp->Mode->IfType == NET_IFTYPE_ETHERNET) &&\r
- (Snp->Mode->MaxPacketSize >= NET_SYSLOG_PACKET_LEN)) {\r
-\r
+ (Snp->Mode->MaxPacketSize >= NET_SYSLOG_PACKET_LEN))\r
+ {\r
break;\r
}\r
\r
**/\r
EFI_STATUS\r
SyslogSendPacket (\r
- IN CHAR8 *Packet,\r
- IN UINT32 Length\r
+ IN CHAR8 *Packet,\r
+ IN UINT32 Length\r
)\r
{\r
- EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
- ETHER_HEAD *Ether;\r
- EFI_STATUS Status;\r
- EFI_EVENT TimeoutEvent;\r
- UINT8 *TxBuf;\r
+ EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
+ ETHER_HEAD *Ether;\r
+ EFI_STATUS Status;\r
+ EFI_EVENT TimeoutEvent;\r
+ UINT8 *TxBuf;\r
\r
ASSERT (Packet != NULL);\r
\r
return EFI_DEVICE_ERROR;\r
}\r
\r
- Ether = (ETHER_HEAD *) Packet;\r
+ Ether = (ETHER_HEAD *)Packet;\r
CopyMem (Ether->SrcMac, Snp->Mode->CurrentAddress.Addr, NET_ETHER_ADDR_LEN);\r
\r
//\r
goto ON_EXIT;\r
}\r
\r
- for (;;) {\r
+ for ( ; ;) {\r
//\r
// Transmit the packet through SNP.\r
//\r
//\r
// Get the recycled transmit buffer status.\r
//\r
- Snp->GetStatus (Snp, NULL, (VOID **) &TxBuf);\r
+ Snp->GetStatus (Snp, NULL, (VOID **)&TxBuf);\r
\r
if (!EFI_ERROR (gBS->CheckEvent (TimeoutEvent))) {\r
Status = EFI_TIMEOUT;\r
break;\r
}\r
-\r
} while (TxBuf == NULL);\r
\r
if ((Status == EFI_SUCCESS) || (Status == EFI_TIMEOUT)) {\r
**/\r
UINT32\r
SyslogBuildPacket (\r
- IN UINT32 Level,\r
- IN UINT8 *Module,\r
- IN UINT8 *File,\r
- IN UINT32 Line,\r
- IN UINT8 *Message,\r
- IN UINT32 BufLen,\r
- OUT CHAR8 *Buf\r
+ IN UINT32 Level,\r
+ IN UINT8 *Module,\r
+ IN UINT8 *File,\r
+ IN UINT32 Line,\r
+ IN UINT8 *Message,\r
+ IN UINT32 BufLen,\r
+ OUT CHAR8 *Buf\r
)\r
{\r
- EFI_STATUS Status;\r
- ETHER_HEAD *Ether;\r
- IP4_HEAD *Ip4;\r
- EFI_UDP_HEADER *Udp4;\r
- EFI_TIME Time;\r
- UINT32 Pri;\r
- UINT32 Len;\r
+ EFI_STATUS Status;\r
+ ETHER_HEAD *Ether;\r
+ IP4_HEAD *Ip4;\r
+ EFI_UDP_HEADER *Udp4;\r
+ EFI_TIME Time;\r
+ UINT32 Pri;\r
+ UINT32 Len;\r
\r
//\r
// Fill in the Ethernet header. Leave alone the source MAC.\r
// SyslogSendPacket will fill in the address for us.\r
//\r
- Ether = (ETHER_HEAD *) Buf;\r
+ Ether = (ETHER_HEAD *)Buf;\r
CopyMem (Ether->DstMac, mSyslogDstMac, NET_ETHER_ADDR_LEN);\r
ZeroMem (Ether->SrcMac, NET_ETHER_ADDR_LEN);\r
\r
Ether->EtherType = HTONS (0x0800); // IPv4 protocol\r
\r
- Buf += sizeof (ETHER_HEAD);\r
- BufLen -= sizeof (ETHER_HEAD);\r
+ Buf += sizeof (ETHER_HEAD);\r
+ BufLen -= sizeof (ETHER_HEAD);\r
\r
//\r
// Fill in the IP header\r
//\r
- Ip4 = (IP4_HEAD *) Buf;\r
- Ip4->HeadLen = 5;\r
- Ip4->Ver = 4;\r
- Ip4->Tos = 0;\r
- Ip4->TotalLen = 0;\r
- Ip4->Id = (UINT16) mSyslogPacketSeq;\r
- Ip4->Fragment = 0;\r
- Ip4->Ttl = 16;\r
- Ip4->Protocol = 0x11;\r
- Ip4->Checksum = 0;\r
- Ip4->Src = mSyslogSrcIp;\r
- Ip4->Dst = mSyslogDstIp;\r
+ Ip4 = (IP4_HEAD *)Buf;\r
+ Ip4->HeadLen = 5;\r
+ Ip4->Ver = 4;\r
+ Ip4->Tos = 0;\r
+ Ip4->TotalLen = 0;\r
+ Ip4->Id = (UINT16)mSyslogPacketSeq;\r
+ Ip4->Fragment = 0;\r
+ Ip4->Ttl = 16;\r
+ Ip4->Protocol = 0x11;\r
+ Ip4->Checksum = 0;\r
+ Ip4->Src = mSyslogSrcIp;\r
+ Ip4->Dst = mSyslogDstIp;\r
\r
- Buf += sizeof (IP4_HEAD);\r
- BufLen -= sizeof (IP4_HEAD);\r
+ Buf += sizeof (IP4_HEAD);\r
+ BufLen -= sizeof (IP4_HEAD);\r
\r
//\r
// Fill in the UDP header, Udp checksum is optional. Leave it zero.\r
//\r
- Udp4 = (EFI_UDP_HEADER *) Buf;\r
- Udp4->SrcPort = HTONS (514);\r
- Udp4->DstPort = HTONS (514);\r
- Udp4->Length = 0;\r
- Udp4->Checksum = 0;\r
+ Udp4 = (EFI_UDP_HEADER *)Buf;\r
+ Udp4->SrcPort = HTONS (514);\r
+ Udp4->DstPort = HTONS (514);\r
+ Udp4->Length = 0;\r
+ Udp4->Checksum = 0;\r
\r
- Buf += sizeof (EFI_UDP_HEADER);\r
- BufLen -= sizeof (EFI_UDP_HEADER);\r
+ Buf += sizeof (EFI_UDP_HEADER);\r
+ BufLen -= sizeof (EFI_UDP_HEADER);\r
\r
//\r
// Build the syslog message body with <PRI> Timestamp machine module Message\r
//\r
- Pri = ((NET_SYSLOG_FACILITY & 31) << 3) | (Level & 7);\r
+ Pri = ((NET_SYSLOG_FACILITY & 31) << 3) | (Level & 7);\r
Status = gRT->GetTime (&Time, NULL);\r
if (EFI_ERROR (Status)) {\r
return 0;\r
// Use %a to format the ASCII strings, %s to format UNICODE strings\r
//\r
Len = 0;\r
- Len += (UINT32) AsciiSPrint (\r
- Buf,\r
- BufLen,\r
- "<%d> %a %d %d:%d:%d ",\r
- Pri,\r
- mMonthName [Time.Month-1],\r
- Time.Day,\r
- Time.Hour,\r
- Time.Minute,\r
- Time.Second\r
- );\r
+ Len += (UINT32)AsciiSPrint (\r
+ Buf,\r
+ BufLen,\r
+ "<%d> %a %d %d:%d:%d ",\r
+ Pri,\r
+ mMonthName[Time.Month-1],\r
+ Time.Day,\r
+ Time.Hour,\r
+ Time.Minute,\r
+ Time.Second\r
+ );\r
\r
- Len += (UINT32) AsciiSPrint (\r
- Buf + Len,\r
- BufLen - Len,\r
- "Tiano %a: %a (Line: %d File: %a)",\r
- Module,\r
- Message,\r
- Line,\r
- File\r
- );\r
- Len ++;\r
+ Len += (UINT32)AsciiSPrint (\r
+ Buf + Len,\r
+ BufLen - Len,\r
+ "Tiano %a: %a (Line: %d File: %a)",\r
+ Module,\r
+ Message,\r
+ Line,\r
+ File\r
+ );\r
+ Len++;\r
\r
//\r
// OK, patch the IP length/checksum and UDP length fields.\r
//\r
- Len += sizeof (EFI_UDP_HEADER);\r
- Udp4->Length = HTONS ((UINT16) Len);\r
+ Len += sizeof (EFI_UDP_HEADER);\r
+ Udp4->Length = HTONS ((UINT16)Len);\r
\r
- Len += sizeof (IP4_HEAD);\r
- Ip4->TotalLen = HTONS ((UINT16) Len);\r
- Ip4->Checksum = (UINT16) (~NetblockChecksum ((UINT8 *) Ip4, sizeof (IP4_HEAD)));\r
+ Len += sizeof (IP4_HEAD);\r
+ Ip4->TotalLen = HTONS ((UINT16)Len);\r
+ Ip4->Checksum = (UINT16)(~NetblockChecksum ((UINT8 *)Ip4, sizeof (IP4_HEAD)));\r
\r
return Len + sizeof (ETHER_HEAD);\r
}\r
CHAR8 *\r
EFIAPI\r
NetDebugASPrint (\r
- IN CHAR8 *Format,\r
+ IN CHAR8 *Format,\r
...\r
)\r
{\r
- VA_LIST Marker;\r
- CHAR8 *Buf;\r
+ VA_LIST Marker;\r
+ CHAR8 *Buf;\r
\r
ASSERT (Format != NULL);\r
\r
- Buf = (CHAR8 *) AllocatePool (NET_DEBUG_MSG_LEN);\r
+ Buf = (CHAR8 *)AllocatePool (NET_DEBUG_MSG_LEN);\r
\r
if (Buf == NULL) {\r
return NULL;\r
EFI_STATUS\r
EFIAPI\r
NetDebugOutput (\r
- IN UINT32 Level,\r
- IN UINT8 *Module,\r
- IN UINT8 *File,\r
- IN UINT32 Line,\r
- IN UINT8 *Message\r
+ IN UINT32 Level,\r
+ IN UINT8 *Module,\r
+ IN UINT8 *File,\r
+ IN UINT32 Line,\r
+ IN UINT8 *Message\r
)\r
{\r
- CHAR8 *Packet;\r
- UINT32 Len;\r
- EFI_STATUS Status;\r
+ CHAR8 *Packet;\r
+ UINT32 Len;\r
+ EFI_STATUS Status;\r
\r
//\r
// Check whether the message should be sent out\r
//\r
- if (Message == NULL || File == NULL || Module == NULL) {\r
+ if ((Message == NULL) || (File == NULL) || (Module == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
// that the message plus the ethernet/ip/udp header is shorter\r
// than this\r
//\r
- Packet = (CHAR8 *) AllocatePool (NET_SYSLOG_PACKET_LEN);\r
+ Packet = (CHAR8 *)AllocatePool (NET_SYSLOG_PACKET_LEN);\r
\r
if (Packet == NULL) {\r
Status = EFI_OUT_OF_RESOURCES;\r
FreePool (Message);\r
return Status;\r
}\r
+\r
/**\r
Return the length of the mask.\r
\r
INTN\r
EFIAPI\r
NetGetMaskLength (\r
- IN IP4_ADDR NetMask\r
+ IN IP4_ADDR NetMask\r
)\r
{\r
- INTN Index;\r
+ INTN Index;\r
\r
for (Index = 0; Index <= IP4_MASK_MAX; Index++) {\r
if (NetMask == gIp4AllMasks[Index]) {\r
return Index;\r
}\r
\r
-\r
-\r
/**\r
Return the class of the IP address, such as class A, B, C.\r
Addr is in host byte order.\r
INTN\r
EFIAPI\r
NetGetIpClass (\r
- IN IP4_ADDR Addr\r
+ IN IP4_ADDR Addr\r
)\r
{\r
- UINT8 ByteOne;\r
+ UINT8 ByteOne;\r
\r
- ByteOne = (UINT8) (Addr >> 24);\r
+ ByteOne = (UINT8)(Addr >> 24);\r
\r
if ((ByteOne & 0x80) == 0) {\r
return IP4_ADDR_CLASSA;\r
-\r
} else if ((ByteOne & 0xC0) == 0x80) {\r
return IP4_ADDR_CLASSB;\r
-\r
} else if ((ByteOne & 0xE0) == 0xC0) {\r
return IP4_ADDR_CLASSC;\r
-\r
} else if ((ByteOne & 0xF0) == 0xE0) {\r
return IP4_ADDR_CLASSD;\r
-\r
} else {\r
return IP4_ADDR_CLASSE;\r
-\r
}\r
}\r
\r
-\r
/**\r
Check whether the IP is a valid unicast address according to\r
the netmask.\r
BOOLEAN\r
EFIAPI\r
NetIp4IsUnicast (\r
- IN IP4_ADDR Ip,\r
- IN IP4_ADDR NetMask\r
+ IN IP4_ADDR Ip,\r
+ IN IP4_ADDR NetMask\r
)\r
{\r
- INTN MaskLength;\r
+ INTN MaskLength;\r
\r
ASSERT (NetMask != 0);\r
\r
- if (Ip == 0 || IP4_IS_LOCAL_BROADCAST (Ip)) {\r
+ if ((Ip == 0) || IP4_IS_LOCAL_BROADCAST (Ip)) {\r
return FALSE;\r
}\r
\r
BOOLEAN\r
EFIAPI\r
NetIp6IsValidUnicast (\r
- IN EFI_IPv6_ADDRESS *Ip6\r
+ IN EFI_IPv6_ADDRESS *Ip6\r
)\r
{\r
- UINT8 Byte;\r
- UINT8 Index;\r
+ UINT8 Byte;\r
+ UINT8 Index;\r
\r
ASSERT (Ip6 != NULL);\r
\r
\r
Byte = Ip6->Addr[Index];\r
\r
- if (Byte == 0x0 || Byte == 0x1) {\r
+ if ((Byte == 0x0) || (Byte == 0x1)) {\r
return FALSE;\r
}\r
\r
BOOLEAN\r
EFIAPI\r
NetIp6IsUnspecifiedAddr (\r
- IN EFI_IPv6_ADDRESS *Ip6\r
+ IN EFI_IPv6_ADDRESS *Ip6\r
)\r
{\r
- UINT8 Index;\r
+ UINT8 Index;\r
\r
ASSERT (Ip6 != NULL);\r
\r
BOOLEAN\r
EFIAPI\r
NetIp6IsLinkLocalAddr (\r
- IN EFI_IPv6_ADDRESS *Ip6\r
+ IN EFI_IPv6_ADDRESS *Ip6\r
)\r
{\r
- UINT8 Index;\r
+ UINT8 Index;\r
\r
ASSERT (Ip6 != NULL);\r
\r
BOOLEAN\r
EFIAPI\r
NetIp6IsNetEqual (\r
- EFI_IPv6_ADDRESS *Ip1,\r
- EFI_IPv6_ADDRESS *Ip2,\r
- UINT8 PrefixLength\r
+ EFI_IPv6_ADDRESS *Ip1,\r
+ EFI_IPv6_ADDRESS *Ip2,\r
+ UINT8 PrefixLength\r
)\r
{\r
- UINT8 Byte;\r
- UINT8 Bit;\r
- UINT8 Mask;\r
+ UINT8 Byte;\r
+ UINT8 Bit;\r
+ UINT8 Mask;\r
\r
ASSERT ((Ip1 != NULL) && (Ip2 != NULL) && (PrefixLength < IP6_PREFIX_MAX));\r
\r
return TRUE;\r
}\r
\r
- Byte = (UINT8) (PrefixLength / 8);\r
- Bit = (UINT8) (PrefixLength % 8);\r
+ Byte = (UINT8)(PrefixLength / 8);\r
+ Bit = (UINT8)(PrefixLength % 8);\r
\r
if (CompareMem (Ip1, Ip2, Byte) != 0) {\r
return FALSE;\r
}\r
\r
if (Bit > 0) {\r
- Mask = (UINT8) (0xFF << (8 - Bit));\r
+ Mask = (UINT8)(0xFF << (8 - Bit));\r
\r
ASSERT (Byte < 16);\r
if (Byte >= 16) {\r
return FALSE;\r
}\r
+\r
if ((Ip1->Addr[Byte] & Mask) != (Ip2->Addr[Byte] & Mask)) {\r
return FALSE;\r
}\r
return TRUE;\r
}\r
\r
-\r
/**\r
Switches the endianess of an IPv6 address\r
\r
EFI_IPv6_ADDRESS *\r
EFIAPI\r
Ip6Swap128 (\r
- EFI_IPv6_ADDRESS *Ip6\r
+ EFI_IPv6_ADDRESS *Ip6\r
)\r
{\r
- UINT64 High;\r
- UINT64 Low;\r
+ UINT64 High;\r
+ UINT64 Low;\r
\r
ASSERT (Ip6 != NULL);\r
\r
VOID\r
)\r
{\r
- EFI_TIME Time;\r
- UINT32 Seed;\r
- UINT64 MonotonicCount;\r
+ EFI_TIME Time;\r
+ UINT32 Seed;\r
+ UINT64 MonotonicCount;\r
\r
gRT->GetTime (&Time, NULL);\r
- Seed = (Time.Hour << 24 | Time.Day << 16 | Time.Minute << 8 | Time.Second);\r
+ Seed = (Time.Hour << 24 | Time.Day << 16 | Time.Minute << 8 | Time.Second);\r
Seed ^= Time.Nanosecond;\r
Seed ^= Time.Year << 7;\r
\r
gBS->GetNextMonotonicCount (&MonotonicCount);\r
- Seed += (UINT32) MonotonicCount;\r
+ Seed += (UINT32)MonotonicCount;\r
\r
return Seed;\r
}\r
\r
-\r
/**\r
Extract a UINT32 from a byte stream.\r
\r
UINT32\r
EFIAPI\r
NetGetUint32 (\r
- IN UINT8 *Buf\r
+ IN UINT8 *Buf\r
)\r
{\r
- UINT32 Value;\r
+ UINT32 Value;\r
\r
ASSERT (Buf != NULL);\r
\r
return NTOHL (Value);\r
}\r
\r
-\r
/**\r
Put a UINT32 to the byte stream in network byte order.\r
\r
VOID\r
EFIAPI\r
NetPutUint32 (\r
- IN OUT UINT8 *Buf,\r
- IN UINT32 Data\r
+ IN OUT UINT8 *Buf,\r
+ IN UINT32 Data\r
)\r
{\r
ASSERT (Buf != NULL);\r
CopyMem (Buf, &Data, sizeof (UINT32));\r
}\r
\r
-\r
/**\r
Remove the first node entry on the list, and return the removed node entry.\r
\r
LIST_ENTRY *\r
EFIAPI\r
NetListRemoveHead (\r
- IN OUT LIST_ENTRY *Head\r
+ IN OUT LIST_ENTRY *Head\r
)\r
{\r
- LIST_ENTRY *First;\r
+ LIST_ENTRY *First;\r
\r
ASSERT (Head != NULL);\r
\r
return NULL;\r
}\r
\r
- First = Head->ForwardLink;\r
- Head->ForwardLink = First->ForwardLink;\r
- First->ForwardLink->BackLink = Head;\r
+ First = Head->ForwardLink;\r
+ Head->ForwardLink = First->ForwardLink;\r
+ First->ForwardLink->BackLink = Head;\r
\r
DEBUG_CODE (\r
- First->ForwardLink = (LIST_ENTRY *) NULL;\r
- First->BackLink = (LIST_ENTRY *) NULL;\r
- );\r
+ First->ForwardLink = (LIST_ENTRY *)NULL;\r
+ First->BackLink = (LIST_ENTRY *)NULL;\r
+ );\r
\r
return First;\r
}\r
\r
-\r
/**\r
Remove the last node entry on the list and and return the removed node entry.\r
\r
LIST_ENTRY *\r
EFIAPI\r
NetListRemoveTail (\r
- IN OUT LIST_ENTRY *Head\r
+ IN OUT LIST_ENTRY *Head\r
)\r
{\r
- LIST_ENTRY *Last;\r
+ LIST_ENTRY *Last;\r
\r
ASSERT (Head != NULL);\r
\r
Last->BackLink->ForwardLink = Head;\r
\r
DEBUG_CODE (\r
- Last->ForwardLink = (LIST_ENTRY *) NULL;\r
- Last->BackLink = (LIST_ENTRY *) NULL;\r
- );\r
+ Last->ForwardLink = (LIST_ENTRY *)NULL;\r
+ Last->BackLink = (LIST_ENTRY *)NULL;\r
+ );\r
\r
return Last;\r
}\r
\r
-\r
/**\r
Insert a new node entry after a designated node entry of a doubly linked list.\r
\r
VOID\r
EFIAPI\r
NetListInsertAfter (\r
- IN OUT LIST_ENTRY *PrevEntry,\r
- IN OUT LIST_ENTRY *NewEntry\r
+ IN OUT LIST_ENTRY *PrevEntry,\r
+ IN OUT LIST_ENTRY *NewEntry\r
)\r
{\r
ASSERT (PrevEntry != NULL && NewEntry != NULL);\r
\r
- NewEntry->BackLink = PrevEntry;\r
- NewEntry->ForwardLink = PrevEntry->ForwardLink;\r
- PrevEntry->ForwardLink->BackLink = NewEntry;\r
- PrevEntry->ForwardLink = NewEntry;\r
+ NewEntry->BackLink = PrevEntry;\r
+ NewEntry->ForwardLink = PrevEntry->ForwardLink;\r
+ PrevEntry->ForwardLink->BackLink = NewEntry;\r
+ PrevEntry->ForwardLink = NewEntry;\r
}\r
\r
-\r
/**\r
Insert a new node entry before a designated node entry of a doubly linked list.\r
\r
VOID\r
EFIAPI\r
NetListInsertBefore (\r
- IN OUT LIST_ENTRY *PostEntry,\r
- IN OUT LIST_ENTRY *NewEntry\r
+ IN OUT LIST_ENTRY *PostEntry,\r
+ IN OUT LIST_ENTRY *NewEntry\r
)\r
{\r
ASSERT (PostEntry != NULL && NewEntry != NULL);\r
\r
- NewEntry->ForwardLink = PostEntry;\r
- NewEntry->BackLink = PostEntry->BackLink;\r
- PostEntry->BackLink->ForwardLink = NewEntry;\r
- PostEntry->BackLink = NewEntry;\r
+ NewEntry->ForwardLink = PostEntry;\r
+ NewEntry->BackLink = PostEntry->BackLink;\r
+ PostEntry->BackLink->ForwardLink = NewEntry;\r
+ PostEntry->BackLink = NewEntry;\r
}\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
NetDestroyLinkList (\r
- IN LIST_ENTRY *List,\r
- IN NET_DESTROY_LINK_LIST_CALLBACK CallBack,\r
- IN VOID *Context OPTIONAL,\r
- OUT UINTN *ListLength OPTIONAL\r
+ IN LIST_ENTRY *List,\r
+ IN NET_DESTROY_LINK_LIST_CALLBACK CallBack,\r
+ IN VOID *Context OPTIONAL,\r
+ OUT UINTN *ListLength OPTIONAL\r
)\r
{\r
- UINTN PreviousLength;\r
- LIST_ENTRY *Entry;\r
- LIST_ENTRY *Ptr;\r
- UINTN Length;\r
- EFI_STATUS Status;\r
+ UINTN PreviousLength;\r
+ LIST_ENTRY *Entry;\r
+ LIST_ENTRY *Ptr;\r
+ UINTN Length;\r
+ EFI_STATUS Status;\r
\r
- if (List == NULL || CallBack == NULL) {\r
+ if ((List == NULL) || (CallBack == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
Length = 0;\r
do {\r
PreviousLength = Length;\r
- Entry = GetFirstNode (List);\r
+ Entry = GetFirstNode (List);\r
while (!IsNull (List, Entry)) {\r
Status = CallBack (Entry, Context);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
//\r
// Walk through the list to see whether the Entry has been removed or not.\r
// If the Entry still exists, just try to destroy the next one.\r
break;\r
}\r
}\r
+\r
if (Ptr == Entry) {\r
Entry = GetNextNode (List, Entry);\r
} else {\r
Entry = GetFirstNode (List);\r
}\r
}\r
- for (Length = 0, Ptr = List->ForwardLink; Ptr != List; Length++, Ptr = Ptr->ForwardLink);\r
+\r
+ for (Length = 0, Ptr = List->ForwardLink; Ptr != List; Length++, Ptr = Ptr->ForwardLink) {\r
+ }\r
} while (Length != PreviousLength);\r
\r
if (ListLength != NULL) {\r
*ListLength = Length;\r
}\r
+\r
return EFI_SUCCESS;\r
}\r
\r
BOOLEAN\r
EFIAPI\r
NetIsInHandleBuffer (\r
- IN EFI_HANDLE Handle,\r
- IN UINTN NumberOfChildren,\r
- IN EFI_HANDLE *ChildHandleBuffer OPTIONAL\r
+ IN EFI_HANDLE Handle,\r
+ IN UINTN NumberOfChildren,\r
+ IN EFI_HANDLE *ChildHandleBuffer OPTIONAL\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
- if (NumberOfChildren == 0 || ChildHandleBuffer == NULL) {\r
+ if ((NumberOfChildren == 0) || (ChildHandleBuffer == NULL)) {\r
return FALSE;\r
}\r
\r
return FALSE;\r
}\r
\r
-\r
/**\r
Initialize the netmap. Netmap is a reposity to keep the <Key, Value> pairs.\r
\r
VOID\r
EFIAPI\r
NetMapInit (\r
- IN OUT NET_MAP *Map\r
+ IN OUT NET_MAP *Map\r
)\r
{\r
ASSERT (Map != NULL);\r
Map->Count = 0;\r
}\r
\r
-\r
/**\r
To clean up the netmap, that is, release allocated memories.\r
\r
VOID\r
EFIAPI\r
NetMapClean (\r
- IN OUT NET_MAP *Map\r
+ IN OUT NET_MAP *Map\r
)\r
{\r
- NET_MAP_ITEM *Item;\r
- LIST_ENTRY *Entry;\r
- LIST_ENTRY *Next;\r
+ NET_MAP_ITEM *Item;\r
+ LIST_ENTRY *Entry;\r
+ LIST_ENTRY *Next;\r
\r
ASSERT (Map != NULL);\r
\r
ASSERT (IsListEmpty (&Map->Recycled));\r
}\r
\r
-\r
/**\r
Test whether the netmap is empty and return true if it is.\r
\r
BOOLEAN\r
EFIAPI\r
NetMapIsEmpty (\r
- IN NET_MAP *Map\r
+ IN NET_MAP *Map\r
)\r
{\r
ASSERT (Map != NULL);\r
- return (BOOLEAN) (Map->Count == 0);\r
+ return (BOOLEAN)(Map->Count == 0);\r
}\r
\r
-\r
/**\r
Return the number of the <Key, Value> pairs in the netmap.\r
\r
UINTN\r
EFIAPI\r
NetMapGetCount (\r
- IN NET_MAP *Map\r
+ IN NET_MAP *Map\r
)\r
{\r
ASSERT (Map != NULL);\r
return Map->Count;\r
}\r
\r
-\r
/**\r
Return one allocated item.\r
\r
**/\r
NET_MAP_ITEM *\r
NetMapAllocItem (\r
- IN OUT NET_MAP *Map\r
+ IN OUT NET_MAP *Map\r
)\r
{\r
- NET_MAP_ITEM *Item;\r
- LIST_ENTRY *Head;\r
- UINTN Index;\r
+ NET_MAP_ITEM *Item;\r
+ LIST_ENTRY *Head;\r
+ UINTN Index;\r
\r
ASSERT (Map != NULL);\r
\r
return Item;\r
}\r
\r
-\r
/**\r
Allocate an item to save the <Key, Value> pair to the head of the netmap.\r
\r
EFI_STATUS\r
EFIAPI\r
NetMapInsertHead (\r
- IN OUT NET_MAP *Map,\r
- IN VOID *Key,\r
- IN VOID *Value OPTIONAL\r
+ IN OUT NET_MAP *Map,\r
+ IN VOID *Key,\r
+ IN VOID *Value OPTIONAL\r
)\r
{\r
- NET_MAP_ITEM *Item;\r
+ NET_MAP_ITEM *Item;\r
\r
ASSERT (Map != NULL && Key != NULL);\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Allocate an item to save the <Key, Value> pair to the tail of the netmap.\r
\r
EFI_STATUS\r
EFIAPI\r
NetMapInsertTail (\r
- IN OUT NET_MAP *Map,\r
- IN VOID *Key,\r
- IN VOID *Value OPTIONAL\r
+ IN OUT NET_MAP *Map,\r
+ IN VOID *Key,\r
+ IN VOID *Value OPTIONAL\r
)\r
{\r
- NET_MAP_ITEM *Item;\r
+ NET_MAP_ITEM *Item;\r
\r
ASSERT (Map != NULL && Key != NULL);\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Check whether the item is in the Map and return TRUE if it is.\r
\r
**/\r
BOOLEAN\r
NetItemInMap (\r
- IN NET_MAP *Map,\r
- IN NET_MAP_ITEM *Item\r
+ IN NET_MAP *Map,\r
+ IN NET_MAP_ITEM *Item\r
)\r
{\r
- LIST_ENTRY *ListEntry;\r
+ LIST_ENTRY *ListEntry;\r
\r
ASSERT (Map != NULL && Item != NULL);\r
\r
return FALSE;\r
}\r
\r
-\r
/**\r
Find the key in the netmap and returns the point to the item contains the Key.\r
\r
NET_MAP_ITEM *\r
EFIAPI\r
NetMapFindKey (\r
- IN NET_MAP *Map,\r
- IN VOID *Key\r
+ IN NET_MAP *Map,\r
+ IN VOID *Key\r
)\r
{\r
- LIST_ENTRY *Entry;\r
- NET_MAP_ITEM *Item;\r
+ LIST_ENTRY *Entry;\r
+ NET_MAP_ITEM *Item;\r
\r
ASSERT (Map != NULL && Key != NULL);\r
\r
return NULL;\r
}\r
\r
-\r
/**\r
Remove the node entry of the item from the netmap and return the key of the removed item.\r
\r
VOID *\r
EFIAPI\r
NetMapRemoveItem (\r
- IN OUT NET_MAP *Map,\r
- IN OUT NET_MAP_ITEM *Item,\r
- OUT VOID **Value OPTIONAL\r
+ IN OUT NET_MAP *Map,\r
+ IN OUT NET_MAP_ITEM *Item,\r
+ OUT VOID **Value OPTIONAL\r
)\r
{\r
ASSERT ((Map != NULL) && (Item != NULL));\r
return Item->Key;\r
}\r
\r
-\r
/**\r
Remove the first node entry on the netmap and return the key of the removed item.\r
\r
VOID *\r
EFIAPI\r
NetMapRemoveHead (\r
- IN OUT NET_MAP *Map,\r
- OUT VOID **Value OPTIONAL\r
+ IN OUT NET_MAP *Map,\r
+ OUT VOID **Value OPTIONAL\r
)\r
{\r
NET_MAP_ITEM *Item;\r
return Item->Key;\r
}\r
\r
-\r
/**\r
Remove the last node entry on the netmap and return the key of the removed item.\r
\r
VOID *\r
EFIAPI\r
NetMapRemoveTail (\r
- IN OUT NET_MAP *Map,\r
- OUT VOID **Value OPTIONAL\r
+ IN OUT NET_MAP *Map,\r
+ OUT VOID **Value OPTIONAL\r
)\r
{\r
- NET_MAP_ITEM *Item;\r
+ NET_MAP_ITEM *Item;\r
\r
//\r
// Often, it indicates a programming error to remove\r
return Item->Key;\r
}\r
\r
-\r
/**\r
Iterate through the netmap and call CallBack for each item.\r
\r
EFI_STATUS\r
EFIAPI\r
NetMapIterate (\r
- IN NET_MAP *Map,\r
- IN NET_MAP_CALLBACK CallBack,\r
- IN VOID *Arg OPTIONAL\r
+ IN NET_MAP *Map,\r
+ IN NET_MAP_CALLBACK CallBack,\r
+ IN VOID *Arg OPTIONAL\r
)\r
{\r
-\r
- LIST_ENTRY *Entry;\r
- LIST_ENTRY *Next;\r
- LIST_ENTRY *Head;\r
- NET_MAP_ITEM *Item;\r
- EFI_STATUS Result;\r
+ LIST_ENTRY *Entry;\r
+ LIST_ENTRY *Next;\r
+ LIST_ENTRY *Head;\r
+ NET_MAP_ITEM *Item;\r
+ EFI_STATUS Result;\r
\r
ASSERT ((Map != NULL) && (CallBack != NULL));\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
This is the default unload handle for all the network drivers.\r
\r
EFI_STATUS\r
EFIAPI\r
NetLibDefaultUnload (\r
- IN EFI_HANDLE ImageHandle\r
+ IN EFI_HANDLE ImageHandle\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_HANDLE *DeviceHandleBuffer;\r
- UINTN DeviceHandleCount;\r
- UINTN Index;\r
- UINTN Index2;\r
- EFI_DRIVER_BINDING_PROTOCOL *DriverBinding;\r
- EFI_COMPONENT_NAME_PROTOCOL *ComponentName;\r
- EFI_COMPONENT_NAME2_PROTOCOL *ComponentName2;\r
+ EFI_STATUS Status;\r
+ EFI_HANDLE *DeviceHandleBuffer;\r
+ UINTN DeviceHandleCount;\r
+ UINTN Index;\r
+ UINTN Index2;\r
+ EFI_DRIVER_BINDING_PROTOCOL *DriverBinding;\r
+ EFI_COMPONENT_NAME_PROTOCOL *ComponentName;\r
+ EFI_COMPONENT_NAME2_PROTOCOL *ComponentName2;\r
\r
//\r
// Get the list of all the handles in the handle database.\r
Status = gBS->HandleProtocol (\r
DeviceHandleBuffer[Index],\r
&gEfiDriverBindingProtocolGuid,\r
- (VOID **) &DriverBinding\r
+ (VOID **)&DriverBinding\r
);\r
if (EFI_ERROR (Status)) {\r
continue;\r
// Uninstall all the protocols installed in the driver entry point\r
//\r
gBS->UninstallProtocolInterface (\r
- DriverBinding->DriverBindingHandle,\r
- &gEfiDriverBindingProtocolGuid,\r
- DriverBinding\r
- );\r
+ DriverBinding->DriverBindingHandle,\r
+ &gEfiDriverBindingProtocolGuid,\r
+ DriverBinding\r
+ );\r
\r
Status = gBS->HandleProtocol (\r
DeviceHandleBuffer[Index],\r
&gEfiComponentNameProtocolGuid,\r
- (VOID **) &ComponentName\r
+ (VOID **)&ComponentName\r
);\r
if (!EFI_ERROR (Status)) {\r
gBS->UninstallProtocolInterface (\r
Status = gBS->HandleProtocol (\r
DeviceHandleBuffer[Index],\r
&gEfiComponentName2ProtocolGuid,\r
- (VOID **) &ComponentName2\r
+ (VOID **)&ComponentName2\r
);\r
if (!EFI_ERROR (Status)) {\r
gBS->UninstallProtocolInterface (\r
return EFI_SUCCESS;\r
}\r
\r
-\r
-\r
/**\r
Create a child of the service that is identified by ServiceBindingGuid.\r
\r
EFI_STATUS\r
EFIAPI\r
NetLibCreateServiceChild (\r
- IN EFI_HANDLE Controller,\r
- IN EFI_HANDLE Image,\r
- IN EFI_GUID *ServiceBindingGuid,\r
- IN OUT EFI_HANDLE *ChildHandle\r
+ IN EFI_HANDLE Controller,\r
+ IN EFI_HANDLE Image,\r
+ IN EFI_GUID *ServiceBindingGuid,\r
+ IN OUT EFI_HANDLE *ChildHandle\r
)\r
{\r
EFI_STATUS Status;\r
EFI_SERVICE_BINDING_PROTOCOL *Service;\r
\r
-\r
ASSERT ((ServiceBindingGuid != NULL) && (ChildHandle != NULL));\r
\r
//\r
Status = gBS->OpenProtocol (\r
Controller,\r
ServiceBindingGuid,\r
- (VOID **) &Service,\r
+ (VOID **)&Service,\r
Image,\r
Controller,\r
EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
return Status;\r
}\r
\r
-\r
/**\r
Destroy a child of the service that is identified by ServiceBindingGuid.\r
\r
EFI_STATUS\r
EFIAPI\r
NetLibDestroyServiceChild (\r
- IN EFI_HANDLE Controller,\r
- IN EFI_HANDLE Image,\r
- IN EFI_GUID *ServiceBindingGuid,\r
- IN EFI_HANDLE ChildHandle\r
+ IN EFI_HANDLE Controller,\r
+ IN EFI_HANDLE Image,\r
+ IN EFI_GUID *ServiceBindingGuid,\r
+ IN EFI_HANDLE ChildHandle\r
)\r
{\r
EFI_STATUS Status;\r
Status = gBS->OpenProtocol (\r
Controller,\r
ServiceBindingGuid,\r
- (VOID **) &Service,\r
+ (VOID **)&Service,\r
Image,\r
Controller,\r
EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
EFI_HANDLE\r
EFIAPI\r
NetLibGetSnpHandle (\r
- IN EFI_HANDLE ServiceHandle,\r
- OUT EFI_SIMPLE_NETWORK_PROTOCOL **Snp OPTIONAL\r
+ IN EFI_HANDLE ServiceHandle,\r
+ OUT EFI_SIMPLE_NETWORK_PROTOCOL **Snp OPTIONAL\r
)\r
{\r
EFI_STATUS Status;\r
// Try to open SNP from ServiceHandle\r
//\r
SnpInstance = NULL;\r
- Status = gBS->HandleProtocol (ServiceHandle, &gEfiSimpleNetworkProtocolGuid, (VOID **) &SnpInstance);\r
+ Status = gBS->HandleProtocol (ServiceHandle, &gEfiSimpleNetworkProtocolGuid, (VOID **)&SnpInstance);\r
if (!EFI_ERROR (Status)) {\r
if (Snp != NULL) {\r
*Snp = SnpInstance;\r
}\r
+\r
return ServiceHandle;\r
}\r
\r
}\r
\r
SnpHandle = NULL;\r
- Status = gBS->LocateDevicePath (&gEfiSimpleNetworkProtocolGuid, &DevicePath, &SnpHandle);\r
+ Status = gBS->LocateDevicePath (&gEfiSimpleNetworkProtocolGuid, &DevicePath, &SnpHandle);\r
if (EFI_ERROR (Status)) {\r
//\r
// Failed to find SNP handle\r
return NULL;\r
}\r
\r
- Status = gBS->HandleProtocol (SnpHandle, &gEfiSimpleNetworkProtocolGuid, (VOID **) &SnpInstance);\r
+ Status = gBS->HandleProtocol (SnpHandle, &gEfiSimpleNetworkProtocolGuid, (VOID **)&SnpInstance);\r
if (!EFI_ERROR (Status)) {\r
if (Snp != NULL) {\r
*Snp = SnpInstance;\r
}\r
+\r
return SnpHandle;\r
}\r
\r
UINT16\r
EFIAPI\r
NetLibGetVlanId (\r
- IN EFI_HANDLE ServiceHandle\r
+ IN EFI_HANDLE ServiceHandle\r
)\r
{\r
EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
\r
Node = DevicePath;\r
while (!IsDevicePathEnd (Node)) {\r
- if (Node->Type == MESSAGING_DEVICE_PATH && Node->SubType == MSG_VLAN_DP) {\r
- return ((VLAN_DEVICE_PATH *) Node)->VlanId;\r
+ if ((Node->Type == MESSAGING_DEVICE_PATH) && (Node->SubType == MSG_VLAN_DP)) {\r
+ return ((VLAN_DEVICE_PATH *)Node)->VlanId;\r
}\r
+\r
Node = NextDevicePathNode (Node);\r
}\r
\r
EFI_HANDLE\r
EFIAPI\r
NetLibGetVlanHandle (\r
- IN EFI_HANDLE ControllerHandle,\r
- IN UINT16 VlanId\r
+ IN EFI_HANDLE ControllerHandle,\r
+ IN UINT16 VlanId\r
)\r
{\r
EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath;\r
//\r
CopyMem (&VlanNode, &mNetVlanDevicePathTemplate, sizeof (VLAN_DEVICE_PATH));\r
VlanNode.VlanId = VlanId;\r
- VlanDevicePath = AppendDevicePathNode (\r
- ParentDevicePath,\r
- (EFI_DEVICE_PATH_PROTOCOL *) &VlanNode\r
- );\r
+ VlanDevicePath = AppendDevicePathNode (\r
+ ParentDevicePath,\r
+ (EFI_DEVICE_PATH_PROTOCOL *)&VlanNode\r
+ );\r
if (VlanDevicePath == NULL) {\r
return NULL;\r
}\r
//\r
// Find VLAN device handle\r
//\r
- Handle = NULL;\r
+ Handle = NULL;\r
DevicePath = VlanDevicePath;\r
gBS->LocateDevicePath (\r
&gEfiDevicePathProtocolGuid,\r
EFI_STATUS\r
EFIAPI\r
NetLibGetMacAddress (\r
- IN EFI_HANDLE ServiceHandle,\r
- OUT EFI_MAC_ADDRESS *MacAddress,\r
- OUT UINTN *AddressSize\r
+ IN EFI_HANDLE ServiceHandle,\r
+ OUT EFI_MAC_ADDRESS *MacAddress,\r
+ OUT UINTN *AddressSize\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
- EFI_SIMPLE_NETWORK_MODE *SnpMode;\r
- EFI_SIMPLE_NETWORK_MODE SnpModeData;\r
- EFI_MANAGED_NETWORK_PROTOCOL *Mnp;\r
- EFI_SERVICE_BINDING_PROTOCOL *MnpSb;\r
- EFI_HANDLE SnpHandle;\r
- EFI_HANDLE MnpChildHandle;\r
+ EFI_STATUS Status;\r
+ EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
+ EFI_SIMPLE_NETWORK_MODE *SnpMode;\r
+ EFI_SIMPLE_NETWORK_MODE SnpModeData;\r
+ EFI_MANAGED_NETWORK_PROTOCOL *Mnp;\r
+ EFI_SERVICE_BINDING_PROTOCOL *MnpSb;\r
+ EFI_HANDLE SnpHandle;\r
+ EFI_HANDLE MnpChildHandle;\r
\r
ASSERT (MacAddress != NULL);\r
ASSERT (AddressSize != NULL);\r
//\r
// Try to get SNP handle\r
//\r
- Snp = NULL;\r
+ Snp = NULL;\r
SnpHandle = NetLibGetSnpHandle (ServiceHandle, &Snp);\r
if (SnpHandle != NULL) {\r
//\r
// Failed to get SNP handle, try to get MAC address from MNP\r
//\r
MnpChildHandle = NULL;\r
- Status = gBS->HandleProtocol (\r
- ServiceHandle,\r
- &gEfiManagedNetworkServiceBindingProtocolGuid,\r
- (VOID **) &MnpSb\r
- );\r
+ Status = gBS->HandleProtocol (\r
+ ServiceHandle,\r
+ &gEfiManagedNetworkServiceBindingProtocolGuid,\r
+ (VOID **)&MnpSb\r
+ );\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
Status = gBS->HandleProtocol (\r
MnpChildHandle,\r
&gEfiManagedNetworkProtocolGuid,\r
- (VOID **) &Mnp\r
+ (VOID **)&Mnp\r
);\r
if (EFI_ERROR (Status)) {\r
MnpSb->DestroyChild (MnpSb, MnpChildHandle);\r
MnpSb->DestroyChild (MnpSb, MnpChildHandle);\r
return Status;\r
}\r
+\r
SnpMode = &SnpModeData;\r
\r
//\r
EFI_STATUS\r
EFIAPI\r
NetLibGetMacString (\r
- IN EFI_HANDLE ServiceHandle,\r
- IN EFI_HANDLE ImageHandle OPTIONAL,\r
- OUT CHAR16 **MacString\r
+ IN EFI_HANDLE ServiceHandle,\r
+ IN EFI_HANDLE ImageHandle OPTIONAL,\r
+ OUT CHAR16 **MacString\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_MAC_ADDRESS MacAddress;\r
- UINT8 *HwAddress;\r
- UINTN HwAddressSize;\r
- UINT16 VlanId;\r
- CHAR16 *String;\r
- UINTN Index;\r
- UINTN BufferSize;\r
+ EFI_STATUS Status;\r
+ EFI_MAC_ADDRESS MacAddress;\r
+ UINT8 *HwAddress;\r
+ UINTN HwAddressSize;\r
+ UINT16 VlanId;\r
+ CHAR16 *String;\r
+ UINTN Index;\r
+ UINTN BufferSize;\r
\r
ASSERT (MacString != NULL);\r
\r
// Plus one unicode character for the null-terminator.\r
//\r
BufferSize = (2 * HwAddressSize + 5 + 1) * sizeof (CHAR16);\r
- String = AllocateZeroPool (BufferSize);\r
+ String = AllocateZeroPool (BufferSize);\r
if (String == NULL) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
+\r
*MacString = String;\r
\r
//\r
EFI_STATUS\r
EFIAPI\r
NetLibDetectMedia (\r
- IN EFI_HANDLE ServiceHandle,\r
- OUT BOOLEAN *MediaPresent\r
+ IN EFI_HANDLE ServiceHandle,\r
+ OUT BOOLEAN *MediaPresent\r
)\r
{\r
EFI_STATUS Status;\r
//\r
// Get SNP handle\r
//\r
- Snp = NULL;\r
+ Snp = NULL;\r
SnpHandle = NetLibGetSnpHandle (ServiceHandle, &Snp);\r
if (SnpHandle == NULL) {\r
return EFI_INVALID_PARAMETER;\r
if (!EFI_ERROR (Status)) {\r
Status = Snp->Stop (Snp);\r
}\r
+\r
if (EFI_ERROR (Status)) {\r
goto Exit;\r
}\r
if (!EFI_ERROR (Status)) {\r
Status = Snp->Initialize (Snp, 0, 0);\r
}\r
+\r
if (EFI_ERROR (Status)) {\r
goto Exit;\r
}\r
EFI_STATUS\r
EFIAPI\r
NetLibDetectMediaWaitTimeout (\r
- IN EFI_HANDLE ServiceHandle,\r
- IN UINT64 Timeout,\r
- OUT EFI_STATUS *MediaState\r
+ IN EFI_HANDLE ServiceHandle,\r
+ IN UINT64 Timeout,\r
+ OUT EFI_STATUS *MediaState\r
)\r
{\r
EFI_STATUS Status;\r
if (MediaState == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
*MediaState = EFI_SUCCESS;\r
MediaInfo = NULL;\r
\r
//\r
// Get SNP handle\r
//\r
- Snp = NULL;\r
+ Snp = NULL;\r
SnpHandle = NetLibGetSnpHandle (ServiceHandle, &Snp);\r
if (SnpHandle == NULL) {\r
return EFI_INVALID_PARAMETER;\r
Status = gBS->HandleProtocol (\r
SnpHandle,\r
&gEfiAdapterInformationProtocolGuid,\r
- (VOID *) &Aip\r
+ (VOID *)&Aip\r
);\r
if (EFI_ERROR (Status)) {\r
-\r
MediaPresent = TRUE;\r
- Status = NetLibDetectMedia (ServiceHandle, &MediaPresent);\r
+ Status = NetLibDetectMedia (ServiceHandle, &MediaPresent);\r
if (!EFI_ERROR (Status)) {\r
if (MediaPresent) {\r
*MediaState = EFI_SUCCESS;\r
Status = Aip->GetInformation (\r
Aip,\r
&gEfiAdapterInfoMediaStateGuid,\r
- (VOID **) &MediaInfo,\r
+ (VOID **)&MediaInfo,\r
&DataSize\r
);\r
if (!EFI_ERROR (Status)) {\r
-\r
*MediaState = MediaInfo->MediaState;\r
FreePool (MediaInfo);\r
- if (*MediaState != EFI_NOT_READY || Timeout < MEDIA_STATE_DETECT_TIME_INTERVAL) {\r
-\r
+ if ((*MediaState != EFI_NOT_READY) || (Timeout < MEDIA_STATE_DETECT_TIME_INTERVAL)) {\r
return EFI_SUCCESS;\r
}\r
} else {\r
-\r
if (MediaInfo != NULL) {\r
FreePool (MediaInfo);\r
}\r
\r
if (Status == EFI_UNSUPPORTED) {\r
-\r
//\r
// If gEfiAdapterInfoMediaStateGuid is not supported, call NetLibDetectMedia to get media state!\r
//\r
MediaPresent = TRUE;\r
- Status = NetLibDetectMedia (ServiceHandle, &MediaPresent);\r
+ Status = NetLibDetectMedia (ServiceHandle, &MediaPresent);\r
if (!EFI_ERROR (Status)) {\r
if (MediaPresent) {\r
*MediaState = EFI_SUCCESS;\r
*MediaState = EFI_NO_MEDIA;\r
}\r
}\r
+\r
return Status;\r
}\r
\r
\r
Timer = NULL;\r
TimeRemained = Timeout;\r
- Status = gBS->CreateEvent (EVT_TIMER, TPL_CALLBACK, NULL, NULL, &Timer);\r
+ Status = gBS->CreateEvent (EVT_TIMER, TPL_CALLBACK, NULL, NULL, &Timer);\r
if (EFI_ERROR (Status)) {\r
return EFI_DEVICE_ERROR;\r
}\r
MEDIA_STATE_DETECT_TIME_INTERVAL\r
);\r
if (EFI_ERROR (Status)) {\r
- gBS->CloseEvent(Timer);\r
+ gBS->CloseEvent (Timer);\r
return EFI_DEVICE_ERROR;\r
}\r
\r
do {\r
TimerStatus = gBS->CheckEvent (Timer);\r
if (!EFI_ERROR (TimerStatus)) {\r
-\r
TimeRemained -= MEDIA_STATE_DETECT_TIME_INTERVAL;\r
- Status = Aip->GetInformation (\r
- Aip,\r
- &gEfiAdapterInfoMediaStateGuid,\r
- (VOID **) &MediaInfo,\r
- &DataSize\r
- );\r
+ Status = Aip->GetInformation (\r
+ Aip,\r
+ &gEfiAdapterInfoMediaStateGuid,\r
+ (VOID **)&MediaInfo,\r
+ &DataSize\r
+ );\r
if (!EFI_ERROR (Status)) {\r
-\r
*MediaState = MediaInfo->MediaState;\r
FreePool (MediaInfo);\r
} else {\r
-\r
if (MediaInfo != NULL) {\r
FreePool (MediaInfo);\r
}\r
- gBS->CloseEvent(Timer);\r
+\r
+ gBS->CloseEvent (Timer);\r
return Status;\r
}\r
}\r
} while (TimerStatus == EFI_NOT_READY);\r
} while (*MediaState == EFI_NOT_READY && TimeRemained >= MEDIA_STATE_DETECT_TIME_INTERVAL);\r
\r
- gBS->CloseEvent(Timer);\r
- if (*MediaState == EFI_NOT_READY && TimeRemained < MEDIA_STATE_DETECT_TIME_INTERVAL) {\r
+ gBS->CloseEvent (Timer);\r
+ if ((*MediaState == EFI_NOT_READY) && (TimeRemained < MEDIA_STATE_DETECT_TIME_INTERVAL)) {\r
return EFI_TIMEOUT;\r
} else {\r
return EFI_SUCCESS;\r
IN EFI_HANDLE Controller\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_IP4_CONFIG2_PROTOCOL *Ip4Config2;\r
- UINTN DataSize;\r
- EFI_IP4_CONFIG2_POLICY Policy;\r
- BOOLEAN IsStatic;\r
+ EFI_STATUS Status;\r
+ EFI_IP4_CONFIG2_PROTOCOL *Ip4Config2;\r
+ UINTN DataSize;\r
+ EFI_IP4_CONFIG2_POLICY Policy;\r
+ BOOLEAN IsStatic;\r
\r
Ip4Config2 = NULL;\r
\r
DataSize = sizeof (EFI_IP4_CONFIG2_POLICY);\r
\r
- IsStatic = TRUE;\r
+ IsStatic = TRUE;\r
\r
//\r
// Get Ip4Config2 policy.\r
//\r
- Status = gBS->HandleProtocol (Controller, &gEfiIp4Config2ProtocolGuid, (VOID **) &Ip4Config2);\r
+ Status = gBS->HandleProtocol (Controller, &gEfiIp4Config2ProtocolGuid, (VOID **)&Ip4Config2);\r
if (EFI_ERROR (Status)) {\r
goto ON_EXIT;\r
}\r
goto ON_EXIT;\r
}\r
\r
- IsStatic = (BOOLEAN) (Policy == Ip4Config2PolicyStatic);\r
+ IsStatic = (BOOLEAN)(Policy == Ip4Config2PolicyStatic);\r
\r
ON_EXIT:\r
\r
Node->LocalPort = LocalPort;\r
Node->RemotePort = RemotePort;\r
\r
- Node->Protocol = Protocol;\r
+ Node->Protocol = Protocol;\r
\r
//\r
// Set default value to IPAddressOrigin, PrefixLength.\r
EFI_HANDLE\r
EFIAPI\r
NetLibGetNicHandle (\r
- IN EFI_HANDLE Controller,\r
- IN EFI_GUID *ProtocolGuid\r
+ IN EFI_HANDLE Controller,\r
+ IN EFI_GUID *ProtocolGuid\r
)\r
{\r
- EFI_OPEN_PROTOCOL_INFORMATION_ENTRY *OpenBuffer;\r
- EFI_HANDLE Handle;\r
- EFI_STATUS Status;\r
- UINTN OpenCount;\r
- UINTN Index;\r
+ EFI_OPEN_PROTOCOL_INFORMATION_ENTRY *OpenBuffer;\r
+ EFI_HANDLE Handle;\r
+ EFI_STATUS Status;\r
+ UINTN OpenCount;\r
+ UINTN Index;\r
\r
ASSERT (ProtocolGuid != NULL);\r
\r
EFI_STATUS\r
EFIAPI\r
NetLibAsciiStrToIp4 (\r
- IN CONST CHAR8 *String,\r
- OUT EFI_IPv4_ADDRESS *Ip4Address\r
+ IN CONST CHAR8 *String,\r
+ OUT EFI_IPv4_ADDRESS *Ip4Address\r
)\r
{\r
- RETURN_STATUS Status;\r
- CHAR8 *EndPointer;\r
+ RETURN_STATUS Status;\r
+ CHAR8 *EndPointer;\r
\r
Status = AsciiStrToIpv4Address (String, &EndPointer, Ip4Address, NULL);\r
if (RETURN_ERROR (Status) || (*EndPointer != '\0')) {\r
}\r
}\r
\r
-\r
/**\r
Convert one Null-terminated ASCII string to EFI_IPv6_ADDRESS. The format of the\r
string is defined in RFC 4291 - Text Representation of Addresses.\r
EFI_STATUS\r
EFIAPI\r
NetLibAsciiStrToIp6 (\r
- IN CONST CHAR8 *String,\r
- OUT EFI_IPv6_ADDRESS *Ip6Address\r
+ IN CONST CHAR8 *String,\r
+ OUT EFI_IPv6_ADDRESS *Ip6Address\r
)\r
{\r
- RETURN_STATUS Status;\r
- CHAR8 *EndPointer;\r
+ RETURN_STATUS Status;\r
+ CHAR8 *EndPointer;\r
\r
Status = AsciiStrToIpv6Address (String, &EndPointer, Ip6Address, NULL);\r
if (RETURN_ERROR (Status) || (*EndPointer != '\0')) {\r
}\r
}\r
\r
-\r
/**\r
Convert one Null-terminated Unicode string (decimal dotted) to EFI_IPv4_ADDRESS.\r
\r
EFI_STATUS\r
EFIAPI\r
NetLibStrToIp4 (\r
- IN CONST CHAR16 *String,\r
- OUT EFI_IPv4_ADDRESS *Ip4Address\r
+ IN CONST CHAR16 *String,\r
+ OUT EFI_IPv4_ADDRESS *Ip4Address\r
)\r
{\r
- RETURN_STATUS Status;\r
- CHAR16 *EndPointer;\r
+ RETURN_STATUS Status;\r
+ CHAR16 *EndPointer;\r
\r
Status = StrToIpv4Address (String, &EndPointer, Ip4Address, NULL);\r
if (RETURN_ERROR (Status) || (*EndPointer != L'\0')) {\r
}\r
}\r
\r
-\r
/**\r
Convert one Null-terminated Unicode string to EFI_IPv6_ADDRESS. The format of\r
the string is defined in RFC 4291 - Text Representation of Addresses.\r
EFI_STATUS\r
EFIAPI\r
NetLibStrToIp6 (\r
- IN CONST CHAR16 *String,\r
- OUT EFI_IPv6_ADDRESS *Ip6Address\r
+ IN CONST CHAR16 *String,\r
+ OUT EFI_IPv6_ADDRESS *Ip6Address\r
)\r
{\r
- RETURN_STATUS Status;\r
- CHAR16 *EndPointer;\r
+ RETURN_STATUS Status;\r
+ CHAR16 *EndPointer;\r
\r
Status = StrToIpv6Address (String, &EndPointer, Ip6Address, NULL);\r
if (RETURN_ERROR (Status) || (*EndPointer != L'\0')) {\r
EFI_STATUS\r
EFIAPI\r
NetLibStrToIp6andPrefix (\r
- IN CONST CHAR16 *String,\r
- OUT EFI_IPv6_ADDRESS *Ip6Address,\r
- OUT UINT8 *PrefixLength\r
+ IN CONST CHAR16 *String,\r
+ OUT EFI_IPv6_ADDRESS *Ip6Address,\r
+ OUT UINT8 *PrefixLength\r
)\r
{\r
- RETURN_STATUS Status;\r
- CHAR16 *EndPointer;\r
+ RETURN_STATUS Status;\r
+ CHAR16 *EndPointer;\r
\r
Status = StrToIpv6Address (String, &EndPointer, Ip6Address, PrefixLength);\r
if (RETURN_ERROR (Status) || (*EndPointer != L'\0')) {\r
EFI_STATUS\r
EFIAPI\r
NetLibIp6ToStr (\r
- IN EFI_IPv6_ADDRESS *Ip6Address,\r
- OUT CHAR16 *String,\r
- IN UINTN StringSize\r
+ IN EFI_IPv6_ADDRESS *Ip6Address,\r
+ OUT CHAR16 *String,\r
+ IN UINTN StringSize\r
)\r
{\r
- UINT16 Ip6Addr[8];\r
- UINTN Index;\r
- UINTN LongestZerosStart;\r
- UINTN LongestZerosLength;\r
- UINTN CurrentZerosStart;\r
- UINTN CurrentZerosLength;\r
- CHAR16 Buffer[sizeof"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"];\r
- CHAR16 *Ptr;\r
-\r
- if (Ip6Address == NULL || String == NULL || StringSize == 0) {\r
+ UINT16 Ip6Addr[8];\r
+ UINTN Index;\r
+ UINTN LongestZerosStart;\r
+ UINTN LongestZerosLength;\r
+ UINTN CurrentZerosStart;\r
+ UINTN CurrentZerosLength;\r
+ CHAR16 Buffer[sizeof "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"];\r
+ CHAR16 *Ptr;\r
+\r
+ if ((Ip6Address == NULL) || (String == NULL) || (StringSize == 0)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
for (Index = 0; Index < 8; Index++) {\r
if (Ip6Addr[Index] == 0) {\r
if (CurrentZerosStart == DEFAULT_ZERO_START) {\r
- CurrentZerosStart = Index;\r
+ CurrentZerosStart = Index;\r
CurrentZerosLength = 1;\r
} else {\r
CurrentZerosLength++;\r
}\r
} else {\r
if (CurrentZerosStart != DEFAULT_ZERO_START) {\r
- if (CurrentZerosLength > 2 && (LongestZerosStart == (DEFAULT_ZERO_START) || CurrentZerosLength > LongestZerosLength)) {\r
+ if ((CurrentZerosLength > 2) && ((LongestZerosStart == (DEFAULT_ZERO_START)) || (CurrentZerosLength > LongestZerosLength))) {\r
LongestZerosStart = CurrentZerosStart;\r
LongestZerosLength = CurrentZerosLength;\r
}\r
+\r
CurrentZerosStart = DEFAULT_ZERO_START;\r
CurrentZerosLength = 0;\r
}\r
}\r
}\r
\r
- if (CurrentZerosStart != DEFAULT_ZERO_START && CurrentZerosLength > 2) {\r
- if (LongestZerosStart == DEFAULT_ZERO_START || LongestZerosLength < CurrentZerosLength) {\r
+ if ((CurrentZerosStart != DEFAULT_ZERO_START) && (CurrentZerosLength > 2)) {\r
+ if ((LongestZerosStart == DEFAULT_ZERO_START) || (LongestZerosLength < CurrentZerosLength)) {\r
LongestZerosStart = CurrentZerosStart;\r
LongestZerosLength = CurrentZerosLength;\r
}\r
\r
Ptr = Buffer;\r
for (Index = 0; Index < 8; Index++) {\r
- if (LongestZerosStart != DEFAULT_ZERO_START && Index >= LongestZerosStart && Index < LongestZerosStart + LongestZerosLength) {\r
+ if ((LongestZerosStart != DEFAULT_ZERO_START) && (Index >= LongestZerosStart) && (Index < LongestZerosStart + LongestZerosLength)) {\r
if (Index == LongestZerosStart) {\r
*Ptr++ = L':';\r
}\r
+\r
continue;\r
}\r
+\r
if (Index != 0) {\r
*Ptr++ = L':';\r
}\r
- Ptr += UnicodeSPrint(Ptr, 10, L"%x", Ip6Addr[Index]);\r
+\r
+ Ptr += UnicodeSPrint (Ptr, 10, L"%x", Ip6Addr[Index]);\r
}\r
\r
- if (LongestZerosStart != DEFAULT_ZERO_START && LongestZerosStart + LongestZerosLength == 8) {\r
+ if ((LongestZerosStart != DEFAULT_ZERO_START) && (LongestZerosStart + LongestZerosLength == 8)) {\r
*Ptr++ = L':';\r
}\r
+\r
*Ptr = L'\0';\r
\r
if ((UINTN)Ptr - (UINTN)Buffer > StringSize) {\r
EFI_STATUS\r
EFIAPI\r
NetLibGetSystemGuid (\r
- OUT EFI_GUID *SystemGuid\r
+ OUT EFI_GUID *SystemGuid\r
)\r
{\r
EFI_STATUS Status;\r
ASSERT (SystemGuid != NULL);\r
\r
SmbiosTable = NULL;\r
- Status = EfiGetSystemConfigurationTable (&gEfiSmbios3TableGuid, (VOID **) &Smbios30Table);\r
- if (!(EFI_ERROR (Status) || Smbios30Table == NULL)) {\r
- Smbios.Hdr = (SMBIOS_STRUCTURE *) (UINTN) Smbios30Table->TableAddress;\r
- SmbiosEnd.Raw = (UINT8 *) (UINTN) (Smbios30Table->TableAddress + Smbios30Table->TableMaximumSize);\r
+ Status = EfiGetSystemConfigurationTable (&gEfiSmbios3TableGuid, (VOID **)&Smbios30Table);\r
+ if (!(EFI_ERROR (Status) || (Smbios30Table == NULL))) {\r
+ Smbios.Hdr = (SMBIOS_STRUCTURE *)(UINTN)Smbios30Table->TableAddress;\r
+ SmbiosEnd.Raw = (UINT8 *)(UINTN)(Smbios30Table->TableAddress + Smbios30Table->TableMaximumSize);\r
} else {\r
- Status = EfiGetSystemConfigurationTable (&gEfiSmbiosTableGuid, (VOID **) &SmbiosTable);\r
- if (EFI_ERROR (Status) || SmbiosTable == NULL) {\r
+ Status = EfiGetSystemConfigurationTable (&gEfiSmbiosTableGuid, (VOID **)&SmbiosTable);\r
+ if (EFI_ERROR (Status) || (SmbiosTable == NULL)) {\r
return EFI_NOT_FOUND;\r
}\r
- Smbios.Hdr = (SMBIOS_STRUCTURE *) (UINTN) SmbiosTable->TableAddress;\r
- SmbiosEnd.Raw = (UINT8 *) ((UINTN) SmbiosTable->TableAddress + SmbiosTable->TableLength);\r
+\r
+ Smbios.Hdr = (SMBIOS_STRUCTURE *)(UINTN)SmbiosTable->TableAddress;\r
+ SmbiosEnd.Raw = (UINT8 *)((UINTN)SmbiosTable->TableAddress + SmbiosTable->TableLength);\r
}\r
\r
do {\r
//\r
// Step 1: Skip over formatted section.\r
//\r
- String = (CHAR8 *) (Smbios.Raw + Smbios.Hdr->Length);\r
+ String = (CHAR8 *)(Smbios.Raw + Smbios.Hdr->Length);\r
\r
//\r
// Step 2: Skip over unformatted string section.\r
for ( ; *String != 0; String++) {\r
}\r
\r
- if (*(UINT8*)++String == 0) {\r
+ if (*(UINT8 *)++String == 0) {\r
//\r
// Pointer to the next SMBIOS structure.\r
//\r
}\r
} while (TRUE);\r
} while (Smbios.Raw < SmbiosEnd.Raw);\r
+\r
return EFI_NOT_FOUND;\r
}\r
\r
CHAR8 *\r
EFIAPI\r
NetLibCreateDnsQName (\r
- IN CHAR16 *DomainName\r
+ IN CHAR16 *DomainName\r
)\r
{\r
- CHAR8 *QueryName;\r
- UINTN QueryNameSize;\r
- CHAR8 *Header;\r
- CHAR8 *Tail;\r
- UINTN Len;\r
- UINTN Index;\r
+ CHAR8 *QueryName;\r
+ UINTN QueryNameSize;\r
+ CHAR8 *Header;\r
+ CHAR8 *Tail;\r
+ UINTN Len;\r
+ UINTN Index;\r
\r
ASSERT (DomainName != NULL);\r
\r
}\r
\r
Header = QueryName;\r
- Tail = Header + 1;\r
- Len = 0;\r
+ Tail = Header + 1;\r
+ Len = 0;\r
for (Index = 0; DomainName[Index] != 0; Index++) {\r
- *Tail = (CHAR8) DomainName[Index];\r
+ *Tail = (CHAR8)DomainName[Index];\r
if (*Tail == '.') {\r
- *Header = (CHAR8) Len;\r
- Header = Tail;\r
- Tail ++;\r
+ *Header = (CHAR8)Len;\r
+ Header = Tail;\r
+ Tail++;\r
Len = 0;\r
} else {\r
Tail++;\r
Len++;\r
}\r
}\r
- *Header = (CHAR8) Len;\r
- *Tail = 0;\r
+\r
+ *Header = (CHAR8)Len;\r
+ *Tail = 0;\r
\r
return QueryName;\r
}\r