]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/DnsDxe/DnsDhcp.c
NetworkPkg: Revert git 'eb213f2f' fix
[mirror_edk2.git] / NetworkPkg / DnsDxe / DnsDhcp.c
index 6b409ba5e3cc6ec545c1b35cdb4c779da7fb34c6..c4add702ea7ad6cda02e3a9262f93b967bb0ec6d 100644 (file)
@@ -14,152 +14,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 \r
 #include "DnsImpl.h"\r
 \r
-/**\r
-  The callback function for the timer event used to get map.\r
-\r
-  @param[in] Event    The event this function is registered to.\r
-  @param[in] Context  The context registered to the event.\r
-**/\r
-VOID\r
-EFIAPI\r
-TimeoutToGetMap (\r
-  IN EFI_EVENT      Event,\r
-  IN VOID           *Context\r
-  )\r
-{\r
-  *((BOOLEAN *) Context) = TRUE;\r
-  return ;\r
-}\r
-\r
-/**\r
-  Create an IP child, use it to start the auto configuration, then destroy it.\r
-\r
-  @param[in] Controller       The controller which has the service installed.\r
-  @param[in] Image            The image handle used to open service.\r
-\r
-  @retval EFI_SUCCESS         The configuration is done.\r
-  @retval Others              Other errors as indicated.\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-DnsStartIp4(\r
-  IN  EFI_HANDLE            Controller,\r
-  IN  EFI_HANDLE            Image\r
-  )\r
-{\r
-  EFI_IP4_PROTOCOL              *Ip4;\r
-  EFI_HANDLE                    Ip4Handle;\r
-  EFI_EVENT                     TimerToGetMap;\r
-  EFI_IP4_CONFIG_DATA           Ip4ConfigData;\r
-  EFI_IP4_MODE_DATA             Ip4Mode;\r
-  EFI_STATUS                    Status;\r
-\r
-  BOOLEAN                       Timeout;\r
-\r
-  //\r
-  // Get the Ip4ServiceBinding Protocol\r
-  //\r
-  Ip4Handle     = NULL;\r
-  Ip4           = NULL;\r
-  TimerToGetMap = NULL;\r
-  \r
-  Timeout      = FALSE;\r
-\r
-  Status = NetLibCreateServiceChild (\r
-             Controller,\r
-             Image,\r
-             &gEfiIp4ServiceBindingProtocolGuid,\r
-             &Ip4Handle\r
-             );\r
-\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  Status = gBS->OpenProtocol (\r
-                 Ip4Handle,\r
-                 &gEfiIp4ProtocolGuid,\r
-                 (VOID **) &Ip4,\r
-                 Controller,\r
-                 Image,\r
-                 EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-                 );\r
-\r
-  if (EFI_ERROR (Status)) {\r
-    goto ON_EXIT;\r
-  }\r
-\r
-  Ip4ConfigData.DefaultProtocol          = EFI_IP_PROTO_ICMP;\r
-  Ip4ConfigData.AcceptAnyProtocol        = FALSE;\r
-  Ip4ConfigData.AcceptIcmpErrors         = FALSE;\r
-  Ip4ConfigData.AcceptBroadcast          = FALSE;\r
-  Ip4ConfigData.AcceptPromiscuous        = FALSE;\r
-  Ip4ConfigData.UseDefaultAddress        = TRUE;\r
-  ZeroMem (&Ip4ConfigData.StationAddress, sizeof (EFI_IPv4_ADDRESS));\r
-  ZeroMem (&Ip4ConfigData.SubnetMask, sizeof (EFI_IPv4_ADDRESS));\r
-  Ip4ConfigData.TypeOfService            = 0;\r
-  Ip4ConfigData.TimeToLive               = 1;\r
-  Ip4ConfigData.DoNotFragment            = FALSE;\r
-  Ip4ConfigData.RawData                  = FALSE;\r
-  Ip4ConfigData.ReceiveTimeout           = 0;\r
-  Ip4ConfigData.TransmitTimeout          = 0;\r
-\r
-  Status = Ip4->Configure (Ip4, &Ip4ConfigData);\r
-\r
-  if (Status == EFI_NO_MAPPING) {\r
-    Status  = gBS->CreateEvent (\r
-                    EVT_NOTIFY_SIGNAL | EVT_TIMER,\r
-                    TPL_CALLBACK,\r
-                    TimeoutToGetMap,\r
-                    &Timeout,\r
-                    &TimerToGetMap\r
-                    );\r
-    \r
-    if (EFI_ERROR (Status)) {\r
-      goto ON_EXIT;\r
-    }\r
-    \r
-    Status = gBS->SetTimer (\r
-                   TimerToGetMap,\r
-                   TimerRelative,\r
-                   MultU64x32 (10000000, 5)\r
-                   );\r
-    \r
-    if (EFI_ERROR (Status)) {\r
-      goto ON_EXIT;\r
-    }\r
-    \r
-    while (!Timeout) {\r
-      Ip4->Poll (Ip4);\r
-  \r
-      if (!EFI_ERROR (Ip4->GetModeData (Ip4, &Ip4Mode, NULL, NULL)) && \r
-          Ip4Mode.IsConfigured) {       \r
-        break;\r
-      }\r
-    }\r
-\r
-    if (Timeout) {\r
-      Status = EFI_DEVICE_ERROR;\r
-    }\r
-  }\r
-  \r
-ON_EXIT: \r
-\r
-  if (TimerToGetMap != NULL) {\r
-    gBS->SetTimer (TimerToGetMap, TimerCancel, 0);\r
-    gBS->CloseEvent (TimerToGetMap);\r
-  }\r
-\r
-  NetLibDestroyServiceChild (\r
-    Controller,\r
-    Image,\r
-    &gEfiIp4ServiceBindingProtocolGuid,\r
-    Ip4Handle\r
-    );\r
-  \r
-  return Status;\r
-}\r
-\r
 /**\r
   This function initialize the DHCP4 message instance.\r
 \r
@@ -468,16 +322,6 @@ GetDns4ServerFromDhcp4 (
     return EFI_NO_MEDIA;\r
   }\r
 \r
-  //\r
-  // Start the auto configuration if UseDefaultSetting.\r
-  //\r
-  if (Instance->Dns4CfgData.UseDefaultSetting) {\r
-    Status = DnsStartIp4 (Controller, Image);\r
-    if (EFI_ERROR(Status)) {\r
-      return Status;\r
-    }\r
-  }\r
-  \r
   //\r
   // Create a Mnp child instance, get the protocol and config for it.\r
   //\r