]> git.proxmox.com Git - mirror_edk2.git/commitdiff
StdLib: Remove EfiSocketLib and Ip4Config Protocol dependency.
authorjiaxinwu <jiaxin.wu@intel.com>
Wed, 8 Jul 2015 03:12:58 +0000 (03:12 +0000)
committerjiaxinwu <jiaxinwu@Edk2>
Wed, 8 Jul 2015 03:12:58 +0000 (03:12 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: jiaxinwu <jiaxin.wu@intel.com>
Reviewed-by: "Leahy, Leroy P" <leroy.p.leahy@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17875 6f19259b-4bc3-4df7-8a09-765794883524

StdLib/EfiSocketLib/EfiSocketLib.inf
StdLib/EfiSocketLib/Ip4.c
StdLib/EfiSocketLib/Tcp4.c
StdLib/EfiSocketLib/Udp4.c
StdLib/Include/Efi/EfiSocketLib.h

index a68e241b75a40254427a0b9b2d33d4f5735c1867..29e06ec3e1e4580e45de1f3c9eae6f9e770c80e8 100644 (file)
@@ -2,7 +2,7 @@
 # Component description file for the EFI socket library.\r
 #\r
 # This module implements the socket layer.\r
-# Copyright (c) 2011, Intel Corporation\r
+# Copyright (c) 2011 - 2015, Intel Corporation\r
 #\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
@@ -52,7 +52,7 @@
   UefiLib\r
 \r
 [Protocols]\r
-  gEfiIp4ConfigProtocolGuid\r
+  gEfiIp4Config2ProtocolGuid\r
   gEfiIp6ConfigProtocolGuid\r
   gEfiIp4ProtocolGuid\r
   gEfiIp4ServiceBindingProtocolGuid\r
index bca36ea7d22b21e446ced72b5dcad91115d760d4..d3531b89288d8786c570068e784da0369ef9f236 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Implement the IP4 driver support for the socket layer.\r
 \r
-  Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials are licensed and made available\r
   under the terms and conditions of the BSD License which accompanies this\r
   distribution.  The full text of the license may be found at\r
@@ -1197,8 +1197,8 @@ EslIp4VerifyLocalIpAddress (
   )\r
 {\r
   UINTN DataSize;\r
-  EFI_IP4_IPCONFIG_DATA * pIpConfigData;\r
-  EFI_IP4_CONFIG_PROTOCOL * pIpConfigProtocol;\r
+  EFI_IP4_CONFIG2_INTERFACE_INFO * pIfInfo;\r
+  EFI_IP4_CONFIG2_PROTOCOL * pIpConfig2Protocol;\r
   ESL_SERVICE * pService;\r
   EFI_STATUS Status;\r
 \r
@@ -1207,7 +1207,7 @@ EslIp4VerifyLocalIpAddress (
   //\r
   //  Use break instead of goto\r
   //\r
-  pIpConfigData = NULL;\r
+  pIfInfo = NULL;\r
   for ( ; ; ) {\r
     //\r
     //  Determine if the IP address is specified\r
@@ -1235,12 +1235,14 @@ EslIp4VerifyLocalIpAddress (
     //  Open the configuration protocol\r
     //\r
     pService = pPort->pService;\r
-    Status = gBS->OpenProtocol ( pService->Controller,\r
-                                 &gEfiIp4ConfigProtocolGuid,\r
-                                 (VOID **)&pIpConfigProtocol,\r
-                                 NULL,\r
-                                 NULL,\r
-                                 EFI_OPEN_PROTOCOL_GET_PROTOCOL );\r
+    Status = gBS->OpenProtocol ( \r
+                    pService->Controller,\r
+                    &gEfiIp4Config2ProtocolGuid,\r
+                    (VOID **)&pIpConfig2Protocol,\r
+                    NULL,\r
+                    NULL,\r
+                    EFI_OPEN_PROTOCOL_GET_PROTOCOL \r
+                    );\r
     if ( EFI_ERROR ( Status )) {\r
       DEBUG (( DEBUG_ERROR,\r
                 "ERROR - IP Configuration Protocol not available, Status: %r\r\n",\r
@@ -1249,39 +1251,45 @@ EslIp4VerifyLocalIpAddress (
     }\r
 \r
     //\r
-    //  Get the IP configuration data size\r
+    // Get the interface information size.\r
     //\r
     DataSize = 0;\r
-    Status = pIpConfigProtocol->GetData ( pIpConfigProtocol,\r
-                                          &DataSize,\r
-                                          NULL );\r
+    Status = pIpConfig2Protocol->GetData ( \r
+                                   pIpConfig2Protocol,\r
+                                   Ip4Config2DataTypeInterfaceInfo,\r
+                                   &DataSize,\r
+                                   NULL\r
+                                   );\r
     if ( EFI_BUFFER_TOO_SMALL != Status ) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Failed to get IP Configuration data size, Status: %r\r\n",\r
+                "ERROR - Failed to get the interface information size, Status: %r\r\n",\r
                 Status ));\r
       break;\r
     }\r
 \r
     //\r
-    //  Allocate the configuration data buffer\r
+    //  Allocate the interface information buffer\r
     //\r
-    pIpConfigData = AllocatePool ( DataSize );\r
-    if ( NULL == pIpConfigData ) {\r
+    pIfInfo = AllocatePool ( DataSize );\r
+    if ( NULL == pIfInfo ) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Not enough memory to allocate IP Configuration data!\r\n" ));\r
+                "ERROR - Not enough memory to allocate the interface information buffer!\r\n" ));\r
       Status = EFI_OUT_OF_RESOURCES;\r
       break;\r
     }\r
 \r
     //\r
-    //  Get the IP configuration\r
+    // Get the interface info.\r
     //\r
-    Status = pIpConfigProtocol->GetData ( pIpConfigProtocol,\r
-                                          &DataSize,\r
-                                          pIpConfigData );\r
+    Status = pIpConfig2Protocol->GetData ( \r
+                                  pIpConfig2Protocol,\r
+                                  Ip4Config2DataTypeInterfaceInfo,\r
+                                  &DataSize,\r
+                                  pIfInfo\r
+                                  );\r
     if ( EFI_ERROR ( Status )) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Failed to return IP Configuration data, Status: %r\r\n",\r
+                "ERROR - Failed to return the interface info, Status: %r\r\n",\r
                 Status ));\r
       break;\r
     }\r
@@ -1291,19 +1299,19 @@ EslIp4VerifyLocalIpAddress (
     //\r
     DEBUG (( DEBUG_BIND,\r
               "Actual adapter IP address: %d.%d.%d.%d\r\n",\r
-              pIpConfigData->StationAddress.Addr [ 0 ],\r
-              pIpConfigData->StationAddress.Addr [ 1 ],\r
-              pIpConfigData->StationAddress.Addr [ 2 ],\r
-              pIpConfigData->StationAddress.Addr [ 3 ]));\r
+              pIfInfo->StationAddress.Addr [ 0 ],\r
+              pIfInfo->StationAddress.Addr [ 1 ],\r
+              pIfInfo->StationAddress.Addr [ 2 ],\r
+              pIfInfo->StationAddress.Addr [ 3 ]));\r
 \r
     //\r
     //  Assume the port is not configured\r
     //\r
     Status = EFI_SUCCESS;\r
-    if (( pConfigData->StationAddress.Addr [ 0 ] == pIpConfigData->StationAddress.Addr [ 0 ])\r
-      && ( pConfigData->StationAddress.Addr [ 1 ] == pIpConfigData->StationAddress.Addr [ 1 ])\r
-      && ( pConfigData->StationAddress.Addr [ 2 ] == pIpConfigData->StationAddress.Addr [ 2 ])\r
-      && ( pConfigData->StationAddress.Addr [ 3 ] == pIpConfigData->StationAddress.Addr [ 3 ])) {\r
+    if (( pConfigData->StationAddress.Addr [ 0 ] == pIfInfo->StationAddress.Addr [ 0 ])\r
+      && ( pConfigData->StationAddress.Addr [ 1 ] == pIfInfo->StationAddress.Addr [ 1 ])\r
+      && ( pConfigData->StationAddress.Addr [ 2 ] == pIfInfo->StationAddress.Addr [ 2 ])\r
+      && ( pConfigData->StationAddress.Addr [ 3 ] == pIfInfo->StationAddress.Addr [ 3 ])) {\r
       break;\r
     }\r
 \r
@@ -1317,8 +1325,8 @@ EslIp4VerifyLocalIpAddress (
   //\r
   //  Free the buffer if necessary\r
   //\r
-  if ( NULL != pIpConfigData ) {\r
-    FreePool ( pIpConfigData );\r
+  if ( NULL != pIfInfo ) {\r
+    FreePool ( pIfInfo );\r
   }\r
 \r
   //\r
index 943af946bce68fe70bdbeaff228be31ffdd5c99f..68477fba6e70122d173a2ffc918564a4a6432446 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Implement the TCP4 driver support for the socket layer.\r
 \r
-  Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials are licensed and made available\r
   under the terms and conditions of the BSD License which accompanies this\r
   distribution.  The full text of the license may be found at\r
@@ -2247,8 +2247,8 @@ EslTcp4VerifyLocalIpAddress (
 {\r
   UINTN DataSize;\r
   EFI_TCP4_ACCESS_POINT * pAccess;\r
-  EFI_IP4_IPCONFIG_DATA * pIpConfigData;\r
-  EFI_IP4_CONFIG_PROTOCOL * pIpConfigProtocol;\r
+  EFI_IP4_CONFIG2_INTERFACE_INFO * pIfInfo;\r
+  EFI_IP4_CONFIG2_PROTOCOL * pIpConfig2Protocol;\r
   ESL_SERVICE * pService;\r
   EFI_STATUS Status;\r
 \r
@@ -2257,7 +2257,7 @@ EslTcp4VerifyLocalIpAddress (
   //\r
   //  Use break instead of goto\r
   //\r
-  pIpConfigData = NULL;\r
+  pIfInfo = NULL;\r
   for ( ; ; ) {\r
     //\r
     //  Determine if the IP address is specified\r
@@ -2286,12 +2286,14 @@ EslTcp4VerifyLocalIpAddress (
     //  Open the configuration protocol\r
     //\r
     pService = pPort->pService;\r
-    Status = gBS->OpenProtocol ( pService->Controller,\r
-                                 &gEfiIp4ConfigProtocolGuid,\r
-                                 (VOID **)&pIpConfigProtocol,\r
-                                 NULL,\r
-                                 NULL,\r
-                                 EFI_OPEN_PROTOCOL_GET_PROTOCOL );\r
+    Status = gBS->OpenProtocol ( \r
+                    pService->Controller,\r
+                    &gEfiIp4Config2ProtocolGuid,\r
+                    (VOID **)&pIpConfig2Protocol,\r
+                    NULL,\r
+                    NULL,\r
+                    EFI_OPEN_PROTOCOL_GET_PROTOCOL \r
+                    );\r
     if ( EFI_ERROR ( Status )) {\r
       DEBUG (( DEBUG_ERROR,\r
                 "ERROR - IP Configuration Protocol not available, Status: %r\r\n",\r
@@ -2300,39 +2302,45 @@ EslTcp4VerifyLocalIpAddress (
     }\r
 \r
     //\r
-    //  Get the IP configuration data size\r
+    // Get the interface information size.\r
     //\r
     DataSize = 0;\r
-    Status = pIpConfigProtocol->GetData ( pIpConfigProtocol,\r
-                                          &DataSize,\r
-                                          NULL );\r
+    Status = pIpConfig2Protocol->GetData ( \r
+                                   pIpConfig2Protocol,\r
+                                   Ip4Config2DataTypeInterfaceInfo,\r
+                                   &DataSize,\r
+                                   NULL\r
+                                   );\r
     if ( EFI_BUFFER_TOO_SMALL != Status ) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Failed to get IP Configuration data size, Status: %r\r\n",\r
+                "ERROR - Failed to get the interface information size, Status: %r\r\n",\r
                 Status ));\r
       break;\r
     }\r
 \r
     //\r
-    //  Allocate the configuration data buffer\r
+    //  Allocate the interface information buffer\r
     //\r
-    pIpConfigData = AllocatePool ( DataSize );\r
-    if ( NULL == pIpConfigData ) {\r
+    pIfInfo = AllocatePool ( DataSize );\r
+    if ( NULL == pIfInfo ) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Not enough memory to allocate IP Configuration data!\r\n" ));\r
+                "ERROR - Not enough memory to allocate the interface information buffer!\r\n" ));\r
       Status = EFI_OUT_OF_RESOURCES;\r
       break;\r
     }\r
 \r
     //\r
-    //  Get the IP configuration\r
+    // Get the interface info.\r
     //\r
-    Status = pIpConfigProtocol->GetData ( pIpConfigProtocol,\r
-                                          &DataSize,\r
-                                          pIpConfigData );\r
+    Status = pIpConfig2Protocol->GetData ( \r
+                                  pIpConfig2Protocol,\r
+                                  Ip4Config2DataTypeInterfaceInfo,\r
+                                  &DataSize,\r
+                                  pIfInfo\r
+                                  );\r
     if ( EFI_ERROR ( Status )) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Failed to return IP Configuration data, Status: %r\r\n",\r
+                "ERROR - Failed to return the interface info, Status: %r\r\n",\r
                 Status ));\r
       break;\r
     }\r
@@ -2342,19 +2350,19 @@ EslTcp4VerifyLocalIpAddress (
     //\r
     DEBUG (( DEBUG_BIND,\r
               "Actual adapter IP address: %d.%d.%d.%d\r\n",\r
-              pIpConfigData->StationAddress.Addr [ 0 ],\r
-              pIpConfigData->StationAddress.Addr [ 1 ],\r
-              pIpConfigData->StationAddress.Addr [ 2 ],\r
-              pIpConfigData->StationAddress.Addr [ 3 ]));\r
+              pIfInfo->StationAddress.Addr [ 0 ],\r
+              pIfInfo->StationAddress.Addr [ 1 ],\r
+              pIfInfo->StationAddress.Addr [ 2 ],\r
+              pIfInfo->StationAddress.Addr [ 3 ]));\r
 \r
     //\r
     //  Assume the port is not configured\r
     //\r
     Status = EFI_SUCCESS;\r
-    if (( pAccess->StationAddress.Addr [ 0 ] == pIpConfigData->StationAddress.Addr [ 0 ])\r
-      && ( pAccess->StationAddress.Addr [ 1 ] == pIpConfigData->StationAddress.Addr [ 1 ])\r
-      && ( pAccess->StationAddress.Addr [ 2 ] == pIpConfigData->StationAddress.Addr [ 2 ])\r
-      && ( pAccess->StationAddress.Addr [ 3 ] == pIpConfigData->StationAddress.Addr [ 3 ])) {\r
+    if (( pAccess->StationAddress.Addr [ 0 ] == pIfInfo->StationAddress.Addr [ 0 ])\r
+      && ( pAccess->StationAddress.Addr [ 1 ] == pIfInfo->StationAddress.Addr [ 1 ])\r
+      && ( pAccess->StationAddress.Addr [ 2 ] == pIfInfo->StationAddress.Addr [ 2 ])\r
+      && ( pAccess->StationAddress.Addr [ 3 ] == pIfInfo->StationAddress.Addr [ 3 ])) {\r
       break;\r
     }\r
 \r
@@ -2368,8 +2376,8 @@ EslTcp4VerifyLocalIpAddress (
   //\r
   //  Free the buffer if necessary\r
   //\r
-  if ( NULL != pIpConfigData ) {\r
-    FreePool ( pIpConfigData );\r
+  if ( NULL != pIfInfo ) {\r
+    FreePool ( pIfInfo );\r
   }\r
 \r
   //\r
index 7fece750958e0048075a2179b1f639c2a9a08d6c..ef2f9e321b2d50f856009233e21ffcd733b6a1e6 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Implement the UDP4 driver support for the socket layer.\r
 \r
-  Copyright (c) 2011, Intel Corporation\r
+  Copyright (c) 2011 - 2015, 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
@@ -1049,8 +1049,8 @@ EslUdp4VerifyLocalIpAddress (
   )\r
 {\r
   UINTN DataSize;\r
-  EFI_IP4_IPCONFIG_DATA * pIpConfigData;\r
-  EFI_IP4_CONFIG_PROTOCOL * pIpConfigProtocol;\r
+  EFI_IP4_CONFIG2_INTERFACE_INFO * pIfInfo;\r
+  EFI_IP4_CONFIG2_PROTOCOL * pIpConfig2Protocol;\r
   ESL_SERVICE * pService;\r
   EFI_STATUS Status;\r
 \r
@@ -1059,7 +1059,7 @@ EslUdp4VerifyLocalIpAddress (
   //\r
   //  Use break instead of goto\r
   //\r
-  pIpConfigData = NULL;\r
+  pIfInfo = NULL;\r
   for ( ; ; ) {\r
     //\r
     //  Determine if the IP address is specified\r
@@ -1087,12 +1087,14 @@ EslUdp4VerifyLocalIpAddress (
     //  Open the configuration protocol\r
     //\r
     pService = pPort->pService;\r
-    Status = gBS->OpenProtocol ( pService->Controller,\r
-                                 &gEfiIp4ConfigProtocolGuid,\r
-                                 (VOID **)&pIpConfigProtocol,\r
-                                 NULL,\r
-                                 NULL,\r
-                                 EFI_OPEN_PROTOCOL_GET_PROTOCOL );\r
+    Status = gBS->OpenProtocol ( \r
+                    pService->Controller,\r
+                    &gEfiIp4Config2ProtocolGuid,\r
+                    (VOID **)&pIpConfig2Protocol,\r
+                    NULL,\r
+                    NULL,\r
+                    EFI_OPEN_PROTOCOL_GET_PROTOCOL \r
+                    );\r
     if ( EFI_ERROR ( Status )) {\r
       DEBUG (( DEBUG_ERROR,\r
                 "ERROR - IP Configuration Protocol not available, Status: %r\r\n",\r
@@ -1101,39 +1103,45 @@ EslUdp4VerifyLocalIpAddress (
     }\r
 \r
     //\r
-    //  Get the IP configuration data size\r
+    //  Get the interface information size\r
     //\r
     DataSize = 0;\r
-    Status = pIpConfigProtocol->GetData ( pIpConfigProtocol,\r
-                                          &DataSize,\r
-                                          NULL );\r
+    Status = pIpConfig2Protocol->GetData ( \r
+                                   pIpConfig2Protocol,\r
+                                   Ip4Config2DataTypeInterfaceInfo,\r
+                                   &DataSize,\r
+                                   NULL\r
+                                   );\r
     if ( EFI_BUFFER_TOO_SMALL != Status ) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Failed to get IP Configuration data size, Status: %r\r\n",\r
+                "ERROR - Failed to get the interface information size, Status: %r\r\n",\r
                 Status ));\r
       break;\r
     }\r
 \r
     //\r
-    //  Allocate the configuration data buffer\r
+    //  Allocate the interface information buffer\r
     //\r
-    pIpConfigData = AllocatePool ( DataSize );\r
-    if ( NULL == pIpConfigData ) {\r
+    pIfInfo = AllocatePool ( DataSize );\r
+    if ( NULL == pIfInfo ) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Not enough memory to allocate IP Configuration data!\r\n" ));\r
+                "ERROR - Not enough memory to allocate the interface information buffer!\r\n" ));\r
       Status = EFI_OUT_OF_RESOURCES;\r
       break;\r
     }\r
 \r
     //\r
-    //  Get the IP configuration\r
+    // Get the interface info.\r
     //\r
-    Status = pIpConfigProtocol->GetData ( pIpConfigProtocol,\r
-                                          &DataSize,\r
-                                          pIpConfigData );\r
+    Status = pIpConfig2Protocol->GetData ( \r
+                                  pIpConfig2Protocol,\r
+                                  Ip4Config2DataTypeInterfaceInfo,\r
+                                  &DataSize,\r
+                                  pIfInfo\r
+                                  );\r
     if ( EFI_ERROR ( Status )) {\r
       DEBUG (( DEBUG_ERROR,\r
-                "ERROR - Failed to return IP Configuration data, Status: %r\r\n",\r
+                "ERROR - Failed to return the interface info, Status: %r\r\n",\r
                 Status ));\r
       break;\r
     }\r
@@ -1143,19 +1151,19 @@ EslUdp4VerifyLocalIpAddress (
     //\r
     DEBUG (( DEBUG_BIND,\r
               "Actual adapter IP address: %d.%d.%d.%d\r\n",\r
-              pIpConfigData->StationAddress.Addr [ 0 ],\r
-              pIpConfigData->StationAddress.Addr [ 1 ],\r
-              pIpConfigData->StationAddress.Addr [ 2 ],\r
-              pIpConfigData->StationAddress.Addr [ 3 ]));\r
+              pIfInfo->StationAddress.Addr [ 0 ],\r
+              pIfInfo->StationAddress.Addr [ 1 ],\r
+              pIfInfo->StationAddress.Addr [ 2 ],\r
+              pIfInfo->StationAddress.Addr [ 3 ]));\r
 \r
     //\r
     //  Assume the port is not configured\r
     //\r
     Status = EFI_SUCCESS;\r
-    if (( pConfigData->StationAddress.Addr [ 0 ] == pIpConfigData->StationAddress.Addr [ 0 ])\r
-      && ( pConfigData->StationAddress.Addr [ 1 ] == pIpConfigData->StationAddress.Addr [ 1 ])\r
-      && ( pConfigData->StationAddress.Addr [ 2 ] == pIpConfigData->StationAddress.Addr [ 2 ])\r
-      && ( pConfigData->StationAddress.Addr [ 3 ] == pIpConfigData->StationAddress.Addr [ 3 ])) {\r
+    if (( pConfigData->StationAddress.Addr [ 0 ] == pIfInfo->StationAddress.Addr [ 0 ])\r
+      && ( pConfigData->StationAddress.Addr [ 1 ] == pIfInfo->StationAddress.Addr [ 1 ])\r
+      && ( pConfigData->StationAddress.Addr [ 2 ] == pIfInfo->StationAddress.Addr [ 2 ])\r
+      && ( pConfigData->StationAddress.Addr [ 3 ] == pIfInfo->StationAddress.Addr [ 3 ])) {\r
       break;\r
     }\r
 \r
@@ -1169,8 +1177,8 @@ EslUdp4VerifyLocalIpAddress (
   //\r
   //  Free the buffer if necessary\r
   //\r
-  if ( NULL != pIpConfigData ) {\r
-    FreePool ( pIpConfigData );\r
+  if ( NULL != pIfInfo ) {\r
+    FreePool ( pIfInfo );\r
   }\r
 \r
   //\r
index efd6a61b1c6c8ae69a481963b481f340170ce2db..7618d02801ac1ca84a9befe938abf6eadf8e73ef 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Definitions for the EFI Socket layer library.\r
 \r
-  Copyright (c) 2011, Intel Corporation\r
+  Copyright (c) 2011 - 2015, 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
@@ -24,7 +24,7 @@
 #include <Library/UefiLib.h>\r
 \r
 #include <Protocol/EfiSocket.h>\r
-#include <Protocol/Ip4Config.h>\r
+#include <Protocol/Ip4Config2.h>\r
 #include <Protocol/Ip6Config.h>\r
 #include <Protocol/ServiceBinding.h>\r
 #include <Protocol/Tcp4.h>\r