'd6cf1af9' is associated with '3d0a49ad' commit. So, this patch is
used to respond the revert for '3d0a49ad' to adapt the Ipv4 config 
policy update.

Cc: Subramanian Sriram <srira...@hpe.com>
Cc: El-Haj-Mahmoud Samer <samer.el-haj-mahm...@hpe.com>
Cc: Ye Ting <ting...@intel.com>
Cc: Fu Siyuan <siyuan...@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiaxin Wu <jiaxin...@intel.com>
---
 .../UefiShellNetwork1CommandsLib/Ifconfig.c        | 119 +++------------------
 1 file changed, 15 insertions(+), 104 deletions(-)

diff --git a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c 
b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c
index f8dbc88..f02281d 100644
--- a/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c
+++ b/ShellPkg/Library/UefiShellNetwork1CommandsLib/Ifconfig.c
@@ -1,10 +1,10 @@
 /** @file
   The implementation for Shell command ifconfig based on IP4Config2 protocol.
 
   (C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P.<BR>
-  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2006 - 2016, 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
   which accompanies this distribution.  The full text of the license may be 
found at
   http://opensource.org/licenses/bsd-license.php.
@@ -271,90 +271,10 @@ IfConfigManualAddressNotify (
   )
 {
   *((BOOLEAN *) Context) = TRUE;
 }
 
-
-/**
-  Create an IP child, use it to start the auto configuration, then destroy it.
-
-  @param[in] Controller       The controller which has the service installed.
-  @param[in] Image            The image handle used to open service.
-
-  @retval EFI_SUCCESS         The configuration is done.
-**/
-EFI_STATUS
-EFIAPI
-IfConfigStartIp4(
-  IN  EFI_HANDLE            Controller,
-  IN  EFI_HANDLE            Image
-  )
-{
-  EFI_IP4_PROTOCOL              *Ip4;
-  EFI_HANDLE                    Ip4Handle;
-  EFI_IP4_CONFIG_DATA           Ip4ConfigData;
-  EFI_STATUS                    Status;
-
-  //
-  // Get the Ip4ServiceBinding Protocol
-  //
-  Ip4Handle     = NULL;
-  Ip4           = NULL;
-
-  Status = NetLibCreateServiceChild (
-             Controller,
-             Image,
-             &gEfiIp4ServiceBindingProtocolGuid,
-             &Ip4Handle
-             );
-
-  if (EFI_ERROR (Status)) {
-    return Status;
-  }
-
-  Status = gBS->OpenProtocol (
-                 Ip4Handle,
-                 &gEfiIp4ProtocolGuid,
-                 (VOID **) &Ip4,
-                 Controller,
-                 Image,
-                 EFI_OPEN_PROTOCOL_GET_PROTOCOL
-                 );
-
-  if (EFI_ERROR (Status)) {
-    goto ON_EXIT;
-  }
-
-  Ip4ConfigData.DefaultProtocol          = EFI_IP_PROTO_ICMP;
-  Ip4ConfigData.AcceptAnyProtocol        = FALSE;
-  Ip4ConfigData.AcceptIcmpErrors         = FALSE;
-  Ip4ConfigData.AcceptBroadcast          = FALSE;
-  Ip4ConfigData.AcceptPromiscuous        = FALSE;
-  Ip4ConfigData.UseDefaultAddress        = TRUE;
-  ZeroMem (&Ip4ConfigData.StationAddress, sizeof (EFI_IPv4_ADDRESS));
-  ZeroMem (&Ip4ConfigData.SubnetMask, sizeof (EFI_IPv4_ADDRESS));
-  Ip4ConfigData.TypeOfService            = 0;
-  Ip4ConfigData.TimeToLive               = 1;
-  Ip4ConfigData.DoNotFragment            = FALSE;
-  Ip4ConfigData.RawData                  = FALSE;
-  Ip4ConfigData.ReceiveTimeout           = 0;
-  Ip4ConfigData.TransmitTimeout          = 0;
-
-  Ip4->Configure (Ip4, &Ip4ConfigData);
-  
-ON_EXIT: 
-  NetLibDestroyServiceChild (
-    Controller,
-    Image,
-    &gEfiIp4ServiceBindingProtocolGuid,
-    Ip4Handle
-    );
-  
-  return Status;
-}
-
-
 /**
   Print MAC address.
 
   @param[in]    Node    The pointer of MAC address buffer.
   @param[in]    Size    The size of MAC address buffer.
@@ -972,33 +892,24 @@ IfConfigSetInterfaceInfo (
 
     //
     // Process valid variables.
     //
     if (StrCmp(VarArg->Arg, L"dhcp") == 0) {
-      if (IfCb->Policy == Ip4Config2PolicyDhcp) {
-        Status = IfConfigStartIp4 (IfCb->NicHandle, gImageHandle);
-        if (EFI_ERROR(Status)) {
-          ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD), 
gShellNetwork1HiiHandle, L"ifconfig");
-          ShellStatus = SHELL_ACCESS_DENIED;
-          goto ON_EXIT;
-        }
-      } else {
-        //
-        // Set dhcp config policy
-        //
-        Policy = Ip4Config2PolicyDhcp;
-        Status = IfCb->IfCfg->SetData (
-                                IfCb->IfCfg,
-                                Ip4Config2DataTypePolicy,
-                                sizeof (EFI_IP4_CONFIG2_POLICY),
-                                &Policy
-                                );
-        if (EFI_ERROR(Status)) {
-          ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD), 
gShellNetwork1HiiHandle, L"ifconfig");
-          ShellStatus = SHELL_ACCESS_DENIED;
-          goto ON_EXIT;
-        }
+      //
+      // Set dhcp config policy
+      //
+      Policy = Ip4Config2PolicyDhcp;
+      Status = IfCb->IfCfg->SetData (
+                              IfCb->IfCfg,
+                              Ip4Config2DataTypePolicy,
+                              sizeof (EFI_IP4_CONFIG2_POLICY),
+                              &Policy
+                              );
+      if (EFI_ERROR(Status)) {
+        ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_ERR_AD), 
gShellNetwork1HiiHandle, L"ifconfig");
+        ShellStatus = SHELL_ACCESS_DENIED;
+        goto ON_EXIT;
       }
       
       VarArg= VarArg->Next;    
 
     } else if (StrCmp (VarArg->Arg, L"static") == 0) {
-- 
1.9.5.msysgit.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to