2 The interface function declaration of shell application Ping6 (Ping for v6 series).
4 Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>
6 This program and the accompanying materials
7 are licensed and made available under the terms and conditions of the BSD License
8 which accompanies this distribution. The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php.
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 #define PING6_DEFAULT_TIMEOUT 5000
20 #define PING6_MAX_SEND_NUMBER 10000
21 #define PING6_MAX_BUFFER_SIZE 32768
22 #define PING6_ONE_SECOND 10000000
25 // String token ID of Ping6 command help message text.
27 GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStringPing6HelpToken
= STRING_TOKEN (STR_PING6_HELP
);
30 // A similar amount of time that passes in femtoseconds
31 // for each increment of TimerValue. It is for NT32 only.
33 #define NTTIMERPERIOD 358049
37 typedef struct _ICMP6_ECHO_REQUEST_REPLY
{
45 } ICMP6_ECHO_REQUEST_REPLY
;
49 typedef struct _PING6_ICMP6_TX_INFO
{
53 EFI_IP6_COMPLETION_TOKEN
*Token
;
54 } PING6_ICMP6_TX_INFO
;
56 typedef struct _PING6_PRIVATE_DATA
{
57 EFI_HANDLE ImageHandle
;
59 EFI_HANDLE Ip6ChildHandle
;
60 EFI_IP6_PROTOCOL
*Ip6
;
65 EFI_IP6_COMPLETION_TOKEN RxToken
;
73 EFI_IPv6_ADDRESS SrcAddress
;
74 EFI_IPv6_ADDRESS DstAddress
;
80 Reads and returns the current value of register.
81 In IA64, the register is the Interval Timer Vector (ITV).
82 In X86(IA32/X64), the register is the Time Stamp Counter (TSC)
84 @return The current value of the register.