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