| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the mingw-w64 runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| #ifndef _INC_NDATTRIB |
| #define _INC_NDATTRIB |
| |
| #if (_WIN32_WINNT >= 0x0600) |
| |
| /* In ndhelper.idl |
| typedef struct tagDIAG_SOCKADDR { |
| USHORT family; |
| CHAR data[126]; |
| } DIAG_SOCKADDR, *PDIAG_SOCKADDR; |
| */ |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| typedef struct tagDIAG_SOCKADDR DIAG_SOCKADDR; |
| |
| typedef enum tagATTRIBUTE_TYPE { |
| AT_INVALID = 0, |
| AT_BOOLEAN, |
| AT_INT8, |
| AT_UINT8, |
| AT_INT16, |
| AT_UINT16, |
| AT_INT32, |
| AT_UINT32, |
| AT_INT64, |
| AT_UINT64, |
| AT_STRING, |
| AT_GUID, |
| AT_LIFE_TIME, |
| AT_SOCKADDR, |
| AT_OCTET_STRING |
| } ATTRIBUTE_TYPE; |
| |
| typedef enum tagREPAIR_SCOPE { |
| RS_SYSTEM = 0, |
| RS_USER = 1, |
| RS_APPLICATION = 2, |
| RS_PROCESS = 3 |
| } REPAIR_SCOPE; |
| |
| typedef enum tagREPAIR_RISK { |
| RR_NOROLLBACK = 0, |
| RR_ROLLBACK = 1, |
| RR_NORISK = 2 |
| } REPAIR_RISK; |
| |
| typedef enum tagUI_INFO_TYPE { |
| UIT_NONE = 0, |
| UIT_SHELL_COMMAND, |
| UIT_HELP_PANE, |
| UIT_DUI |
| } UI_INFO_TYPE; |
| |
| typedef enum tagPROBLEM_TYPE { |
| PT_LOW_HEALTH = 1, |
| PT_LOWER_HEALTH = 2, |
| PT_DOWN_STREAM_HEALTH = 4, |
| PT_HIGH_UTILIZATION = 8, |
| PT_HIGHER_UTILIZATION = 16, |
| PT_UP_STREAM_UTILIZATION = 32 |
| } PROBLEM_TYPE; |
| |
| typedef enum tagREPAIR_STATUS { |
| RS_NOT_IMPLEMENTED = 0, |
| RS_REPAIRED = 1, |
| RS_UNREPAIRED = 2, |
| RS_DEFERRED = 3, |
| RS_USER_ACTION = 4 |
| } REPAIR_STATUS; |
| |
| typedef struct tagLIFE_TIME { |
| FILETIME startTime; |
| FILETIME endTime; |
| } LIFE_TIME, *PLIFE_TIME; |
| |
| typedef struct tagOCTET_STRING { |
| DWORD dwLength; |
| BYTE *lpValue; |
| } OCTET_STRING, *POCTET_STRING; |
| |
| typedef struct tagUiInfo { |
| UI_INFO_TYPE type; |
| __C89_NAMELESS union { |
| LPWSTR pwzNull; |
| ShellCommandInfo ShellInfo; |
| LPWSTR pwzHelpURL; |
| LPWSTR pwzDui; |
| }; |
| } UiInfo, *PUiInfo; |
| |
| typedef struct tagRepairInfo { |
| GUID guid; |
| LPWSTR pwszClassName; |
| LPWSTR pwszDescription; |
| DWORD sidType; |
| __LONG32 cost; |
| ULONG flags; |
| REPAIR_SCOPE scope; |
| REPAIR_RISK risk; |
| UiInfo UiInfo; |
| } RepairInfo, *PRepairInfo; |
| |
| typedef struct tagShellCommandInfo { |
| LPWSTR pwszOperation; |
| LPWSTR pwszFile; |
| LPWSTR pwszParameters; |
| LPWSTR pwszDirectory; |
| ULONG nShowCmd; |
| } ShellCommandInfo, *PShellCommandInfo; |
| |
| typedef struct tagHELPER_ATTRIBUTE { |
| LPWSTR pwszName; |
| ATTRIBUTE_TYPE type; |
| __C89_NAMELESS union { |
| WINBOOL Boolean; |
| char Char; |
| byte Byte; |
| short Short; |
| WORD Word; |
| int Int; |
| DWORD DWord; |
| LONGLONG Int64; |
| ULONGLONG UInt64; |
| LPWSTR PWStr; |
| GUID Guid; |
| LIFE_TYPE LifeTime; |
| DIAG_SOCKADDR Address; |
| OCTET_STRING OctetString; |
| }; |
| } HELPER_ATTRIBUTE; |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| |
| #if (_WIN32_WINNT >= 0x0601) |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #define RCF_ISLEAF 0x1 |
| #define RCF_ISCONFIRMED 0x2 |
| #define RCF_ISTHIRDPARTY 0x4 |
| |
| typedef struct tagRepairInfoEx { |
| RepairInfo repair; |
| USHORT repairRank; |
| } RepairInfoEx, *PRepairInfoEx; |
| |
| typedef struct tagRootCauseInfo { |
| LPWSTR pwszDescription; |
| GUID rootCauseID; |
| DWORD rootCauseFlags; |
| GUID networkInterfaceID; |
| RepairInfoEx *pRepairs; |
| USHORT repairCount; |
| } RootCauseInfo; |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /*(_WIN32_WINNT >= 0x0601)*/ |
| |
| |
| #endif /*(_WIN32_WINNT >= 0x0600)*/ |
| |
| #endif /*_INC_NDATTRIB*/ |
| |