source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/ndattrib.h@ 1172

Last change on this file since 1172 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 3.5 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_NDATTRIB
7#define _INC_NDATTRIB
8
9#if (_WIN32_WINNT >= 0x0600)
10
11/* In ndhelper.idl
12typedef struct tagDIAG_SOCKADDR {
13 USHORT family;
14 CHAR data[126];
15} DIAG_SOCKADDR, *PDIAG_SOCKADDR;
16*/
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22typedef struct tagDIAG_SOCKADDR DIAG_SOCKADDR;
23
24typedef enum tagATTRIBUTE_TYPE {
25 AT_INVALID = 0,
26 AT_BOOLEAN,
27 AT_INT8,
28 AT_UINT8,
29 AT_INT16,
30 AT_UINT16,
31 AT_INT32,
32 AT_UINT32,
33 AT_INT64,
34 AT_UINT64,
35 AT_STRING,
36 AT_GUID,
37 AT_LIFE_TIME,
38 AT_SOCKADDR,
39 AT_OCTET_STRING
40} ATTRIBUTE_TYPE;
41
42typedef enum tagREPAIR_SCOPE {
43 RS_SYSTEM = 0,
44 RS_USER = 1,
45 RS_APPLICATION = 2,
46 RS_PROCESS = 3
47} REPAIR_SCOPE;
48
49typedef enum tagREPAIR_RISK {
50 RR_NOROLLBACK = 0,
51 RR_ROLLBACK = 1,
52 RR_NORISK = 2
53} REPAIR_RISK;
54
55typedef enum tagUI_INFO_TYPE {
56 UIT_NONE = 0,
57 UIT_SHELL_COMMAND,
58 UIT_HELP_PANE,
59 UIT_DUI
60} UI_INFO_TYPE;
61
62typedef enum tagPROBLEM_TYPE {
63 PT_LOW_HEALTH = 1,
64 PT_LOWER_HEALTH = 2,
65 PT_DOWN_STREAM_HEALTH = 4,
66 PT_HIGH_UTILIZATION = 8,
67 PT_HIGHER_UTILIZATION = 16,
68 PT_UP_STREAM_UTILIZATION = 32
69} PROBLEM_TYPE;
70
71typedef enum tagREPAIR_STATUS {
72 RS_NOT_IMPLEMENTED = 0,
73 RS_REPAIRED = 1,
74 RS_UNREPAIRED = 2,
75 RS_DEFERRED = 3,
76 RS_USER_ACTION = 4
77} REPAIR_STATUS;
78
79typedef struct tagLIFE_TIME {
80 FILETIME startTime;
81 FILETIME endTime;
82} LIFE_TIME, *PLIFE_TIME;
83
84typedef struct tagOCTET_STRING {
85 DWORD dwLength;
86 BYTE *lpValue;
87} OCTET_STRING, *POCTET_STRING;
88
89typedef struct tagUiInfo {
90 UI_INFO_TYPE type;
91 __C89_NAMELESS union {
92 LPWSTR pwzNull;
93 ShellCommandInfo ShellInfo;
94 LPWSTR pwzHelpURL;
95 LPWSTR pwzDui;
96 };
97} UiInfo, *PUiInfo;
98
99typedef struct tagRepairInfo {
100 GUID guid;
101 LPWSTR pwszClassName;
102 LPWSTR pwszDescription;
103 DWORD sidType;
104 __LONG32 cost;
105 ULONG flags;
106 REPAIR_SCOPE scope;
107 REPAIR_RISK risk;
108 UiInfo UiInfo;
109} RepairInfo, *PRepairInfo;
110
111typedef struct tagShellCommandInfo {
112 LPWSTR pwszOperation;
113 LPWSTR pwszFile;
114 LPWSTR pwszParameters;
115 LPWSTR pwszDirectory;
116 ULONG nShowCmd;
117} ShellCommandInfo, *PShellCommandInfo;
118
119typedef struct tagHELPER_ATTRIBUTE {
120 LPWSTR pwszName;
121 ATTRIBUTE_TYPE type;
122 __C89_NAMELESS union {
123 WINBOOL Boolean;
124 char Char;
125 byte Byte;
126 short Short;
127 WORD Word;
128 int Int;
129 DWORD DWord;
130 LONGLONG Int64;
131 ULONGLONG UInt64;
132 LPWSTR PWStr;
133 GUID Guid;
134 LIFE_TYPE LifeTime;
135 DIAG_SOCKADDR Address;
136 OCTET_STRING OctetString;
137 };
138} HELPER_ATTRIBUTE;
139
140#ifdef __cplusplus
141}
142#endif
143
144
145#if (_WIN32_WINNT >= 0x0601)
146
147#ifdef __cplusplus
148extern "C" {
149#endif
150
151#define RCF_ISLEAF 0x1
152#define RCF_ISCONFIRMED 0x2
153#define RCF_ISTHIRDPARTY 0x4
154
155typedef struct tagRepairInfoEx {
156 RepairInfo repair;
157 USHORT repairRank;
158} RepairInfoEx, *PRepairInfoEx;
159
160typedef struct tagRootCauseInfo {
161 LPWSTR pwszDescription;
162 GUID rootCauseID;
163 DWORD rootCauseFlags;
164 GUID networkInterfaceID;
165 RepairInfoEx *pRepairs;
166 USHORT repairCount;
167} RootCauseInfo;
168
169#ifdef __cplusplus
170}
171#endif
172
173#endif /*(_WIN32_WINNT >= 0x0601)*/
174
175
176#endif /*(_WIN32_WINNT >= 0x0600)*/
177
178#endif /*_INC_NDATTRIB*/
179
Note: See TracBrowser for help on using the repository browser.