ShellPkg: Add error message if failed to place receive token in ping command.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
This commit is contained in:
Fu Siyuan
2017-11-15 12:08:42 +08:00
parent e2ef8b9a68
commit 5d8aa7eb6f
4 changed files with 16 additions and 4 deletions

View File

@ -2,7 +2,7 @@
The implementation for Ping shell command. The implementation for Ping shell command.
(C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR> (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR> Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.<BR>
(C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR> (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
This program and the accompanying materials This program and the accompanying materials
@ -629,6 +629,7 @@ ON_EXIT:
Status = Private->ProtocolPointers.Receive (Private->IpProtocol, &Private->RxToken); Status = Private->ProtocolPointers.Receive (Private->IpProtocol, &Private->RxToken);
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PING_RECEIVE), gShellNetwork1HiiHandle, Status);
Private->Status = EFI_ABORTED; Private->Status = EFI_ABORTED;
} }
} else { } else {
@ -828,7 +829,11 @@ Ping6ReceiveEchoReply (
Private->RxToken.Status = EFI_NOT_READY; Private->RxToken.Status = EFI_NOT_READY;
return (Private->ProtocolPointers.Receive (Private->IpProtocol, &Private->RxToken)); Status = Private->ProtocolPointers.Receive (Private->IpProtocol, &Private->RxToken);
if (EFI_ERROR (Status)) {
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PING_RECEIVE), gShellNetwork1HiiHandle, Status);
}
return Status;
} }
/** /**

View File

@ -50,6 +50,7 @@
#string STR_PING_CONFIG #language en-US "Config %r\r\n" #string STR_PING_CONFIG #language en-US "Config %r\r\n"
#string STR_PING_GETMODE #language en-US "GetModeData %r\r\n" #string STR_PING_GETMODE #language en-US "GetModeData %r\r\n"
#string STR_PING_GETDATA #language en-US "GetData %r\r\n" #string STR_PING_GETDATA #language en-US "GetData %r\r\n"
#string STR_PING_RECEIVE #language en-US "Receive %r\r\n"
#string STR_PING_SEND_REQUEST #language en-US "Echo request sequence %d did not complete successfully.\r\n" #string STR_PING_SEND_REQUEST #language en-US "Echo request sequence %d did not complete successfully.\r\n"
#string STR_PING_NOSOURCE_INDO #language en-US "There are no sources in %s's multicast domain.\r\n" #string STR_PING_NOSOURCE_INDO #language en-US "There are no sources in %s's multicast domain.\r\n"
#string STR_PING_NETWORK_ERROR #language en-US "%H%s%N: Network function failed with %r\r\n" #string STR_PING_NETWORK_ERROR #language en-US "%H%s%N: Network function failed with %r\r\n"

View File

@ -1,7 +1,7 @@
/** @file /** @file
The implementation for Ping6 application. The implementation for Ping6 application.
Copyright (c) 2016, Intel Corporation. All rights reserved.<BR> Copyright (c) 2016 - 2017, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
@ -474,6 +474,7 @@ ON_EXIT:
Status = Private->Ip6->Receive (Private->Ip6, RxToken); Status = Private->Ip6->Receive (Private->Ip6, RxToken);
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PING6_IP6_RECEIVE), gShellNetwork2HiiHandle, Status);
Private->Status = EFI_ABORTED; Private->Status = EFI_ABORTED;
} }
} else { } else {
@ -658,7 +659,11 @@ Ping6OnReceiveEchoReply (
Private->RxToken.Status = EFI_NOT_READY; Private->RxToken.Status = EFI_NOT_READY;
return Private->Ip6->Receive (Private->Ip6, &Private->RxToken); Status = Private->Ip6->Receive (Private->Ip6, &Private->RxToken);
if (EFI_ERROR (Status)) {
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PING6_IP6_RECEIVE), gShellNetwork2HiiHandle, Status);
}
return Status;
} }
/** /**

View File

@ -33,6 +33,7 @@
#string STR_PING6_INVALID_BUFFER_SIZE #language en-US "%Ping6: Invalid buffer size, %s\r\n" #string STR_PING6_INVALID_BUFFER_SIZE #language en-US "%Ping6: Invalid buffer size, %s\r\n"
#string STR_PING6_INVALID_SOURCE #language en-US "%Ping6: Require source interface option\r\n" #string STR_PING6_INVALID_SOURCE #language en-US "%Ping6: Require source interface option\r\n"
#string STR_PING6_IP6_CONFIG #language en-US "%Ping6: The process of Ip6 Configure %r\r\n" #string STR_PING6_IP6_CONFIG #language en-US "%Ping6: The process of Ip6 Configure %r\r\n"
#string STR_PING6_IP6_RECEIVE #language en-US "%Ping6: Place the receive token %r\r\n"
#string STR_PING6_IP6CFG_GETDATA #language en-US "%Ping6: Get data of the interface information %r\r\n" #string STR_PING6_IP6CFG_GETDATA #language en-US "%Ping6: Get data of the interface information %r\r\n"
#string STR_PING6_SEND_REQUEST #language en-US "Echo request sequence %d fails.\r\n" #string STR_PING6_SEND_REQUEST #language en-US "Echo request sequence %d fails.\r\n"
#string STR_PING6_CONFIGD_NIC_NF #language en-US "%Ping6: No configured interfaces were found.\r\n" #string STR_PING6_CONFIGD_NIC_NF #language en-US "%Ping6: No configured interfaces were found.\r\n"