Revision: 17874
          http://sourceforge.net/p/edk2/code/17874
Author:   jiaxinwu
Date:     2015-07-08 03:09:28 +0000 (Wed, 08 Jul 2015)
Log Message:
-----------
NetworkPkg: Remove IpSecDxe and Ip4Config Protocol dependency.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: jiaxinwu <[email protected]>
Reviewed-by: Ye Ting <[email protected]>

Modified Paths:
--------------
    trunk/edk2/NetworkPkg/IpSecDxe/IkeCommon.h
    trunk/edk2/NetworkPkg/IpSecDxe/IkeService.c
    trunk/edk2/NetworkPkg/IpSecDxe/IpSecDxe.inf

Modified: trunk/edk2/NetworkPkg/IpSecDxe/IkeCommon.h
===================================================================
--- trunk/edk2/NetworkPkg/IpSecDxe/IkeCommon.h  2015-07-08 03:08:05 UTC (rev 
17873)
+++ trunk/edk2/NetworkPkg/IpSecDxe/IkeCommon.h  2015-07-08 03:09:28 UTC (rev 
17874)
@@ -18,7 +18,7 @@
 
 #include <Protocol/Udp4.h>
 #include <Protocol/Udp6.h>
-#include <Protocol/Ip4Config.h>
+#include <Protocol/Ip4Config2.h>
  
 #include <Library/BaseLib.h>
 #include <Library/BaseMemoryLib.h>

Modified: trunk/edk2/NetworkPkg/IpSecDxe/IkeService.c
===================================================================
--- trunk/edk2/NetworkPkg/IpSecDxe/IkeService.c 2015-07-08 03:08:05 UTC (rev 
17873)
+++ trunk/edk2/NetworkPkg/IpSecDxe/IkeService.c 2015-07-08 03:09:28 UTC (rev 
17874)
@@ -1,7 +1,7 @@
 /** @file
   Provide IPsec Key Exchange (IKE) service general interfaces.
 
-  Copyright (c) 2010 - 2013, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR>
 
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD 
License
@@ -212,15 +212,15 @@
   IN EFI_IP_ADDRESS            *RemoteIp
   )
 {
-  EFI_STATUS              Status;
-  EFI_IP4_CONFIG_PROTOCOL *Ip4Cfg;
-  EFI_IP4_IPCONFIG_DATA   *Ip4CfgData;
-  UINTN                   BufSize;
-  EFI_IP6_MODE_DATA       Ip6ModeData;
-  EFI_UDP6_PROTOCOL       *Udp6;
+  EFI_STATUS                       Status;
+  EFI_IP4_CONFIG2_PROTOCOL         *Ip4Cfg2;
+  EFI_IP4_CONFIG2_INTERFACE_INFO   *IfInfo;
+  UINTN                            BufSize;
+  EFI_IP6_MODE_DATA                Ip6ModeData;
+  EFI_UDP6_PROTOCOL                *Udp6;
 
   Status      = EFI_SUCCESS;
-  Ip4CfgData  = NULL;
+  IfInfo      = NULL;
   BufSize     = 0;
 
   //
@@ -236,35 +236,52 @@
     //
     Status = gBS->HandleProtocol (
                     UdpService->NicHandle,
-                    &gEfiIp4ConfigProtocolGuid,
-                    (VOID **) &Ip4Cfg
+                    &gEfiIp4Config2ProtocolGuid,
+                    (VOID **) &Ip4Cfg2
                     );
 
     if (EFI_ERROR (Status)) {
       goto ON_EXIT;
     }
 
-    Status = Ip4Cfg->GetData (Ip4Cfg, &BufSize, NULL);
+    //
+    // Get the interface information size.
+    //
+    Status = Ip4Cfg2->GetData (
+                       Ip4Cfg2,
+                       Ip4Config2DataTypeInterfaceInfo,
+                       &BufSize,
+                       NULL
+                       );
 
     if (EFI_ERROR (Status) && Status != EFI_BUFFER_TOO_SMALL) {
       goto ON_EXIT;
     }
 
-    Ip4CfgData = AllocateZeroPool (BufSize);
+    IfInfo = AllocateZeroPool (BufSize);
 
-    if (Ip4CfgData == NULL) {
+    if (IfInfo == NULL) {
       Status = EFI_OUT_OF_RESOURCES;
       goto ON_EXIT;
     }
 
-    Status = Ip4Cfg->GetData (Ip4Cfg, &BufSize, Ip4CfgData);
+    //
+    // Get the interface info.
+    //
+    Status = Ip4Cfg2->GetData (
+                       Ip4Cfg2,
+                       Ip4Config2DataTypeInterfaceInfo,
+                       &BufSize,
+                       IfInfo
+                       );
+    
     if (EFI_ERROR (Status)) {
       goto ON_EXIT;
     }
 
     CopyMem (
       &UdpService->DefaultAddress.v4,
-      &Ip4CfgData->StationAddress,
+      &IfInfo->StationAddress,
       sizeof (EFI_IPv4_ADDRESS)
       );
 
@@ -331,8 +348,8 @@
   UdpService->IsConfigured = TRUE;
 
 ON_EXIT:
-  if (Ip4CfgData != NULL) {
-    FreePool (Ip4CfgData);
+  if (IfInfo != NULL) {
+    FreePool (IfInfo);
   }
 
   return Status;

Modified: trunk/edk2/NetworkPkg/IpSecDxe/IpSecDxe.inf
===================================================================
--- trunk/edk2/NetworkPkg/IpSecDxe/IpSecDxe.inf 2015-07-08 03:08:05 UTC (rev 
17873)
+++ trunk/edk2/NetworkPkg/IpSecDxe/IpSecDxe.inf 2015-07-08 03:09:28 UTC (rev 
17874)
@@ -6,7 +6,7 @@
 #  packet-level security for IP datagram. It provides the IP packet protection 
via
 #  ESP and it supports IKEv2 for key negotiation.
 #
-#  Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
+#  Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
 #
 #  This program and the accompanying materials
 #  are licensed and made available under the terms and conditions of the BSD 
License
@@ -89,7 +89,7 @@
   PcdLib
   
 [Protocols]
-  gEfiIp4ConfigProtocolGuid                     ## SOMETIMES_CONSUMES
+  gEfiIp4Config2ProtocolGuid                    ## SOMETIMES_CONSUMES
   gEfiUdp4ServiceBindingProtocolGuid            ## SOMETIMES_CONSUMES  
   gEfiUdp4ProtocolGuid                          ## SOMETIMES_CONSUMES
   gEfiUdp6ServiceBindingProtocolGuid            ## SOMETIMES_CONSUMES  


------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to