]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Library/UefiShellNetwork2CommandsLib/Ping6.c
ShellPkg: Clean up source files
[mirror_edk2.git] / ShellPkg / Library / UefiShellNetwork2CommandsLib / Ping6.c
index 2961fd7e2c5bec8fdf3bda81d54cf3dd8e0798a2..27713cf12787a4a499aaf1725c3322c6e7de1da4 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   The implementation for Ping6 application.\r
 \r
-  Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2016 - 2018, Intel Corporation. All rights reserved.<BR>\r
 \r
   This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
@@ -50,7 +50,7 @@ typedef struct _PING6_PRIVATE_DATA {
   EFI_EVENT                   Timer;\r
 \r
   UINT32                      TimerPeriod;\r
-  UINT32                      RttTimerTick;   \r
+  UINT32                      RttTimerTick;\r
   EFI_EVENT                   RttTimer;\r
 \r
   EFI_STATUS                  Status;\r
@@ -199,7 +199,7 @@ Ping6InitRttTimer (
   if (Private->TimerPeriod == 0) {\r
     return EFI_ABORTED;\r
   }\r
-  \r
+\r
   Private->RttTimerTick = 0;\r
   Status = gBS->CreateEvent (\r
                   EVT_TIMER | EVT_NOTIFY_SIGNAL,\r
@@ -245,7 +245,7 @@ Ping6FreeRttTimer (
 \r
 /**\r
   Read the current time.\r
-  \r
+\r
   @param[in]    Private    The pointer to PING6_PRIVATE_DATA.\r
 \r
   @retval the current tick value.\r
@@ -474,6 +474,7 @@ ON_EXIT:
     Status = Private->Ip6->Receive (Private->Ip6, RxToken);\r
 \r
     if (EFI_ERROR (Status)) {\r
+      ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PING6_IP6_RECEIVE), gShellNetwork2HiiHandle, Status);\r
       Private->Status = EFI_ABORTED;\r
     }\r
   } else {\r
@@ -658,7 +659,11 @@ Ping6OnReceiveEchoReply (
 \r
   Private->RxToken.Status = EFI_NOT_READY;\r
 \r
-  return Private->Ip6->Receive (Private->Ip6, &Private->RxToken);\r
+  Status = Private->Ip6->Receive (Private->Ip6, &Private->RxToken);\r
+  if (EFI_ERROR (Status)) {\r
+    ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PING6_IP6_RECEIVE), gShellNetwork2HiiHandle, Status);\r
+  }\r
+  return Status;\r
 }\r
 \r
 /**\r
@@ -750,7 +755,7 @@ Ping6CreateIpInstance (
   UINTN                            HandleNum;\r
   EFI_HANDLE                       *HandleBuffer;\r
   BOOLEAN                          UnspecifiedSrc;\r
-  BOOLEAN                          MediaPresent;\r
+  EFI_STATUS                       MediaStatus;\r
   EFI_SERVICE_BINDING_PROTOCOL     *Ip6Sb;\r
   EFI_IP6_CONFIG_PROTOCOL          *Ip6Cfg;\r
   EFI_IP6_CONFIG_DATA              Ip6Config;\r
@@ -761,7 +766,7 @@ Ping6CreateIpInstance (
 \r
   HandleBuffer      = NULL;\r
   UnspecifiedSrc    = FALSE;\r
-  MediaPresent      = TRUE;\r
+  MediaStatus       = EFI_SUCCESS;\r
   Ip6Sb             = NULL;\r
   IfInfo            = NULL;\r
   IfInfoSize        = 0;\r
@@ -782,11 +787,11 @@ Ping6CreateIpInstance (
 \r
   if (NetIp6IsUnspecifiedAddr (&Private->SrcAddress)) {\r
     //\r
-    // SrcAddress is unspecified. So, both connected and configured interface will be automatic selected. \r
+    // SrcAddress is unspecified. So, both connected and configured interface will be automatic selected.\r
     //\r
     UnspecifiedSrc = TRUE;\r
   }\r
-  \r
+\r
   //\r
   // Source address is required when pinging a link-local address.\r
   //\r
@@ -795,7 +800,7 @@ Ping6CreateIpInstance (
     Status = EFI_INVALID_PARAMETER;\r
     goto ON_ERROR;\r
   }\r
-  \r
+\r
   //\r
   // For each ip6 protocol, check interface addresses list.\r
   //\r
@@ -809,8 +814,8 @@ Ping6CreateIpInstance (
       //\r
       // Check media.\r
       //\r
-      NetLibDetectMedia (HandleBuffer[HandleIndex], &MediaPresent);\r
-      if (!MediaPresent) {\r
+      NetLibDetectMediaWaitTimeout (HandleBuffer[HandleIndex], 0, &MediaStatus);\r
+      if (MediaStatus != EFI_SUCCESS) {\r
         //\r
         // Skip this one.\r
         //\r
@@ -894,7 +899,7 @@ Ping6CreateIpInstance (
         // Match a certain interface address.\r
         //\r
         break;\r
-      } \r
+      }\r
     }\r
 \r
     if (AddrIndex < IfInfo->AddressInfoCount) {\r