ShellPkg: Update ping command options to sync with Spec

This patch is used to update ping command options to sync
with shell2.2 Spec.
Considering the backward compatible issue, the patch keeps
‘-_s’ command option unchanged, only add the new option '-s'
and make the old option '-_s' function same as new one.

Cc: Ye Ting <ting.ye@intel.com>
Cc: Fu Siyuan <siyuan.fu@intel.com>
Cc: Jaben Carsey <jaben.carsey@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
This commit is contained in:
Jiaxin Wu 2016-04-12 11:57:54 +08:00
parent a8c39ba298
commit 0b42d7d8a3
2 changed files with 19 additions and 15 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 - 2015, Intel Corporation. All rights reserved.<BR> Copyright (c) 2009 - 2016, 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
@ -197,6 +197,10 @@ STATIC CONST SHELL_PARAM_ITEM PingParamList[] = {
L"-n", L"-n",
TypeValue TypeValue
}, },
{
L"-s",
TypeValue
},
{ {
L"-_s", L"-_s",
TypeValue TypeValue
@ -1512,7 +1516,11 @@ ShellCommandRunPing (
// //
// Parse the paramter of source ip address. // Parse the paramter of source ip address.
// //
ValueStr = ShellCommandLineGetValue (ParamPackage, L"-_s"); ValueStr = ShellCommandLineGetValue (ParamPackage, L"-s");
if (ValueStr == NULL) {
ValueStr = ShellCommandLineGetValue (ParamPackage, L"-_s");
}
if (ValueStr != NULL) { if (ValueStr != NULL) {
mSrcString = ValueStr; mSrcString = ValueStr;
if (IpChoice == PING_IP_CHOICE_IP6) { if (IpChoice == PING_IP_CHOICE_IP6) {

View File

@ -1,7 +1,7 @@
// /** // /**
// //
// (C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P.<BR> // (C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P.<BR>
// Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved. <BR> // Copyright (c) 2010 - 2016, 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
// which accompanies this distribution. The full text of the license may be found at // which accompanies this distribution. The full text of the license may be found at
@ -88,24 +88,23 @@
#string STR_IFCONFIG_INFO_IP_ADDR_BODY #language en-US "%d.%d.%d.%d\n" #string STR_IFCONFIG_INFO_IP_ADDR_BODY #language en-US "%d.%d.%d.%d\n"
#string STR_GET_HELP_PING #language en-US "" #string STR_GET_HELP_PING #language en-US ""
".TH ping 0 "Pings the target host with an IPv4 or IPv6 stack."\r\n" ".TH ping 0 "Ping the target host with an IPv4 stack."\r\n"
".SH NAME\r\n" ".SH NAME\r\n"
"Pings the target host with an IPv4 or IPv6 stack.\r\n" "Ping the target host with an IPv4 stack.\r\n"
".SH SYNOPSIS\r\n" ".SH SYNOPSIS\r\n"
" \r\n" " \r\n"
"PING [-_ip6] [-_s SourceIp] [-n count] [-l size] TargetIp\r\n" "PING [-n count] [-l size] [-s SourceIp] TargetIp\r\n"
".SH OPTIONS\r\n" ".SH OPTIONS\r\n"
" \r\n" " \r\n"
" -n - Specifies the number of echo request datagrams to be sent.\r\n" " -n - Specifies the number of echo request datagrams to be sent.\r\n"
" -l - Specifies the size of the data buffer in the echo request datagram.\r\n" " -l - Specifies the size of the data buffer in the echo request datagram.\r\n"
" -_ip6 - Specifies the IPv6 stack usage mode (Default is IPv4 stack).\r\n" " -s - Specifies the source adapter as IPv4 address.\r\n"
" -_s - Specifies the source adapter as IPv4 or IPv6 address.\r\n" " SourceIp - Specifies the IPv4 address of the source machine.\r\n"
" SourceIp - Specifies the IPv4 or IPv6 address of the source machine.\r\n" " TargetIp - Specifies the IPv4 address of the target machine.\r\n"
" TargetIp - Specifies the IPv4 or IPv6 address of the target machine.\r\n"
".SH DESCRIPTION\r\n" ".SH DESCRIPTION\r\n"
" \r\n" " \r\n"
"NOTES:\r\n" "NOTES:\r\n"
" 1. This command uses the ICMPv4 or ICMPv6 ECHO_REQUEST datagram to elicit an\r\n" " 1. This command uses the ICMPv4 ECHO_REQUEST datagram to elicit an\r\n"
" ECHO_REPLY from a host.\r\n" " ECHO_REPLY from a host.\r\n"
".SH EXAMPLES\r\n" ".SH EXAMPLES\r\n"
" \r\n" " \r\n"
@ -117,10 +116,7 @@
" fs0:\> ping -n 20 202.120.100.1\r\n" " fs0:\> ping -n 20 202.120.100.1\r\n"
" \r\n" " \r\n"
" * To ping the target host by specifying the source adapter as IPv4 address:\r\n" " * To ping the target host by specifying the source adapter as IPv4 address:\r\n"
" fs0:\> ping -_s 202.120.100.12 202.120.100.1\r\n" " fs0:\> ping -s 202.120.100.12 202.120.100.1\r\n"
" \r\n"
" * To ping the target host by specifying the IPv6 stack usage mode:\r\n"
" fs0:\> ping -_ip6 2000:bbbb::8\r\n"
".SH RETURNVALUES\r\n" ".SH RETURNVALUES\r\n"
" \r\n" " \r\n"
"RETURN VALUES:\r\n" "RETURN VALUES:\r\n"