1 /*** Autogenerated by WIDL 6.4 from include/napprotocol.idl - Do not edit ***/ 2 3 #ifdef _WIN32 4 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 5 #define __REQUIRED_RPCNDR_H_VERSION__ 475 6 #endif 7 #include <rpc.h> 8 #include <rpcndr.h> 9 #endif 10 11 #ifndef COM_NO_WINDOWS_H 12 #include <windows.h> 13 #include <ole2.h> 14 #endif 15 16 #ifndef __napprotocol_h__ 17 #define __napprotocol_h__ 18 19 /* Forward declarations */ 20 21 #ifndef __INapSoHConstructor_FWD_DEFINED__ 22 #define __INapSoHConstructor_FWD_DEFINED__ 23 typedef interface INapSoHConstructor INapSoHConstructor; 24 #ifdef __cplusplus 25 interface INapSoHConstructor; 26 #endif /* __cplusplus */ 27 #endif 28 29 #ifndef __INapSoHProcessor_FWD_DEFINED__ 30 #define __INapSoHProcessor_FWD_DEFINED__ 31 typedef interface INapSoHProcessor INapSoHProcessor; 32 #ifdef __cplusplus 33 interface INapSoHProcessor; 34 #endif /* __cplusplus */ 35 #endif 36 37 /* Headers for imported files */ 38 39 #include <naptypes.h> 40 #include <unknwn.h> 41 42 #ifdef __cplusplus 43 extern "C" { 44 #endif 45 46 #include <winapifamily.h> 47 48 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 49 /***************************************************************************** 50 * INapSoHTypes interface (v0.0) 51 */ 52 #ifndef __INapSoHTypes_INTERFACE_DEFINED__ 53 #define __INapSoHTypes_INTERFACE_DEFINED__ 54 55 extern RPC_IF_HANDLE INapSoHTypes_v0_0_c_ifspec; 56 extern RPC_IF_HANDLE INapSoHTypes_v0_0_s_ifspec; 57 typedef enum tagSoHAttributeType { 58 sohAttributeTypeSystemHealthId = 2, 59 sohAttributeTypeIpv4FixupServers = 3, 60 sohAttributeTypeComplianceResultCodes = 4, 61 sohAttributeTypeTimeOfLastUpdate = 5, 62 sohAttributeTypeClientId = 6, 63 sohAttributeTypeVendorSpecific = 7, 64 sohAttributeTypeHealthClass = 8, 65 sohAttributeTypeSoftwareVersion = 9, 66 sohAttributeTypeProductName = 10, 67 sohAttributeTypeHealthClassStatus = 11, 68 sohAttributeTypeSoHGenerationTime = 12, 69 sohAttributeTypeErrorCodes = 13, 70 sohAttributeTypeFailureCategory = 14, 71 sohAttributeTypeIpv6FixupServers = 15, 72 sohAttributeTypeExtendedIsolationState = 16 73 } SoHAttributeType; 74 typedef enum tagHealthClassValue { 75 healthClassFirewall = 0, 76 healthClassPatchLevel = 1, 77 healthClassAntiVirus = 2, 78 healthClassCriticalUpdate = 3, 79 healthClassReserved = 128 80 } HealthClassValue; 81 typedef union tagSoHAttributeValue { 82 SystemHealthEntityId idVal; 83 struct tagIpv4Addresses { 84 UINT16 count; 85 Ipv4Address *addresses; 86 } v4AddressesVal; 87 struct tagIpv6Addresses { 88 UINT16 count; 89 Ipv6Address *addresses; 90 } v6AddressesVal; 91 ResultCodes codesVal; 92 FILETIME dateTimeVal; 93 struct tagVendorSpecific { 94 UINT32 vendorId; 95 UINT16 size; 96 BYTE *vendorSpecificData; 97 } vendorSpecificVal; 98 UINT8 uint8Val; 99 struct tagOctetString { 100 UINT16 size; 101 BYTE *data; 102 } octetStringVal; 103 } SoHAttributeValue; 104 105 #endif /* __INapSoHTypes_INTERFACE_DEFINED__ */ 106 107 /***************************************************************************** 108 * INapSoHConstructor interface 109 */ 110 #ifndef __INapSoHConstructor_INTERFACE_DEFINED__ 111 #define __INapSoHConstructor_INTERFACE_DEFINED__ 112 113 DEFINE_GUID(IID_INapSoHConstructor, 0x35298344, 0x96a6, 0x45e7, 0x9b,0x6b, 0x62,0xec,0xc6,0xe0,0x99,0x20); 114 #if defined(__cplusplus) && !defined(CINTERFACE) 115 MIDL_INTERFACE("35298344-96a6-45e7-9b6b-62ecc6e09920") 116 INapSoHConstructor : public IUnknown 117 { 118 virtual HRESULT STDMETHODCALLTYPE Initialize( 119 SystemHealthEntityId id, 120 WINBOOL isRequest) = 0; 121 122 virtual HRESULT STDMETHODCALLTYPE AppendAttribute( 123 SoHAttributeType type, 124 const SoHAttributeValue *value) = 0; 125 126 virtual HRESULT STDMETHODCALLTYPE GetSoH( 127 SoH **soh) = 0; 128 129 virtual HRESULT STDMETHODCALLTYPE Validate( 130 const SoH *soh, 131 WINBOOL isRequest) = 0; 132 133 }; 134 #ifdef __CRT_UUID_DECL 135 __CRT_UUID_DECL(INapSoHConstructor, 0x35298344, 0x96a6, 0x45e7, 0x9b,0x6b, 0x62,0xec,0xc6,0xe0,0x99,0x20) 136 #endif 137 #else 138 typedef struct INapSoHConstructorVtbl { 139 BEGIN_INTERFACE 140 141 /*** IUnknown methods ***/ 142 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 143 INapSoHConstructor *This, 144 REFIID riid, 145 void **ppvObject); 146 147 ULONG (STDMETHODCALLTYPE *AddRef)( 148 INapSoHConstructor *This); 149 150 ULONG (STDMETHODCALLTYPE *Release)( 151 INapSoHConstructor *This); 152 153 /*** INapSoHConstructor methods ***/ 154 HRESULT (STDMETHODCALLTYPE *Initialize)( 155 INapSoHConstructor *This, 156 SystemHealthEntityId id, 157 WINBOOL isRequest); 158 159 HRESULT (STDMETHODCALLTYPE *AppendAttribute)( 160 INapSoHConstructor *This, 161 SoHAttributeType type, 162 const SoHAttributeValue *value); 163 164 HRESULT (STDMETHODCALLTYPE *GetSoH)( 165 INapSoHConstructor *This, 166 SoH **soh); 167 168 HRESULT (STDMETHODCALLTYPE *Validate)( 169 INapSoHConstructor *This, 170 const SoH *soh, 171 WINBOOL isRequest); 172 173 END_INTERFACE 174 } INapSoHConstructorVtbl; 175 176 interface INapSoHConstructor { 177 CONST_VTBL INapSoHConstructorVtbl* lpVtbl; 178 }; 179 180 #ifdef COBJMACROS 181 #ifndef WIDL_C_INLINE_WRAPPERS 182 /*** IUnknown methods ***/ 183 #define INapSoHConstructor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 184 #define INapSoHConstructor_AddRef(This) (This)->lpVtbl->AddRef(This) 185 #define INapSoHConstructor_Release(This) (This)->lpVtbl->Release(This) 186 /*** INapSoHConstructor methods ***/ 187 #define INapSoHConstructor_Initialize(This,id,isRequest) (This)->lpVtbl->Initialize(This,id,isRequest) 188 #define INapSoHConstructor_AppendAttribute(This,type,value) (This)->lpVtbl->AppendAttribute(This,type,value) 189 #define INapSoHConstructor_GetSoH(This,soh) (This)->lpVtbl->GetSoH(This,soh) 190 #define INapSoHConstructor_Validate(This,soh,isRequest) (This)->lpVtbl->Validate(This,soh,isRequest) 191 #else 192 /*** IUnknown methods ***/ 193 static FORCEINLINE HRESULT INapSoHConstructor_QueryInterface(INapSoHConstructor* This,REFIID riid,void **ppvObject) { 194 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 195 } 196 static FORCEINLINE ULONG INapSoHConstructor_AddRef(INapSoHConstructor* This) { 197 return This->lpVtbl->AddRef(This); 198 } 199 static FORCEINLINE ULONG INapSoHConstructor_Release(INapSoHConstructor* This) { 200 return This->lpVtbl->Release(This); 201 } 202 /*** INapSoHConstructor methods ***/ 203 static FORCEINLINE HRESULT INapSoHConstructor_Initialize(INapSoHConstructor* This,SystemHealthEntityId id,WINBOOL isRequest) { 204 return This->lpVtbl->Initialize(This,id,isRequest); 205 } 206 static FORCEINLINE HRESULT INapSoHConstructor_AppendAttribute(INapSoHConstructor* This,SoHAttributeType type,const SoHAttributeValue *value) { 207 return This->lpVtbl->AppendAttribute(This,type,value); 208 } 209 static FORCEINLINE HRESULT INapSoHConstructor_GetSoH(INapSoHConstructor* This,SoH **soh) { 210 return This->lpVtbl->GetSoH(This,soh); 211 } 212 static FORCEINLINE HRESULT INapSoHConstructor_Validate(INapSoHConstructor* This,const SoH *soh,WINBOOL isRequest) { 213 return This->lpVtbl->Validate(This,soh,isRequest); 214 } 215 #endif 216 #endif 217 218 #endif 219 220 221 #endif /* __INapSoHConstructor_INTERFACE_DEFINED__ */ 222 223 /***************************************************************************** 224 * INapSoHProcessor interface 225 */ 226 #ifndef __INapSoHProcessor_INTERFACE_DEFINED__ 227 #define __INapSoHProcessor_INTERFACE_DEFINED__ 228 229 DEFINE_GUID(IID_INapSoHProcessor, 0xfb2fa8b0, 0x2cd5, 0x457d, 0xab,0xa8, 0x43,0x76,0xf6,0x3e,0xa1,0xc0); 230 #if defined(__cplusplus) && !defined(CINTERFACE) 231 MIDL_INTERFACE("fb2fa8b0-2cd5-457d-aba8-4376f63ea1c0") 232 INapSoHProcessor : public IUnknown 233 { 234 virtual HRESULT STDMETHODCALLTYPE Initialize( 235 const SoH *soh, 236 WINBOOL isRequest, 237 SystemHealthEntityId *id) = 0; 238 239 virtual HRESULT STDMETHODCALLTYPE FindNextAttribute( 240 UINT16 fromLocation, 241 SoHAttributeType type, 242 UINT16 *attributeLocation) = 0; 243 244 virtual HRESULT STDMETHODCALLTYPE GetAttribute( 245 UINT16 attributeLocation, 246 SoHAttributeType *type, 247 SoHAttributeValue **value) = 0; 248 249 virtual HRESULT STDMETHODCALLTYPE GetNumberOfAttributes( 250 UINT16 *attributeCount) = 0; 251 252 }; 253 #ifdef __CRT_UUID_DECL 254 __CRT_UUID_DECL(INapSoHProcessor, 0xfb2fa8b0, 0x2cd5, 0x457d, 0xab,0xa8, 0x43,0x76,0xf6,0x3e,0xa1,0xc0) 255 #endif 256 #else 257 typedef struct INapSoHProcessorVtbl { 258 BEGIN_INTERFACE 259 260 /*** IUnknown methods ***/ 261 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 262 INapSoHProcessor *This, 263 REFIID riid, 264 void **ppvObject); 265 266 ULONG (STDMETHODCALLTYPE *AddRef)( 267 INapSoHProcessor *This); 268 269 ULONG (STDMETHODCALLTYPE *Release)( 270 INapSoHProcessor *This); 271 272 /*** INapSoHProcessor methods ***/ 273 HRESULT (STDMETHODCALLTYPE *Initialize)( 274 INapSoHProcessor *This, 275 const SoH *soh, 276 WINBOOL isRequest, 277 SystemHealthEntityId *id); 278 279 HRESULT (STDMETHODCALLTYPE *FindNextAttribute)( 280 INapSoHProcessor *This, 281 UINT16 fromLocation, 282 SoHAttributeType type, 283 UINT16 *attributeLocation); 284 285 HRESULT (STDMETHODCALLTYPE *GetAttribute)( 286 INapSoHProcessor *This, 287 UINT16 attributeLocation, 288 SoHAttributeType *type, 289 SoHAttributeValue **value); 290 291 HRESULT (STDMETHODCALLTYPE *GetNumberOfAttributes)( 292 INapSoHProcessor *This, 293 UINT16 *attributeCount); 294 295 END_INTERFACE 296 } INapSoHProcessorVtbl; 297 298 interface INapSoHProcessor { 299 CONST_VTBL INapSoHProcessorVtbl* lpVtbl; 300 }; 301 302 #ifdef COBJMACROS 303 #ifndef WIDL_C_INLINE_WRAPPERS 304 /*** IUnknown methods ***/ 305 #define INapSoHProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 306 #define INapSoHProcessor_AddRef(This) (This)->lpVtbl->AddRef(This) 307 #define INapSoHProcessor_Release(This) (This)->lpVtbl->Release(This) 308 /*** INapSoHProcessor methods ***/ 309 #define INapSoHProcessor_Initialize(This,soh,isRequest,id) (This)->lpVtbl->Initialize(This,soh,isRequest,id) 310 #define INapSoHProcessor_FindNextAttribute(This,fromLocation,type,attributeLocation) (This)->lpVtbl->FindNextAttribute(This,fromLocation,type,attributeLocation) 311 #define INapSoHProcessor_GetAttribute(This,attributeLocation,type,value) (This)->lpVtbl->GetAttribute(This,attributeLocation,type,value) 312 #define INapSoHProcessor_GetNumberOfAttributes(This,attributeCount) (This)->lpVtbl->GetNumberOfAttributes(This,attributeCount) 313 #else 314 /*** IUnknown methods ***/ 315 static FORCEINLINE HRESULT INapSoHProcessor_QueryInterface(INapSoHProcessor* This,REFIID riid,void **ppvObject) { 316 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 317 } 318 static FORCEINLINE ULONG INapSoHProcessor_AddRef(INapSoHProcessor* This) { 319 return This->lpVtbl->AddRef(This); 320 } 321 static FORCEINLINE ULONG INapSoHProcessor_Release(INapSoHProcessor* This) { 322 return This->lpVtbl->Release(This); 323 } 324 /*** INapSoHProcessor methods ***/ 325 static FORCEINLINE HRESULT INapSoHProcessor_Initialize(INapSoHProcessor* This,const SoH *soh,WINBOOL isRequest,SystemHealthEntityId *id) { 326 return This->lpVtbl->Initialize(This,soh,isRequest,id); 327 } 328 static FORCEINLINE HRESULT INapSoHProcessor_FindNextAttribute(INapSoHProcessor* This,UINT16 fromLocation,SoHAttributeType type,UINT16 *attributeLocation) { 329 return This->lpVtbl->FindNextAttribute(This,fromLocation,type,attributeLocation); 330 } 331 static FORCEINLINE HRESULT INapSoHProcessor_GetAttribute(INapSoHProcessor* This,UINT16 attributeLocation,SoHAttributeType *type,SoHAttributeValue **value) { 332 return This->lpVtbl->GetAttribute(This,attributeLocation,type,value); 333 } 334 static FORCEINLINE HRESULT INapSoHProcessor_GetNumberOfAttributes(INapSoHProcessor* This,UINT16 *attributeCount) { 335 return This->lpVtbl->GetNumberOfAttributes(This,attributeCount); 336 } 337 #endif 338 #endif 339 340 #endif 341 342 343 #endif /* __INapSoHProcessor_INTERFACE_DEFINED__ */ 344 345 EXTERN_C const CLSID CLSID_NapSoHConstructor; 346 EXTERN_C const CLSID CLSID_NapSoHProcessor; 347 #endif 348 /* Begin additional prototypes for all interfaces */ 349 350 351 /* End additional prototypes */ 352 353 #ifdef __cplusplus 354 } 355 #endif 356 357 #endif /* __napprotocol_h__ */ 358