]> git.proxmox.com Git - mirror_edk2.git/blame - NetworkPkg/Application/IfConfig6/IfConfig6.h
NetworkPkg: Support print help information using -? command.
[mirror_edk2.git] / NetworkPkg / Application / IfConfig6 / IfConfig6.h
CommitLineData
a3bcde70
HT
1/** @file\r
2 The interface function declaration of shell application IfConfig6.\r
3\r
be6cd654 4 Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>\r
a3bcde70
HT
5\r
6 This program and the accompanying materials\r
7 are licensed and made available under the terms and conditions of the BSD License\r
8 which accompanies this distribution. The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php.\r
10\r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13\r
14**/\r
15\r
16#ifndef _IFCONFIG6_H_\r
17#define _IFCONFIG6_H_\r
18\r
be6cd654
ZL
19//\r
20// String token ID of ifconfig6 command help message text.\r
21//\r
22GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStringIfconfig6HelpTokenId = STRING_TOKEN (STR_IFCONFIG6_HELP);\r
23\r
a3bcde70
HT
24enum {\r
25 IfConfig6OpList = 1,\r
26 IfConfig6OpSet = 2,\r
27 IfConfig6OpClear = 3\r
28};\r
29\r
30typedef enum {\r
31 VarCheckReserved = -1,\r
32 VarCheckOk = 0,\r
33 VarCheckDuplicate,\r
34 VarCheckConflict,\r
35 VarCheckUnknown,\r
36 VarCheckLackValue,\r
37 VarCheckOutOfMem\r
38} VAR_CHECK_CODE;\r
39\r
40typedef enum {\r
41 FlagTypeSingle = 0,\r
42 FlagTypeNeedVar,\r
43 FlagTypeNeedSet,\r
44 FlagTypeSkipUnknown\r
45} VAR_CHECK_FLAG_TYPE;\r
46\r
47#define MACADDRMAXSIZE 32\r
48#define PREFIXMAXLEN 16 \r
49\r
50typedef struct _IFCONFIG6_INTERFACE_CB {\r
51 EFI_HANDLE NicHandle;\r
52 LIST_ENTRY Link;\r
53 EFI_IP6_CONFIG_PROTOCOL *IfCfg;\r
54 EFI_IP6_CONFIG_INTERFACE_INFO *IfInfo; \r
55 EFI_IP6_CONFIG_INTERFACE_ID *IfId;\r
56 EFI_IP6_CONFIG_POLICY Policy;\r
57 EFI_IP6_CONFIG_DUP_ADDR_DETECT_TRANSMITS Xmits;\r
58 UINT32 DnsCnt;\r
59 EFI_IPv6_ADDRESS DnsAddr[1];\r
60} IFCONFIG6_INTERFACE_CB;\r
61\r
62typedef struct _ARG_LIST ARG_LIST;\r
63\r
64struct _ARG_LIST {\r
65 ARG_LIST *Next;\r
66 CHAR16 *Arg;\r
67};\r
68\r
69typedef struct _IFCONFIG6_PRIVATE_DATA {\r
70 EFI_HANDLE ImageHandle;\r
71 LIST_ENTRY IfList;\r
72\r
73 UINT32 OpCode;\r
74 CHAR16 *IfName;\r
75 ARG_LIST *VarArg;\r
76} IFCONFIG6_PRIVATE_DATA;\r
77\r
78typedef struct _VAR_CHECK_ITEM{\r
79 CHAR16 *FlagStr;\r
80 UINT32 FlagID;\r
81 UINT32 ConflictMask;\r
82 VAR_CHECK_FLAG_TYPE FlagType;\r
83} VAR_CHECK_ITEM;\r
84#endif\r