]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Impl.c
Patch to remove STATIC modifier. This is on longer recommended by EFI Framework codin...
[mirror_edk2.git] / MdeModulePkg / Universal / Network / Udp4Dxe / Udp4Impl.c
index 5cf87c7921d6e32015c009199608ea75a1528fb6..ab50830b680281d7281502ad4caa2b0f899ad743 100644 (file)
@@ -1,6 +1,6 @@
 /** @file\r
 \r
-Copyright (c) 2006 - 2007, Intel Corporation\r
+Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
 All rights reserved. This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
@@ -25,7 +25,6 @@ Abstract:
 \r
 UINT16  mUdp4RandomPort;\r
 \r
-STATIC\r
 VOID\r
 EFIAPI\r
 Udp4CheckTimeout (\r
@@ -33,15 +32,13 @@ Udp4CheckTimeout (
   IN VOID       *Context\r
   );\r
 \r
-STATIC\r
 BOOLEAN\r
 Udp4FindInstanceByPort (\r
-  IN NET_LIST_ENTRY    *InstanceList,\r
+  IN LIST_ENTRY        *InstanceList,\r
   IN EFI_IPv4_ADDRESS  *Address,\r
   IN UINT16            Port\r
   );\r
 \r
-STATIC\r
 VOID\r
 Udp4DgramSent (\r
   IN EFI_STATUS  Status,\r
@@ -50,7 +47,6 @@ Udp4DgramSent (
   IN VOID        *NotifyData\r
   );\r
 \r
-STATIC\r
 VOID\r
 Udp4DgramRcvd (\r
   IN EFI_STATUS            Status,\r
@@ -60,7 +56,6 @@ Udp4DgramRcvd (
   IN VOID                  *Context\r
   );\r
 \r
-STATIC\r
 EFI_STATUS\r
 Udp4CancelTokens (\r
   IN NET_MAP       *Map,\r
@@ -68,14 +63,12 @@ Udp4CancelTokens (
   IN VOID          *Arg OPTIONAL\r
   );\r
 \r
-STATIC\r
 BOOLEAN\r
 Udp4MatchDgram (\r
   IN UDP4_INSTANCE_DATA     *Instance,\r
   IN EFI_UDP4_SESSION_DATA  *Udp4Session\r
   );\r
 \r
-STATIC\r
 VOID\r
 EFIAPI\r
 Udp4RecycleRxDataWrap (\r
@@ -83,7 +76,6 @@ Udp4RecycleRxDataWrap (
   IN VOID       *Context\r
   );\r
 \r
-STATIC\r
 UDP4_RXDATA_WRAP *\r
 Udp4WrapRxData (\r
   IN UDP4_INSTANCE_DATA     *Instance,\r
@@ -91,7 +83,6 @@ Udp4WrapRxData (
   IN EFI_UDP4_RECEIVE_DATA  *RxData\r
   );\r
 \r
-STATIC\r
 UINTN\r
 Udp4EnqueueDgram (\r
   IN UDP4_SERVICE_DATA      *Udp4Service,\r
@@ -99,13 +90,11 @@ Udp4EnqueueDgram (
   IN EFI_UDP4_RECEIVE_DATA  *RxData\r
   );\r
 \r
-STATIC\r
 VOID\r
 Udp4DeliverDgram (\r
   IN UDP4_SERVICE_DATA  *Udp4Service\r
   );\r
 \r
-STATIC\r
 VOID\r
 Udp4Demultiplex (\r
   IN UDP4_SERVICE_DATA     *Udp4Service,\r
@@ -113,7 +102,6 @@ Udp4Demultiplex (
   IN NET_BUF               *Packet\r
   );\r
 \r
-STATIC\r
 VOID\r
 Udp4IcmpHandler (\r
   IN UDP4_SERVICE_DATA     *Udp4Service,\r
@@ -122,7 +110,6 @@ Udp4IcmpHandler (
   IN NET_BUF               *Packet\r
   );\r
 \r
-STATIC\r
 VOID\r
 Udp4SendPortUnreach (\r
   IN IP_IO                 *IpIo,\r
@@ -153,13 +140,15 @@ Udp4CreateService (
   EFI_STATUS       Status;\r
   IP_IO_OPEN_DATA  OpenData;\r
 \r
+  ZeroMem (Udp4Service, sizeof (UDP4_SERVICE_DATA));\r
+\r
   Udp4Service->Signature        = UDP4_SERVICE_DATA_SIGNATURE;\r
   Udp4Service->ServiceBinding   = mUdp4ServiceBinding;\r
   Udp4Service->ImageHandle      = ImageHandle;\r
   Udp4Service->ControllerHandle = ControllerHandle;\r
   Udp4Service->ChildrenNumber   = 0;\r
 \r
-  NetListInit (&Udp4Service->ChildrenList);\r
+  InitializeListHead (&Udp4Service->ChildrenList);\r
 \r
   //\r
   // Create the IpIo for this service context.\r
@@ -184,7 +173,7 @@ Udp4CreateService (
   //\r
   Status = IpIoOpen (Udp4Service->IpIo, &OpenData);\r
   if (EFI_ERROR (Status)) {\r
-    goto RELEASE_IPIO;\r
+    goto ON_ERROR;\r
   }\r
 \r
   //\r
@@ -192,13 +181,13 @@ Udp4CreateService (
   //\r
   Status = gBS->CreateEvent (\r
                   EVT_TIMER | EVT_NOTIFY_SIGNAL,\r
-                  NET_TPL_FAST_TIMER,\r
+                  TPL_CALLBACK,\r
                   Udp4CheckTimeout,\r
                   Udp4Service,\r
                   &Udp4Service->TimeoutEvent\r
                   );\r
   if (EFI_ERROR (Status)) {\r
-    goto RELEASE_IPIO;\r
+    goto ON_ERROR;\r
   }\r
 \r
   //\r
@@ -210,18 +199,16 @@ Udp4CreateService (
                   UDP4_TIMEOUT_INTERVAL\r
                   );\r
   if (EFI_ERROR (Status)) {\r
-    goto RELEASE_ALL;\r
+    goto ON_ERROR;\r
   }\r
 \r
-  Udp4Service->MacString = NULL;\r
-\r
   return EFI_SUCCESS;\r
 \r
-RELEASE_ALL:\r
-\r
-  gBS->CloseEvent (Udp4Service->TimeoutEvent);\r
+ON_ERROR:\r
 \r
-RELEASE_IPIO:\r
+  if (Udp4Service->TimeoutEvent != NULL) {\r
+    gBS->CloseEvent (Udp4Service->TimeoutEvent);\r
+  }\r
 \r
   IpIoDestroy (Udp4Service->IpIo);\r
 \r
@@ -270,7 +257,6 @@ Udp4CleanService (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 EFIAPI\r
 Udp4CheckTimeout (\r
@@ -279,10 +265,10 @@ Udp4CheckTimeout (
   )\r
 {\r
   UDP4_SERVICE_DATA   *Udp4Service;\r
-  NET_LIST_ENTRY      *Entry;\r
+  LIST_ENTRY          *Entry;\r
   UDP4_INSTANCE_DATA  *Instance;\r
-  NET_LIST_ENTRY      *WrapEntry;\r
-  NET_LIST_ENTRY      *NextEntry;\r
+  LIST_ENTRY          *WrapEntry;\r
+  LIST_ENTRY          *NextEntry;\r
   UDP4_RXDATA_WRAP    *Wrap;\r
 \r
   Udp4Service = (UDP4_SERVICE_DATA *) Context;\r
@@ -306,7 +292,7 @@ Udp4CheckTimeout (
       //\r
       // Iterate all the rxdatas belonging to this udp instance.\r
       //\r
-      Wrap = NET_LIST_USER_STRUCT (Entry, UDP4_RXDATA_WRAP, Link);\r
+      Wrap = NET_LIST_USER_STRUCT (WrapEntry, UDP4_RXDATA_WRAP, Link);\r
 \r
       if (Wrap->TimeoutTick <= UDP4_TIMEOUT_INTERVAL / 1000) {\r
         //\r
@@ -344,9 +330,9 @@ Udp4InitInstance (
   //\r
   // Init the lists.\r
   //\r
-  NetListInit (&Instance->Link);\r
-  NetListInit (&Instance->RcvdDgramQue);\r
-  NetListInit (&Instance->DeliveredDgramQue);\r
+  InitializeListHead (&Instance->Link);\r
+  InitializeListHead (&Instance->RcvdDgramQue);\r
+  InitializeListHead (&Instance->DeliveredDgramQue);\r
 \r
   //\r
   // Init the NET_MAPs.\r
@@ -397,15 +383,14 @@ Udp4CleanInstance (
   @return Is the specified <Address, Port> pair found or not.\r
 \r
 **/\r
-STATIC\r
 BOOLEAN\r
 Udp4FindInstanceByPort (\r
-  IN NET_LIST_ENTRY    *InstanceList,\r
+  IN LIST_ENTRY        *InstanceList,\r
   IN EFI_IPv4_ADDRESS  *Address,\r
   IN UINT16            Port\r
   )\r
 {\r
-  NET_LIST_ENTRY        *Entry;\r
+  LIST_ENTRY            *Entry;\r
   UDP4_INSTANCE_DATA    *Instance;\r
   EFI_UDP4_CONFIG_DATA  *ConfigData;\r
 \r
@@ -457,7 +442,7 @@ Udp4FindInstanceByPort (
 **/\r
 EFI_STATUS\r
 Udp4Bind (\r
-  IN NET_LIST_ENTRY        *InstanceList,\r
+  IN LIST_ENTRY            *InstanceList,\r
   IN EFI_UDP4_CONFIG_DATA  *ConfigData\r
   )\r
 {\r
@@ -618,8 +603,8 @@ Udp4BuildIp4ConfigData (
   Ip4ConfigData->AcceptBroadcast   = Udp4ConfigData->AcceptBroadcast;\r
   Ip4ConfigData->AcceptPromiscuous = Udp4ConfigData->AcceptPromiscuous;\r
   Ip4ConfigData->UseDefaultAddress = Udp4ConfigData->UseDefaultAddress;\r
-  Ip4ConfigData->StationAddress    = Udp4ConfigData->StationAddress;\r
-  Ip4ConfigData->SubnetMask        = Udp4ConfigData->SubnetMask;\r
+  CopyMem (&Ip4ConfigData->StationAddress, &Udp4ConfigData->StationAddress, sizeof (EFI_IPv4_ADDRESS));\r
+  CopyMem (&Ip4ConfigData->SubnetMask, &Udp4ConfigData->SubnetMask, sizeof (EFI_IPv4_ADDRESS));\r
 \r
   //\r
   // use the -1 magic number to disable the receiving process of the ip instance.\r
@@ -701,7 +686,7 @@ Udp4ValidateTxToken (
   }\r
 \r
   if (TxData->GatewayAddress != NULL) {\r
-    NetCopyMem (&GatewayAddress, TxData->GatewayAddress, sizeof (IP4_ADDR));\r
+    CopyMem (&GatewayAddress, TxData->GatewayAddress, sizeof (IP4_ADDR));\r
 \r
     if (!Ip4IsUnicast (NTOHL (GatewayAddress), 0)) {\r
       //\r
@@ -716,7 +701,7 @@ Udp4ValidateTxToken (
 \r
   if (UdpSessionData != NULL) {\r
 \r
-    NetCopyMem (&SourceAddress, &UdpSessionData->SourceAddress, sizeof (IP4_ADDR));\r
+    CopyMem (&SourceAddress, &UdpSessionData->SourceAddress, sizeof (IP4_ADDR));\r
 \r
     if ((SourceAddress != 0) && !Ip4IsUnicast (HTONL (SourceAddress), 0)) {\r
       //\r
@@ -870,7 +855,6 @@ Udp4RemoveToken (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 Udp4DgramSent (\r
   IN EFI_STATUS  Status,\r
@@ -891,6 +875,7 @@ Udp4DgramSent (
     //\r
     Token->Status = Status;\r
     gBS->SignalEvent (Token->Event);\r
+    NetLibDispatchDpc ();\r
   }\r
 }\r
 \r
@@ -909,7 +894,6 @@ Udp4DgramSent (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 Udp4DgramRcvd (\r
   IN EFI_STATUS            Status,\r
@@ -935,6 +919,12 @@ Udp4DgramRcvd (
     //\r
     Udp4IcmpHandler ((UDP4_SERVICE_DATA *) Context, IcmpError, NetSession, Packet);\r
   }\r
+\r
+  //\r
+  // Dispatch the DPC queued by the NotifyFunction of the rx token's events\r
+  // which are signaled with received data.\r
+  //\r
+  NetLibDispatchDpc ();\r
 }\r
 \r
 \r
@@ -1001,7 +991,6 @@ Udp4LeaveGroup (
                                  cancelled.\r
 \r
 **/\r
-STATIC\r
 EFI_STATUS\r
 Udp4CancelTokens (\r
   IN NET_MAP       *Map,\r
@@ -1033,11 +1022,10 @@ Udp4CancelTokens (
     // The token is a receive token. Abort it and remove it from the Map.\r
     //\r
     TokenToCancel = (EFI_UDP4_COMPLETION_TOKEN *) Item->Key;\r
+    NetMapRemoveItem (Map, Item, NULL);\r
 \r
     TokenToCancel->Status = EFI_ABORTED;\r
     gBS->SignalEvent (TokenToCancel->Event);\r
-\r
-    NetMapRemoveItem (Map, Item, NULL);\r
   }\r
 \r
   if (Arg != NULL) {\r
@@ -1057,28 +1045,23 @@ Udp4CancelTokens (
 \r
 **/\r
 VOID\r
-Udp4FlushRxData (\r
-  IN NET_LIST_ENTRY  *RcvdDgramQue\r
+Udp4FlushRcvdDgram (\r
+  IN UDP4_INSTANCE_DATA  *Instance\r
   )\r
 {\r
   UDP4_RXDATA_WRAP  *Wrap;\r
-  EFI_TPL           OldTpl;\r
-\r
-  OldTpl = NET_RAISE_TPL (NET_TPL_RECYCLE);\r
 \r
-  while (!NetListIsEmpty (RcvdDgramQue)) {\r
+  while (!IsListEmpty (&Instance->RcvdDgramQue)) {\r
     //\r
     // Iterate all the Wraps in the RcvdDgramQue.\r
     //\r
-    Wrap = NET_LIST_HEAD (RcvdDgramQue, UDP4_RXDATA_WRAP, Link);\r
+    Wrap = NET_LIST_HEAD (&Instance->RcvdDgramQue, UDP4_RXDATA_WRAP, Link);\r
 \r
     //\r
     // The Wrap will be removed from the RcvdDgramQue by this function call.\r
     //\r
     Udp4RecycleRxDataWrap (NULL, (VOID *) Wrap);\r
   }\r
-\r
-  NET_RESTORE_TPL (OldTpl);\r
 }\r
 \r
 \r
@@ -1145,7 +1128,6 @@ Udp4InstanceCancelToken (
   @return The udp datagram matches the receiving requirments of the Instance or not.\r
 \r
 **/\r
-STATIC\r
 BOOLEAN\r
 Udp4MatchDgram (\r
   IN UDP4_INSTANCE_DATA     *Instance,\r
@@ -1189,7 +1171,7 @@ Udp4MatchDgram (
     return TRUE;\r
   }\r
 \r
-  NetCopyMem (&Destination, &Udp4Session->DestinationAddress, sizeof (IP4_ADDR));\r
+  CopyMem (&Destination, &Udp4Session->DestinationAddress, sizeof (IP4_ADDR));\r
 \r
   if (IP4_IS_LOCAL_BROADCAST (Destination) && ConfigData->AcceptBroadcast) {\r
     //\r
@@ -1219,7 +1201,6 @@ Udp4MatchDgram (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 EFIAPI\r
 Udp4RecycleRxDataWrap (\r
@@ -1234,7 +1215,7 @@ Udp4RecycleRxDataWrap (
   //\r
   // Remove the Wrap from the list it belongs to.\r
   //\r
-  NetListRemoveEntry (&Wrap->Link);\r
+  RemoveEntryList (&Wrap->Link);\r
 \r
   //\r
   // Free the Packet associated with this Wrap.\r
@@ -1246,7 +1227,7 @@ Udp4RecycleRxDataWrap (
   //\r
   gBS->CloseEvent (Wrap->RxData.RecycleSignal);\r
 \r
-  NetFreePool (Wrap);\r
+  gBS->FreePool (Wrap);\r
 }\r
 \r
 \r
@@ -1262,7 +1243,6 @@ Udp4RecycleRxDataWrap (
   @return Pointer to the structure wrapping the RxData and the Packet.\r
 \r
 **/\r
-STATIC\r
 UDP4_RXDATA_WRAP *\r
 Udp4WrapRxData (\r
   IN UDP4_INSTANCE_DATA     *Instance,\r
@@ -1276,13 +1256,13 @@ Udp4WrapRxData (
   //\r
   // Allocate buffer for the Wrap.\r
   //\r
-  Wrap = NetAllocatePool (sizeof (UDP4_RXDATA_WRAP) +\r
+  Wrap = AllocatePool (sizeof (UDP4_RXDATA_WRAP) +\r
          (Packet->BlockOpNum - 1) * sizeof (EFI_UDP4_FRAGMENT_DATA));\r
   if (Wrap == NULL) {\r
     return NULL;\r
   }\r
 \r
-  NetListInit (&Wrap->Link);\r
+  InitializeListHead (&Wrap->Link);\r
 \r
   CopyMem (&Wrap->RxData, RxData, sizeof (Wrap->RxData));\r
 \r
@@ -1291,13 +1271,13 @@ Udp4WrapRxData (
   //\r
   Status = gBS->CreateEvent (\r
                   EVT_NOTIFY_SIGNAL,\r
-                  NET_TPL_RECYCLE,\r
+                  TPL_NOTIFY,\r
                   Udp4RecycleRxDataWrap,\r
                   Wrap,\r
                   &Wrap->RxData.RecycleSignal\r
                   );\r
   if (EFI_ERROR (Status)) {\r
-    NetFreePool (Wrap);\r
+    gBS->FreePool (Wrap);\r
     return NULL;\r
   }\r
 \r
@@ -1320,7 +1300,6 @@ Udp4WrapRxData (
   @return The times this datagram is enqueued.\r
 \r
 **/\r
-STATIC\r
 UINTN\r
 Udp4EnqueueDgram (\r
   IN UDP4_SERVICE_DATA      *Udp4Service,\r
@@ -1328,7 +1307,7 @@ Udp4EnqueueDgram (
   IN EFI_UDP4_RECEIVE_DATA  *RxData\r
   )\r
 {\r
-  NET_LIST_ENTRY      *Entry;\r
+  LIST_ENTRY          *Entry;\r
   UDP4_INSTANCE_DATA  *Instance;\r
   UDP4_RXDATA_WRAP    *Wrap;\r
   UINTN               Enqueued;\r
@@ -1349,14 +1328,14 @@ Udp4EnqueueDgram (
       //\r
       // Wrap the RxData and put this Wrap into the instances RcvdDgramQue.\r
       //\r
-      CopyMem (&Wrap, Udp4WrapRxData (Instance, Packet, RxData), sizeof (Wrap));\r
+      Wrap = Udp4WrapRxData (Instance, Packet, RxData);\r
       if (Wrap == NULL) {\r
         continue;\r
       }\r
 \r
       NET_GET_REF (Packet);\r
 \r
-      NetListInsertTail (&Instance->RcvdDgramQue, &Wrap->Link);\r
+      InsertTailList (&Instance->RcvdDgramQue, &Wrap->Link);\r
 \r
       Enqueued++;\r
     }\r
@@ -1383,8 +1362,9 @@ Udp4InstanceDeliverDgram (
   EFI_UDP4_COMPLETION_TOKEN  *Token;\r
   NET_BUF                    *Dup;\r
   EFI_UDP4_RECEIVE_DATA      *RxData;\r
+  EFI_TPL                    OldTpl;\r
 \r
-  if (!NetListIsEmpty (&Instance->RcvdDgramQue) &&\r
+  if (!IsListEmpty (&Instance->RcvdDgramQue) &&\r
     !NetMapIsEmpty (&Instance->RxTokens)) {\r
 \r
     Wrap = NET_LIST_HEAD (&Instance->RcvdDgramQue, UDP4_RXDATA_WRAP, Link);\r
@@ -1401,7 +1381,7 @@ Udp4InstanceDeliverDgram (
       NetbufFree (Wrap->Packet);\r
 \r
       Wrap->Packet = Dup;\r
-    }\r
+    } \r
 \r
     NetListRemoveHead (&Instance->RcvdDgramQue);\r
 \r
@@ -1422,9 +1402,11 @@ Udp4InstanceDeliverDgram (
     Token->Status        = EFI_SUCCESS;\r
     Token->Packet.RxData = &Wrap->RxData;\r
 \r
-    gBS->SignalEvent (Token->Event);\r
+    OldTpl = gBS->RaiseTPL (TPL_NOTIFY);\r
+    InsertTailList (&Instance->DeliveredDgramQue, &Wrap->Link);\r
+    gBS->RestoreTPL (OldTpl);\r
 \r
-    NetListInsertTail (&Instance->DeliveredDgramQue, &Wrap->Link);\r
+    gBS->SignalEvent (Token->Event);\r
   }\r
 }\r
 \r
@@ -1437,13 +1419,12 @@ Udp4InstanceDeliverDgram (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 Udp4DeliverDgram (\r
   IN UDP4_SERVICE_DATA  *Udp4Service\r
   )\r
 {\r
-  NET_LIST_ENTRY      *Entry;\r
+  LIST_ENTRY          *Entry;\r
   UDP4_INSTANCE_DATA  *Instance;\r
 \r
   NET_LIST_FOR_EACH (Entry, &Udp4Service->ChildrenList) {\r
@@ -1476,7 +1457,6 @@ Udp4DeliverDgram (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 Udp4Demultiplex (\r
   IN UDP4_SERVICE_DATA     *Udp4Service,\r
@@ -1520,8 +1500,8 @@ Udp4Demultiplex (
   Udp4Session->SourcePort      = NTOHS (Udp4Header->SrcPort);\r
   Udp4Session->DestinationPort = NTOHS (Udp4Header->DstPort);\r
 \r
-  NetCopyMem (&Udp4Session->SourceAddress, &NetSession->Source, sizeof (EFI_IPv4_ADDRESS));\r
-  NetCopyMem (&Udp4Session->DestinationAddress, &NetSession->Dest, sizeof (EFI_IPv4_ADDRESS));\r
+  CopyMem (&Udp4Session->SourceAddress, &NetSession->Source, sizeof (EFI_IPv4_ADDRESS));\r
+  CopyMem (&Udp4Session->DestinationAddress, &NetSession->Dest, sizeof (EFI_IPv4_ADDRESS));\r
 \r
   //\r
   // Trim the UDP header.\r
@@ -1568,7 +1548,6 @@ Udp4Demultiplex (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 Udp4SendPortUnreach (\r
   IN IP_IO                 *IpIo,\r
@@ -1625,13 +1604,13 @@ Udp4SendPortUnreach (
   //\r
   // Copy the IP header of the datagram tragged the error.\r
   //\r
-  NetCopyMem (&IcmpErrHdr->IpHead, IpHdr, EFI_IP4_HEADER_LEN (IpHdr));\r
+  CopyMem (&IcmpErrHdr->IpHead, IpHdr, EFI_IP4_HEADER_LEN (IpHdr));\r
 \r
   //\r
   // Copy the UDP header.\r
   //\r
   Ptr = (UINT8 *) &IcmpErrHdr->IpHead + EFI_IP4_HEADER_LEN (IpHdr);\r
-  NetCopyMem (Ptr, Udp4Header, ICMP_ERROR_PACKET_LENGTH);\r
+  CopyMem (Ptr, Udp4Header, ICMP_ERROR_PACKET_LENGTH);\r
 \r
   //\r
   // Calculate the checksum.\r
@@ -1646,8 +1625,8 @@ Udp4SendPortUnreach (
   Override.TimeToLive    = 255;\r
   Override.Protocol      = EFI_IP_PROTO_ICMP;\r
 \r
-  NetCopyMem (&Override.SourceAddress, &NetSession->Dest, sizeof (EFI_IPv4_ADDRESS));\r
-  NetZeroMem (&Override.GatewayAddress, sizeof (EFI_IPv4_ADDRESS));\r
+  CopyMem (&Override.SourceAddress, &NetSession->Dest, sizeof (EFI_IPv4_ADDRESS));\r
+  ZeroMem (&Override.GatewayAddress, sizeof (EFI_IPv4_ADDRESS));\r
 \r
   //\r
   // Send out this icmp packet.\r
@@ -1671,7 +1650,6 @@ Udp4SendPortUnreach (
   @return None.\r
 \r
 **/\r
-STATIC\r
 VOID\r
 Udp4IcmpHandler (\r
   IN UDP4_SERVICE_DATA     *Udp4Service,\r
@@ -1682,13 +1660,13 @@ Udp4IcmpHandler (
 {\r
   EFI_UDP4_HEADER        *Udp4Header;\r
   EFI_UDP4_SESSION_DATA  Udp4Session;\r
-  NET_LIST_ENTRY         *Entry;\r
+  LIST_ENTRY             *Entry;\r
   UDP4_INSTANCE_DATA     *Instance;\r
 \r
   Udp4Header = (EFI_UDP4_HEADER *) NetbufGetByte (Packet, 0, NULL);\r
 \r
-  NetCopyMem (&Udp4Session.SourceAddress, &NetSession->Source, sizeof (EFI_IPv4_ADDRESS));\r
-  NetCopyMem (&Udp4Session.DestinationAddress, &NetSession->Dest, sizeof (EFI_IPv4_ADDRESS));\r
+  CopyMem (&Udp4Session.SourceAddress, &NetSession->Source, sizeof (EFI_IPv4_ADDRESS));\r
+  CopyMem (&Udp4Session.DestinationAddress, &NetSession->Dest, sizeof (EFI_IPv4_ADDRESS));\r
 \r
   Udp4Session.SourcePort      = NTOHS (Udp4Header->DstPort);\r
   Udp4Session.DestinationPort = NTOHS (Udp4Header->SrcPort);\r
@@ -1811,7 +1789,7 @@ Udp4SetVariableData (
   )\r
 {\r
   UINT32                  NumConfiguredInstance;\r
-  NET_LIST_ENTRY          *Entry;\r
+  LIST_ENTRY              *Entry;\r
   UINTN                   VariableDataSize;\r
   EFI_UDP4_VARIABLE_DATA  *Udp4VariableData;\r
   EFI_UDP4_SERVICE_POINT  *Udp4ServicePoint;\r
@@ -1848,7 +1826,7 @@ Udp4SetVariableData (
     VariableDataSize += sizeof (EFI_UDP4_SERVICE_POINT) * (NumConfiguredInstance - 1);\r
   }\r
 \r
-  Udp4VariableData = NetAllocatePool (VariableDataSize);\r
+  Udp4VariableData = AllocatePool (VariableDataSize);\r
   if (Udp4VariableData == NULL) {\r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
@@ -1909,7 +1887,7 @@ Udp4SetVariableData (
              );\r
     }\r
 \r
-    NetFreePool (Udp4Service->MacString);\r
+    gBS->FreePool (Udp4Service->MacString);\r
   }\r
 \r
   Udp4Service->MacString = NewMacString;\r
@@ -1924,7 +1902,7 @@ Udp4SetVariableData (
 \r
 ON_ERROR:\r
 \r
-  NetFreePool (Udp4VariableData);\r
+  gBS->FreePool (Udp4VariableData);\r
 \r
   return Status;\r
 }\r
@@ -1953,6 +1931,6 @@ Udp4ClearVariableData (
          NULL\r
          );\r
 \r
-  NetFreePool (Udp4Service->MacString);\r
+  gBS->FreePool (Udp4Service->MacString);\r
   Udp4Service->MacString = NULL;\r
 }\r