1 /*** Autogenerated by WIDL 1.6 from include/napenforcementclient.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 __napenforcementclient_h__
16 #define __napenforcementclient_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __INapEnforcementClientBinding_FWD_DEFINED__
21 #define __INapEnforcementClientBinding_FWD_DEFINED__
22 typedef interface INapEnforcementClientBinding INapEnforcementClientBinding;
23 #endif
24 
25 #ifndef __INapEnforcementClientCallback_FWD_DEFINED__
26 #define __INapEnforcementClientCallback_FWD_DEFINED__
27 typedef interface INapEnforcementClientCallback INapEnforcementClientCallback;
28 #endif
29 
30 #ifndef __INapEnforcementClientConnection_FWD_DEFINED__
31 #define __INapEnforcementClientConnection_FWD_DEFINED__
32 typedef interface INapEnforcementClientConnection INapEnforcementClientConnection;
33 #endif
34 
35 #ifndef __INapEnforcementClientConnection2_FWD_DEFINED__
36 #define __INapEnforcementClientConnection2_FWD_DEFINED__
37 typedef interface INapEnforcementClientConnection2 INapEnforcementClientConnection2;
38 #endif
39 
40 /* Headers for imported files */
41 
42 #include <naptypes.h>
43 #include <unknwn.h>
44 
45 #ifdef __cplusplus
46 extern "C" {
47 #endif
48 
49 #include <winapifamily.h>
50 
51 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
52 #ifndef __INapEnforcementClientBinding_FWD_DEFINED__
53 #define __INapEnforcementClientBinding_FWD_DEFINED__
54 typedef interface INapEnforcementClientBinding INapEnforcementClientBinding;
55 #endif
56 
57 #ifndef __INapEnforcementClientCallback_FWD_DEFINED__
58 #define __INapEnforcementClientCallback_FWD_DEFINED__
59 typedef interface INapEnforcementClientCallback INapEnforcementClientCallback;
60 #endif
61 
62 #ifndef __INapEnforcementClientConnection_FWD_DEFINED__
63 #define __INapEnforcementClientConnection_FWD_DEFINED__
64 typedef interface INapEnforcementClientConnection INapEnforcementClientConnection;
65 #endif
66 
67 #ifndef __INapEnforcementClientConnection2_FWD_DEFINED__
68 #define __INapEnforcementClientConnection2_FWD_DEFINED__
69 typedef interface INapEnforcementClientConnection2 INapEnforcementClientConnection2;
70 #endif
71 
72 /*****************************************************************************
73  * INapEnforcementClientBinding interface
74  */
75 #ifndef __INapEnforcementClientBinding_INTERFACE_DEFINED__
76 #define __INapEnforcementClientBinding_INTERFACE_DEFINED__
77 
78 DEFINE_GUID(IID_INapEnforcementClientBinding, 0x92b93223, 0x7487, 0x42d9, 0x9a,0x91, 0x5b,0x85,0x07,0x72,0x03,0x84);
79 #if defined(__cplusplus) && !defined(CINTERFACE)
80 MIDL_INTERFACE("92b93223-7487-42d9-9a91-5b8507720384")
81 INapEnforcementClientBinding : public IUnknown
82 {
83     virtual HRESULT STDMETHODCALLTYPE Initialize(
84         EnforcementEntityId id,
85         INapEnforcementClientCallback *callback) = 0;
86 
87     virtual HRESULT STDMETHODCALLTYPE Uninitialize(
88         ) = 0;
89 
90     virtual HRESULT STDMETHODCALLTYPE CreateConnection(
91         INapEnforcementClientConnection **connection) = 0;
92 
93     virtual HRESULT STDMETHODCALLTYPE GetSoHRequest(
94         INapEnforcementClientConnection *connection,
95         WINBOOL *retriggerHint) = 0;
96 
97     virtual HRESULT STDMETHODCALLTYPE ProcessSoHResponse(
98         INapEnforcementClientConnection *connection) = 0;
99 
100     virtual HRESULT STDMETHODCALLTYPE NotifyConnectionStateDown(
101         INapEnforcementClientConnection *downCxn) = 0;
102 
103     virtual HRESULT STDMETHODCALLTYPE NotifySoHChangeFailure(
104         ) = 0;
105 
106 };
107 #ifdef __CRT_UUID_DECL
108 __CRT_UUID_DECL(INapEnforcementClientBinding, 0x92b93223, 0x7487, 0x42d9, 0x9a,0x91, 0x5b,0x85,0x07,0x72,0x03,0x84)
109 #endif
110 #else
111 typedef struct INapEnforcementClientBindingVtbl {
112     BEGIN_INTERFACE
113 
114     /*** IUnknown methods ***/
115     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
116         INapEnforcementClientBinding* This,
117         REFIID riid,
118         void **ppvObject);
119 
120     ULONG (STDMETHODCALLTYPE *AddRef)(
121         INapEnforcementClientBinding* This);
122 
123     ULONG (STDMETHODCALLTYPE *Release)(
124         INapEnforcementClientBinding* This);
125 
126     /*** INapEnforcementClientBinding methods ***/
127     HRESULT (STDMETHODCALLTYPE *Initialize)(
128         INapEnforcementClientBinding* This,
129         EnforcementEntityId id,
130         INapEnforcementClientCallback *callback);
131 
132     HRESULT (STDMETHODCALLTYPE *Uninitialize)(
133         INapEnforcementClientBinding* This);
134 
135     HRESULT (STDMETHODCALLTYPE *CreateConnection)(
136         INapEnforcementClientBinding* This,
137         INapEnforcementClientConnection **connection);
138 
139     HRESULT (STDMETHODCALLTYPE *GetSoHRequest)(
140         INapEnforcementClientBinding* This,
141         INapEnforcementClientConnection *connection,
142         WINBOOL *retriggerHint);
143 
144     HRESULT (STDMETHODCALLTYPE *ProcessSoHResponse)(
145         INapEnforcementClientBinding* This,
146         INapEnforcementClientConnection *connection);
147 
148     HRESULT (STDMETHODCALLTYPE *NotifyConnectionStateDown)(
149         INapEnforcementClientBinding* This,
150         INapEnforcementClientConnection *downCxn);
151 
152     HRESULT (STDMETHODCALLTYPE *NotifySoHChangeFailure)(
153         INapEnforcementClientBinding* This);
154 
155     END_INTERFACE
156 } INapEnforcementClientBindingVtbl;
157 interface INapEnforcementClientBinding {
158     CONST_VTBL INapEnforcementClientBindingVtbl* lpVtbl;
159 };
160 
161 #ifdef COBJMACROS
162 #ifndef WIDL_C_INLINE_WRAPPERS
163 /*** IUnknown methods ***/
164 #define INapEnforcementClientBinding_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
165 #define INapEnforcementClientBinding_AddRef(This) (This)->lpVtbl->AddRef(This)
166 #define INapEnforcementClientBinding_Release(This) (This)->lpVtbl->Release(This)
167 /*** INapEnforcementClientBinding methods ***/
168 #define INapEnforcementClientBinding_Initialize(This,id,callback) (This)->lpVtbl->Initialize(This,id,callback)
169 #define INapEnforcementClientBinding_Uninitialize(This) (This)->lpVtbl->Uninitialize(This)
170 #define INapEnforcementClientBinding_CreateConnection(This,connection) (This)->lpVtbl->CreateConnection(This,connection)
171 #define INapEnforcementClientBinding_GetSoHRequest(This,connection,retriggerHint) (This)->lpVtbl->GetSoHRequest(This,connection,retriggerHint)
172 #define INapEnforcementClientBinding_ProcessSoHResponse(This,connection) (This)->lpVtbl->ProcessSoHResponse(This,connection)
173 #define INapEnforcementClientBinding_NotifyConnectionStateDown(This,downCxn) (This)->lpVtbl->NotifyConnectionStateDown(This,downCxn)
174 #define INapEnforcementClientBinding_NotifySoHChangeFailure(This) (This)->lpVtbl->NotifySoHChangeFailure(This)
175 #else
176 /*** IUnknown methods ***/
177 static FORCEINLINE HRESULT INapEnforcementClientBinding_QueryInterface(INapEnforcementClientBinding* This,REFIID riid,void **ppvObject) {
178     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
179 }
180 static FORCEINLINE ULONG INapEnforcementClientBinding_AddRef(INapEnforcementClientBinding* This) {
181     return This->lpVtbl->AddRef(This);
182 }
183 static FORCEINLINE ULONG INapEnforcementClientBinding_Release(INapEnforcementClientBinding* This) {
184     return This->lpVtbl->Release(This);
185 }
186 /*** INapEnforcementClientBinding methods ***/
187 static FORCEINLINE HRESULT INapEnforcementClientBinding_Initialize(INapEnforcementClientBinding* This,EnforcementEntityId id,INapEnforcementClientCallback *callback) {
188     return This->lpVtbl->Initialize(This,id,callback);
189 }
190 static FORCEINLINE HRESULT INapEnforcementClientBinding_Uninitialize(INapEnforcementClientBinding* This) {
191     return This->lpVtbl->Uninitialize(This);
192 }
193 static FORCEINLINE HRESULT INapEnforcementClientBinding_CreateConnection(INapEnforcementClientBinding* This,INapEnforcementClientConnection **connection) {
194     return This->lpVtbl->CreateConnection(This,connection);
195 }
196 static FORCEINLINE HRESULT INapEnforcementClientBinding_GetSoHRequest(INapEnforcementClientBinding* This,INapEnforcementClientConnection *connection,WINBOOL *retriggerHint) {
197     return This->lpVtbl->GetSoHRequest(This,connection,retriggerHint);
198 }
199 static FORCEINLINE HRESULT INapEnforcementClientBinding_ProcessSoHResponse(INapEnforcementClientBinding* This,INapEnforcementClientConnection *connection) {
200     return This->lpVtbl->ProcessSoHResponse(This,connection);
201 }
202 static FORCEINLINE HRESULT INapEnforcementClientBinding_NotifyConnectionStateDown(INapEnforcementClientBinding* This,INapEnforcementClientConnection *downCxn) {
203     return This->lpVtbl->NotifyConnectionStateDown(This,downCxn);
204 }
205 static FORCEINLINE HRESULT INapEnforcementClientBinding_NotifySoHChangeFailure(INapEnforcementClientBinding* This) {
206     return This->lpVtbl->NotifySoHChangeFailure(This);
207 }
208 #endif
209 #endif
210 
211 #endif
212 
213 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_Initialize_Proxy(
214     INapEnforcementClientBinding* This,
215     EnforcementEntityId id,
216     INapEnforcementClientCallback *callback);
217 void __RPC_STUB INapEnforcementClientBinding_Initialize_Stub(
218     IRpcStubBuffer* This,
219     IRpcChannelBuffer* pRpcChannelBuffer,
220     PRPC_MESSAGE pRpcMessage,
221     DWORD* pdwStubPhase);
222 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_Uninitialize_Proxy(
223     INapEnforcementClientBinding* This);
224 void __RPC_STUB INapEnforcementClientBinding_Uninitialize_Stub(
225     IRpcStubBuffer* This,
226     IRpcChannelBuffer* pRpcChannelBuffer,
227     PRPC_MESSAGE pRpcMessage,
228     DWORD* pdwStubPhase);
229 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_CreateConnection_Proxy(
230     INapEnforcementClientBinding* This,
231     INapEnforcementClientConnection **connection);
232 void __RPC_STUB INapEnforcementClientBinding_CreateConnection_Stub(
233     IRpcStubBuffer* This,
234     IRpcChannelBuffer* pRpcChannelBuffer,
235     PRPC_MESSAGE pRpcMessage,
236     DWORD* pdwStubPhase);
237 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_GetSoHRequest_Proxy(
238     INapEnforcementClientBinding* This,
239     INapEnforcementClientConnection *connection,
240     WINBOOL *retriggerHint);
241 void __RPC_STUB INapEnforcementClientBinding_GetSoHRequest_Stub(
242     IRpcStubBuffer* This,
243     IRpcChannelBuffer* pRpcChannelBuffer,
244     PRPC_MESSAGE pRpcMessage,
245     DWORD* pdwStubPhase);
246 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_ProcessSoHResponse_Proxy(
247     INapEnforcementClientBinding* This,
248     INapEnforcementClientConnection *connection);
249 void __RPC_STUB INapEnforcementClientBinding_ProcessSoHResponse_Stub(
250     IRpcStubBuffer* This,
251     IRpcChannelBuffer* pRpcChannelBuffer,
252     PRPC_MESSAGE pRpcMessage,
253     DWORD* pdwStubPhase);
254 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_NotifyConnectionStateDown_Proxy(
255     INapEnforcementClientBinding* This,
256     INapEnforcementClientConnection *downCxn);
257 void __RPC_STUB INapEnforcementClientBinding_NotifyConnectionStateDown_Stub(
258     IRpcStubBuffer* This,
259     IRpcChannelBuffer* pRpcChannelBuffer,
260     PRPC_MESSAGE pRpcMessage,
261     DWORD* pdwStubPhase);
262 HRESULT STDMETHODCALLTYPE INapEnforcementClientBinding_NotifySoHChangeFailure_Proxy(
263     INapEnforcementClientBinding* This);
264 void __RPC_STUB INapEnforcementClientBinding_NotifySoHChangeFailure_Stub(
265     IRpcStubBuffer* This,
266     IRpcChannelBuffer* pRpcChannelBuffer,
267     PRPC_MESSAGE pRpcMessage,
268     DWORD* pdwStubPhase);
269 
270 #endif  /* __INapEnforcementClientBinding_INTERFACE_DEFINED__ */
271 
272 /*****************************************************************************
273  * INapEnforcementClientCallback interface
274  */
275 #ifndef __INapEnforcementClientCallback_INTERFACE_DEFINED__
276 #define __INapEnforcementClientCallback_INTERFACE_DEFINED__
277 
278 typedef struct tagConnections {
279     UINT16 count;
280     INapEnforcementClientConnection **connections;
281 } Connections;
282 DEFINE_GUID(IID_INapEnforcementClientCallback, 0xf5a0b90a, 0x83a1, 0x4f76, 0xba,0x3f, 0x02,0x54,0x18,0x68,0x28,0x14);
283 #if defined(__cplusplus) && !defined(CINTERFACE)
284 MIDL_INTERFACE("f5a0b90a-83a1-4f76-ba3f-025418682814")
285 INapEnforcementClientCallback : public IUnknown
286 {
287     virtual HRESULT STDMETHODCALLTYPE NotifySoHChange(
288         ) = 0;
289 
290     virtual HRESULT STDMETHODCALLTYPE GetConnections(
291         Connections **connections) = 0;
292 
293 };
294 #ifdef __CRT_UUID_DECL
295 __CRT_UUID_DECL(INapEnforcementClientCallback, 0xf5a0b90a, 0x83a1, 0x4f76, 0xba,0x3f, 0x02,0x54,0x18,0x68,0x28,0x14)
296 #endif
297 #else
298 typedef struct INapEnforcementClientCallbackVtbl {
299     BEGIN_INTERFACE
300 
301     /*** IUnknown methods ***/
302     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
303         INapEnforcementClientCallback* This,
304         REFIID riid,
305         void **ppvObject);
306 
307     ULONG (STDMETHODCALLTYPE *AddRef)(
308         INapEnforcementClientCallback* This);
309 
310     ULONG (STDMETHODCALLTYPE *Release)(
311         INapEnforcementClientCallback* This);
312 
313     /*** INapEnforcementClientCallback methods ***/
314     HRESULT (STDMETHODCALLTYPE *NotifySoHChange)(
315         INapEnforcementClientCallback* This);
316 
317     HRESULT (STDMETHODCALLTYPE *GetConnections)(
318         INapEnforcementClientCallback* This,
319         Connections **connections);
320 
321     END_INTERFACE
322 } INapEnforcementClientCallbackVtbl;
323 interface INapEnforcementClientCallback {
324     CONST_VTBL INapEnforcementClientCallbackVtbl* lpVtbl;
325 };
326 
327 #ifdef COBJMACROS
328 #ifndef WIDL_C_INLINE_WRAPPERS
329 /*** IUnknown methods ***/
330 #define INapEnforcementClientCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
331 #define INapEnforcementClientCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
332 #define INapEnforcementClientCallback_Release(This) (This)->lpVtbl->Release(This)
333 /*** INapEnforcementClientCallback methods ***/
334 #define INapEnforcementClientCallback_NotifySoHChange(This) (This)->lpVtbl->NotifySoHChange(This)
335 #define INapEnforcementClientCallback_GetConnections(This,connections) (This)->lpVtbl->GetConnections(This,connections)
336 #else
337 /*** IUnknown methods ***/
338 static FORCEINLINE HRESULT INapEnforcementClientCallback_QueryInterface(INapEnforcementClientCallback* This,REFIID riid,void **ppvObject) {
339     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
340 }
341 static FORCEINLINE ULONG INapEnforcementClientCallback_AddRef(INapEnforcementClientCallback* This) {
342     return This->lpVtbl->AddRef(This);
343 }
344 static FORCEINLINE ULONG INapEnforcementClientCallback_Release(INapEnforcementClientCallback* This) {
345     return This->lpVtbl->Release(This);
346 }
347 /*** INapEnforcementClientCallback methods ***/
348 static FORCEINLINE HRESULT INapEnforcementClientCallback_NotifySoHChange(INapEnforcementClientCallback* This) {
349     return This->lpVtbl->NotifySoHChange(This);
350 }
351 static FORCEINLINE HRESULT INapEnforcementClientCallback_GetConnections(INapEnforcementClientCallback* This,Connections **connections) {
352     return This->lpVtbl->GetConnections(This,connections);
353 }
354 #endif
355 #endif
356 
357 #endif
358 
359 HRESULT STDMETHODCALLTYPE INapEnforcementClientCallback_NotifySoHChange_Proxy(
360     INapEnforcementClientCallback* This);
361 void __RPC_STUB INapEnforcementClientCallback_NotifySoHChange_Stub(
362     IRpcStubBuffer* This,
363     IRpcChannelBuffer* pRpcChannelBuffer,
364     PRPC_MESSAGE pRpcMessage,
365     DWORD* pdwStubPhase);
366 HRESULT STDMETHODCALLTYPE INapEnforcementClientCallback_GetConnections_Proxy(
367     INapEnforcementClientCallback* This,
368     Connections **connections);
369 void __RPC_STUB INapEnforcementClientCallback_GetConnections_Stub(
370     IRpcStubBuffer* This,
371     IRpcChannelBuffer* pRpcChannelBuffer,
372     PRPC_MESSAGE pRpcMessage,
373     DWORD* pdwStubPhase);
374 
375 #endif  /* __INapEnforcementClientCallback_INTERFACE_DEFINED__ */
376 
377 /*****************************************************************************
378  * INapEnforcementClientConnection interface
379  */
380 #ifndef __INapEnforcementClientConnection_INTERFACE_DEFINED__
381 #define __INapEnforcementClientConnection_INTERFACE_DEFINED__
382 
383 #define defaultProtocolMaxSize (4000)
384 
385 #define minProtocolMaxSize (300)
386 
387 #define maxProtocolMaxSize (0xffff)
388 
389 typedef UINT32 ProtocolMaxSize;
390 DEFINE_GUID(IID_INapEnforcementClientConnection, 0xfb3a3505, 0xddb1, 0x468a, 0xb3,0x07, 0xf3,0x28,0xa5,0x74,0x19,0xd8);
391 #if defined(__cplusplus) && !defined(CINTERFACE)
392 MIDL_INTERFACE("fb3a3505-ddb1-468a-b307-f328a57419d8")
393 INapEnforcementClientConnection : public IUnknown
394 {
395     virtual HRESULT STDMETHODCALLTYPE Initialize(
396         EnforcementEntityId id) = 0;
397 
398     virtual HRESULT STDMETHODCALLTYPE SetMaxSize(
399         ProtocolMaxSize maxSize) = 0;
400 
401     virtual HRESULT STDMETHODCALLTYPE GetMaxSize(
402         ProtocolMaxSize *maxSize) = 0;
403 
404     virtual HRESULT STDMETHODCALLTYPE SetFlags(
405         UINT8 flags) = 0;
406 
407     virtual HRESULT STDMETHODCALLTYPE GetFlags(
408         UINT8 *flags) = 0;
409 
410     virtual HRESULT STDMETHODCALLTYPE SetConnectionId(
411         const ConnectionId *connectionId) = 0;
412 
413     virtual HRESULT STDMETHODCALLTYPE GetConnectionId(
414         ConnectionId **connectionId) = 0;
415 
416     virtual HRESULT STDMETHODCALLTYPE GetCorrelationId(
417         CorrelationId *correlationId) = 0;
418 
419     virtual HRESULT STDMETHODCALLTYPE GetStringCorrelationId(
420         StringCorrelationId **correlationId) = 0;
421 
422     virtual HRESULT STDMETHODCALLTYPE SetCorrelationId(
423         CorrelationId correlationId) = 0;
424 
425     virtual HRESULT STDMETHODCALLTYPE SetSoHRequest(
426         const NetworkSoHRequest *sohRequest) = 0;
427 
428     virtual HRESULT STDMETHODCALLTYPE GetSoHRequest(
429         NetworkSoHRequest **sohRequest) = 0;
430 
431     virtual HRESULT STDMETHODCALLTYPE SetSoHResponse(
432         const NetworkSoHResponse *sohResponse) = 0;
433 
434     virtual HRESULT STDMETHODCALLTYPE GetSoHResponse(
435         NetworkSoHResponse **sohResponse) = 0;
436 
437     virtual HRESULT STDMETHODCALLTYPE SetIsolationInfo(
438         const IsolationInfo *isolationInfo) = 0;
439 
440     virtual HRESULT STDMETHODCALLTYPE GetIsolationInfo(
441         IsolationInfo **isolationInfo) = 0;
442 
443     virtual HRESULT STDMETHODCALLTYPE SetPrivateData(
444         const PrivateData *privateData) = 0;
445 
446     virtual HRESULT STDMETHODCALLTYPE GetPrivateData(
447         PrivateData **privateData) = 0;
448 
449     virtual HRESULT STDMETHODCALLTYPE SetEnforcerPrivateData(
450         const PrivateData *privateData) = 0;
451 
452     virtual HRESULT STDMETHODCALLTYPE GetEnforcerPrivateData(
453         PrivateData **privateData) = 0;
454 
455 };
456 #ifdef __CRT_UUID_DECL
457 __CRT_UUID_DECL(INapEnforcementClientConnection, 0xfb3a3505, 0xddb1, 0x468a, 0xb3,0x07, 0xf3,0x28,0xa5,0x74,0x19,0xd8)
458 #endif
459 #else
460 typedef struct INapEnforcementClientConnectionVtbl {
461     BEGIN_INTERFACE
462 
463     /*** IUnknown methods ***/
464     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
465         INapEnforcementClientConnection* This,
466         REFIID riid,
467         void **ppvObject);
468 
469     ULONG (STDMETHODCALLTYPE *AddRef)(
470         INapEnforcementClientConnection* This);
471 
472     ULONG (STDMETHODCALLTYPE *Release)(
473         INapEnforcementClientConnection* This);
474 
475     /*** INapEnforcementClientConnection methods ***/
476     HRESULT (STDMETHODCALLTYPE *Initialize)(
477         INapEnforcementClientConnection* This,
478         EnforcementEntityId id);
479 
480     HRESULT (STDMETHODCALLTYPE *SetMaxSize)(
481         INapEnforcementClientConnection* This,
482         ProtocolMaxSize maxSize);
483 
484     HRESULT (STDMETHODCALLTYPE *GetMaxSize)(
485         INapEnforcementClientConnection* This,
486         ProtocolMaxSize *maxSize);
487 
488     HRESULT (STDMETHODCALLTYPE *SetFlags)(
489         INapEnforcementClientConnection* This,
490         UINT8 flags);
491 
492     HRESULT (STDMETHODCALLTYPE *GetFlags)(
493         INapEnforcementClientConnection* This,
494         UINT8 *flags);
495 
496     HRESULT (STDMETHODCALLTYPE *SetConnectionId)(
497         INapEnforcementClientConnection* This,
498         const ConnectionId *connectionId);
499 
500     HRESULT (STDMETHODCALLTYPE *GetConnectionId)(
501         INapEnforcementClientConnection* This,
502         ConnectionId **connectionId);
503 
504     HRESULT (STDMETHODCALLTYPE *GetCorrelationId)(
505         INapEnforcementClientConnection* This,
506         CorrelationId *correlationId);
507 
508     HRESULT (STDMETHODCALLTYPE *GetStringCorrelationId)(
509         INapEnforcementClientConnection* This,
510         StringCorrelationId **correlationId);
511 
512     HRESULT (STDMETHODCALLTYPE *SetCorrelationId)(
513         INapEnforcementClientConnection* This,
514         CorrelationId correlationId);
515 
516     HRESULT (STDMETHODCALLTYPE *SetSoHRequest)(
517         INapEnforcementClientConnection* This,
518         const NetworkSoHRequest *sohRequest);
519 
520     HRESULT (STDMETHODCALLTYPE *GetSoHRequest)(
521         INapEnforcementClientConnection* This,
522         NetworkSoHRequest **sohRequest);
523 
524     HRESULT (STDMETHODCALLTYPE *SetSoHResponse)(
525         INapEnforcementClientConnection* This,
526         const NetworkSoHResponse *sohResponse);
527 
528     HRESULT (STDMETHODCALLTYPE *GetSoHResponse)(
529         INapEnforcementClientConnection* This,
530         NetworkSoHResponse **sohResponse);
531 
532     HRESULT (STDMETHODCALLTYPE *SetIsolationInfo)(
533         INapEnforcementClientConnection* This,
534         const IsolationInfo *isolationInfo);
535 
536     HRESULT (STDMETHODCALLTYPE *GetIsolationInfo)(
537         INapEnforcementClientConnection* This,
538         IsolationInfo **isolationInfo);
539 
540     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
541         INapEnforcementClientConnection* This,
542         const PrivateData *privateData);
543 
544     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
545         INapEnforcementClientConnection* This,
546         PrivateData **privateData);
547 
548     HRESULT (STDMETHODCALLTYPE *SetEnforcerPrivateData)(
549         INapEnforcementClientConnection* This,
550         const PrivateData *privateData);
551 
552     HRESULT (STDMETHODCALLTYPE *GetEnforcerPrivateData)(
553         INapEnforcementClientConnection* This,
554         PrivateData **privateData);
555 
556     END_INTERFACE
557 } INapEnforcementClientConnectionVtbl;
558 interface INapEnforcementClientConnection {
559     CONST_VTBL INapEnforcementClientConnectionVtbl* lpVtbl;
560 };
561 
562 #ifdef COBJMACROS
563 #ifndef WIDL_C_INLINE_WRAPPERS
564 /*** IUnknown methods ***/
565 #define INapEnforcementClientConnection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
566 #define INapEnforcementClientConnection_AddRef(This) (This)->lpVtbl->AddRef(This)
567 #define INapEnforcementClientConnection_Release(This) (This)->lpVtbl->Release(This)
568 /*** INapEnforcementClientConnection methods ***/
569 #define INapEnforcementClientConnection_Initialize(This,id) (This)->lpVtbl->Initialize(This,id)
570 #define INapEnforcementClientConnection_SetMaxSize(This,maxSize) (This)->lpVtbl->SetMaxSize(This,maxSize)
571 #define INapEnforcementClientConnection_GetMaxSize(This,maxSize) (This)->lpVtbl->GetMaxSize(This,maxSize)
572 #define INapEnforcementClientConnection_SetFlags(This,flags) (This)->lpVtbl->SetFlags(This,flags)
573 #define INapEnforcementClientConnection_GetFlags(This,flags) (This)->lpVtbl->GetFlags(This,flags)
574 #define INapEnforcementClientConnection_SetConnectionId(This,connectionId) (This)->lpVtbl->SetConnectionId(This,connectionId)
575 #define INapEnforcementClientConnection_GetConnectionId(This,connectionId) (This)->lpVtbl->GetConnectionId(This,connectionId)
576 #define INapEnforcementClientConnection_GetCorrelationId(This,correlationId) (This)->lpVtbl->GetCorrelationId(This,correlationId)
577 #define INapEnforcementClientConnection_GetStringCorrelationId(This,correlationId) (This)->lpVtbl->GetStringCorrelationId(This,correlationId)
578 #define INapEnforcementClientConnection_SetCorrelationId(This,correlationId) (This)->lpVtbl->SetCorrelationId(This,correlationId)
579 #define INapEnforcementClientConnection_SetSoHRequest(This,sohRequest) (This)->lpVtbl->SetSoHRequest(This,sohRequest)
580 #define INapEnforcementClientConnection_GetSoHRequest(This,sohRequest) (This)->lpVtbl->GetSoHRequest(This,sohRequest)
581 #define INapEnforcementClientConnection_SetSoHResponse(This,sohResponse) (This)->lpVtbl->SetSoHResponse(This,sohResponse)
582 #define INapEnforcementClientConnection_GetSoHResponse(This,sohResponse) (This)->lpVtbl->GetSoHResponse(This,sohResponse)
583 #define INapEnforcementClientConnection_SetIsolationInfo(This,isolationInfo) (This)->lpVtbl->SetIsolationInfo(This,isolationInfo)
584 #define INapEnforcementClientConnection_GetIsolationInfo(This,isolationInfo) (This)->lpVtbl->GetIsolationInfo(This,isolationInfo)
585 #define INapEnforcementClientConnection_SetPrivateData(This,privateData) (This)->lpVtbl->SetPrivateData(This,privateData)
586 #define INapEnforcementClientConnection_GetPrivateData(This,privateData) (This)->lpVtbl->GetPrivateData(This,privateData)
587 #define INapEnforcementClientConnection_SetEnforcerPrivateData(This,privateData) (This)->lpVtbl->SetEnforcerPrivateData(This,privateData)
588 #define INapEnforcementClientConnection_GetEnforcerPrivateData(This,privateData) (This)->lpVtbl->GetEnforcerPrivateData(This,privateData)
589 #else
590 /*** IUnknown methods ***/
591 static FORCEINLINE HRESULT INapEnforcementClientConnection_QueryInterface(INapEnforcementClientConnection* This,REFIID riid,void **ppvObject) {
592     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
593 }
594 static FORCEINLINE ULONG INapEnforcementClientConnection_AddRef(INapEnforcementClientConnection* This) {
595     return This->lpVtbl->AddRef(This);
596 }
597 static FORCEINLINE ULONG INapEnforcementClientConnection_Release(INapEnforcementClientConnection* This) {
598     return This->lpVtbl->Release(This);
599 }
600 /*** INapEnforcementClientConnection methods ***/
601 static FORCEINLINE HRESULT INapEnforcementClientConnection_Initialize(INapEnforcementClientConnection* This,EnforcementEntityId id) {
602     return This->lpVtbl->Initialize(This,id);
603 }
604 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetMaxSize(INapEnforcementClientConnection* This,ProtocolMaxSize maxSize) {
605     return This->lpVtbl->SetMaxSize(This,maxSize);
606 }
607 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetMaxSize(INapEnforcementClientConnection* This,ProtocolMaxSize *maxSize) {
608     return This->lpVtbl->GetMaxSize(This,maxSize);
609 }
610 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetFlags(INapEnforcementClientConnection* This,UINT8 flags) {
611     return This->lpVtbl->SetFlags(This,flags);
612 }
613 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetFlags(INapEnforcementClientConnection* This,UINT8 *flags) {
614     return This->lpVtbl->GetFlags(This,flags);
615 }
616 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetConnectionId(INapEnforcementClientConnection* This,const ConnectionId *connectionId) {
617     return This->lpVtbl->SetConnectionId(This,connectionId);
618 }
619 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetConnectionId(INapEnforcementClientConnection* This,ConnectionId **connectionId) {
620     return This->lpVtbl->GetConnectionId(This,connectionId);
621 }
622 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetCorrelationId(INapEnforcementClientConnection* This,CorrelationId *correlationId) {
623     return This->lpVtbl->GetCorrelationId(This,correlationId);
624 }
625 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetStringCorrelationId(INapEnforcementClientConnection* This,StringCorrelationId **correlationId) {
626     return This->lpVtbl->GetStringCorrelationId(This,correlationId);
627 }
628 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetCorrelationId(INapEnforcementClientConnection* This,CorrelationId correlationId) {
629     return This->lpVtbl->SetCorrelationId(This,correlationId);
630 }
631 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetSoHRequest(INapEnforcementClientConnection* This,const NetworkSoHRequest *sohRequest) {
632     return This->lpVtbl->SetSoHRequest(This,sohRequest);
633 }
634 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetSoHRequest(INapEnforcementClientConnection* This,NetworkSoHRequest **sohRequest) {
635     return This->lpVtbl->GetSoHRequest(This,sohRequest);
636 }
637 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetSoHResponse(INapEnforcementClientConnection* This,const NetworkSoHResponse *sohResponse) {
638     return This->lpVtbl->SetSoHResponse(This,sohResponse);
639 }
640 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetSoHResponse(INapEnforcementClientConnection* This,NetworkSoHResponse **sohResponse) {
641     return This->lpVtbl->GetSoHResponse(This,sohResponse);
642 }
643 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetIsolationInfo(INapEnforcementClientConnection* This,const IsolationInfo *isolationInfo) {
644     return This->lpVtbl->SetIsolationInfo(This,isolationInfo);
645 }
646 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetIsolationInfo(INapEnforcementClientConnection* This,IsolationInfo **isolationInfo) {
647     return This->lpVtbl->GetIsolationInfo(This,isolationInfo);
648 }
649 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetPrivateData(INapEnforcementClientConnection* This,const PrivateData *privateData) {
650     return This->lpVtbl->SetPrivateData(This,privateData);
651 }
652 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetPrivateData(INapEnforcementClientConnection* This,PrivateData **privateData) {
653     return This->lpVtbl->GetPrivateData(This,privateData);
654 }
655 static FORCEINLINE HRESULT INapEnforcementClientConnection_SetEnforcerPrivateData(INapEnforcementClientConnection* This,const PrivateData *privateData) {
656     return This->lpVtbl->SetEnforcerPrivateData(This,privateData);
657 }
658 static FORCEINLINE HRESULT INapEnforcementClientConnection_GetEnforcerPrivateData(INapEnforcementClientConnection* This,PrivateData **privateData) {
659     return This->lpVtbl->GetEnforcerPrivateData(This,privateData);
660 }
661 #endif
662 #endif
663 
664 #endif
665 
666 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_Initialize_Proxy(
667     INapEnforcementClientConnection* This,
668     EnforcementEntityId id);
669 void __RPC_STUB INapEnforcementClientConnection_Initialize_Stub(
670     IRpcStubBuffer* This,
671     IRpcChannelBuffer* pRpcChannelBuffer,
672     PRPC_MESSAGE pRpcMessage,
673     DWORD* pdwStubPhase);
674 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetMaxSize_Proxy(
675     INapEnforcementClientConnection* This,
676     ProtocolMaxSize maxSize);
677 void __RPC_STUB INapEnforcementClientConnection_SetMaxSize_Stub(
678     IRpcStubBuffer* This,
679     IRpcChannelBuffer* pRpcChannelBuffer,
680     PRPC_MESSAGE pRpcMessage,
681     DWORD* pdwStubPhase);
682 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetMaxSize_Proxy(
683     INapEnforcementClientConnection* This,
684     ProtocolMaxSize *maxSize);
685 void __RPC_STUB INapEnforcementClientConnection_GetMaxSize_Stub(
686     IRpcStubBuffer* This,
687     IRpcChannelBuffer* pRpcChannelBuffer,
688     PRPC_MESSAGE pRpcMessage,
689     DWORD* pdwStubPhase);
690 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetFlags_Proxy(
691     INapEnforcementClientConnection* This,
692     UINT8 flags);
693 void __RPC_STUB INapEnforcementClientConnection_SetFlags_Stub(
694     IRpcStubBuffer* This,
695     IRpcChannelBuffer* pRpcChannelBuffer,
696     PRPC_MESSAGE pRpcMessage,
697     DWORD* pdwStubPhase);
698 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetFlags_Proxy(
699     INapEnforcementClientConnection* This,
700     UINT8 *flags);
701 void __RPC_STUB INapEnforcementClientConnection_GetFlags_Stub(
702     IRpcStubBuffer* This,
703     IRpcChannelBuffer* pRpcChannelBuffer,
704     PRPC_MESSAGE pRpcMessage,
705     DWORD* pdwStubPhase);
706 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetConnectionId_Proxy(
707     INapEnforcementClientConnection* This,
708     const ConnectionId *connectionId);
709 void __RPC_STUB INapEnforcementClientConnection_SetConnectionId_Stub(
710     IRpcStubBuffer* This,
711     IRpcChannelBuffer* pRpcChannelBuffer,
712     PRPC_MESSAGE pRpcMessage,
713     DWORD* pdwStubPhase);
714 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetConnectionId_Proxy(
715     INapEnforcementClientConnection* This,
716     ConnectionId **connectionId);
717 void __RPC_STUB INapEnforcementClientConnection_GetConnectionId_Stub(
718     IRpcStubBuffer* This,
719     IRpcChannelBuffer* pRpcChannelBuffer,
720     PRPC_MESSAGE pRpcMessage,
721     DWORD* pdwStubPhase);
722 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetCorrelationId_Proxy(
723     INapEnforcementClientConnection* This,
724     CorrelationId *correlationId);
725 void __RPC_STUB INapEnforcementClientConnection_GetCorrelationId_Stub(
726     IRpcStubBuffer* This,
727     IRpcChannelBuffer* pRpcChannelBuffer,
728     PRPC_MESSAGE pRpcMessage,
729     DWORD* pdwStubPhase);
730 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetStringCorrelationId_Proxy(
731     INapEnforcementClientConnection* This,
732     StringCorrelationId **correlationId);
733 void __RPC_STUB INapEnforcementClientConnection_GetStringCorrelationId_Stub(
734     IRpcStubBuffer* This,
735     IRpcChannelBuffer* pRpcChannelBuffer,
736     PRPC_MESSAGE pRpcMessage,
737     DWORD* pdwStubPhase);
738 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetCorrelationId_Proxy(
739     INapEnforcementClientConnection* This,
740     CorrelationId correlationId);
741 void __RPC_STUB INapEnforcementClientConnection_SetCorrelationId_Stub(
742     IRpcStubBuffer* This,
743     IRpcChannelBuffer* pRpcChannelBuffer,
744     PRPC_MESSAGE pRpcMessage,
745     DWORD* pdwStubPhase);
746 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetSoHRequest_Proxy(
747     INapEnforcementClientConnection* This,
748     const NetworkSoHRequest *sohRequest);
749 void __RPC_STUB INapEnforcementClientConnection_SetSoHRequest_Stub(
750     IRpcStubBuffer* This,
751     IRpcChannelBuffer* pRpcChannelBuffer,
752     PRPC_MESSAGE pRpcMessage,
753     DWORD* pdwStubPhase);
754 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetSoHRequest_Proxy(
755     INapEnforcementClientConnection* This,
756     NetworkSoHRequest **sohRequest);
757 void __RPC_STUB INapEnforcementClientConnection_GetSoHRequest_Stub(
758     IRpcStubBuffer* This,
759     IRpcChannelBuffer* pRpcChannelBuffer,
760     PRPC_MESSAGE pRpcMessage,
761     DWORD* pdwStubPhase);
762 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetSoHResponse_Proxy(
763     INapEnforcementClientConnection* This,
764     const NetworkSoHResponse *sohResponse);
765 void __RPC_STUB INapEnforcementClientConnection_SetSoHResponse_Stub(
766     IRpcStubBuffer* This,
767     IRpcChannelBuffer* pRpcChannelBuffer,
768     PRPC_MESSAGE pRpcMessage,
769     DWORD* pdwStubPhase);
770 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetSoHResponse_Proxy(
771     INapEnforcementClientConnection* This,
772     NetworkSoHResponse **sohResponse);
773 void __RPC_STUB INapEnforcementClientConnection_GetSoHResponse_Stub(
774     IRpcStubBuffer* This,
775     IRpcChannelBuffer* pRpcChannelBuffer,
776     PRPC_MESSAGE pRpcMessage,
777     DWORD* pdwStubPhase);
778 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetIsolationInfo_Proxy(
779     INapEnforcementClientConnection* This,
780     const IsolationInfo *isolationInfo);
781 void __RPC_STUB INapEnforcementClientConnection_SetIsolationInfo_Stub(
782     IRpcStubBuffer* This,
783     IRpcChannelBuffer* pRpcChannelBuffer,
784     PRPC_MESSAGE pRpcMessage,
785     DWORD* pdwStubPhase);
786 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetIsolationInfo_Proxy(
787     INapEnforcementClientConnection* This,
788     IsolationInfo **isolationInfo);
789 void __RPC_STUB INapEnforcementClientConnection_GetIsolationInfo_Stub(
790     IRpcStubBuffer* This,
791     IRpcChannelBuffer* pRpcChannelBuffer,
792     PRPC_MESSAGE pRpcMessage,
793     DWORD* pdwStubPhase);
794 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetPrivateData_Proxy(
795     INapEnforcementClientConnection* This,
796     const PrivateData *privateData);
797 void __RPC_STUB INapEnforcementClientConnection_SetPrivateData_Stub(
798     IRpcStubBuffer* This,
799     IRpcChannelBuffer* pRpcChannelBuffer,
800     PRPC_MESSAGE pRpcMessage,
801     DWORD* pdwStubPhase);
802 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetPrivateData_Proxy(
803     INapEnforcementClientConnection* This,
804     PrivateData **privateData);
805 void __RPC_STUB INapEnforcementClientConnection_GetPrivateData_Stub(
806     IRpcStubBuffer* This,
807     IRpcChannelBuffer* pRpcChannelBuffer,
808     PRPC_MESSAGE pRpcMessage,
809     DWORD* pdwStubPhase);
810 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_SetEnforcerPrivateData_Proxy(
811     INapEnforcementClientConnection* This,
812     const PrivateData *privateData);
813 void __RPC_STUB INapEnforcementClientConnection_SetEnforcerPrivateData_Stub(
814     IRpcStubBuffer* This,
815     IRpcChannelBuffer* pRpcChannelBuffer,
816     PRPC_MESSAGE pRpcMessage,
817     DWORD* pdwStubPhase);
818 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection_GetEnforcerPrivateData_Proxy(
819     INapEnforcementClientConnection* This,
820     PrivateData **privateData);
821 void __RPC_STUB INapEnforcementClientConnection_GetEnforcerPrivateData_Stub(
822     IRpcStubBuffer* This,
823     IRpcChannelBuffer* pRpcChannelBuffer,
824     PRPC_MESSAGE pRpcMessage,
825     DWORD* pdwStubPhase);
826 
827 #endif  /* __INapEnforcementClientConnection_INTERFACE_DEFINED__ */
828 
829 /*****************************************************************************
830  * INapEnforcementClientConnection2 interface
831  */
832 #ifndef __INapEnforcementClientConnection2_INTERFACE_DEFINED__
833 #define __INapEnforcementClientConnection2_INTERFACE_DEFINED__
834 
835 DEFINE_GUID(IID_INapEnforcementClientConnection2, 0xbd244906, 0x70dd, 0x4690, 0xbe,0xea, 0x64,0x86,0x53,0x39,0x35,0x00);
836 #if defined(__cplusplus) && !defined(CINTERFACE)
837 MIDL_INTERFACE("bd244906-70dd-4690-beea-648653393500")
838 INapEnforcementClientConnection2 : public INapEnforcementClientConnection
839 {
840     virtual HRESULT STDMETHODCALLTYPE SetIsolationInfoEx(
841         const IsolationInfoEx *isolationInfo) = 0;
842 
843     virtual HRESULT STDMETHODCALLTYPE GetIsolationInfoEx(
844         IsolationInfoEx **isolationInfo) = 0;
845 
846     virtual HRESULT STDMETHODCALLTYPE GetInstalledShvs(
847         SystemHealthEntityCount *count,
848         SystemHealthEntityId **ids) = 0;
849 
850     virtual HRESULT STDMETHODCALLTYPE SetInstalledShvs(
851         SystemHealthEntityCount count,
852         SystemHealthEntityId *ids) = 0;
853 
854 };
855 #ifdef __CRT_UUID_DECL
856 __CRT_UUID_DECL(INapEnforcementClientConnection2, 0xbd244906, 0x70dd, 0x4690, 0xbe,0xea, 0x64,0x86,0x53,0x39,0x35,0x00)
857 #endif
858 #else
859 typedef struct INapEnforcementClientConnection2Vtbl {
860     BEGIN_INTERFACE
861 
862     /*** IUnknown methods ***/
863     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
864         INapEnforcementClientConnection2* This,
865         REFIID riid,
866         void **ppvObject);
867 
868     ULONG (STDMETHODCALLTYPE *AddRef)(
869         INapEnforcementClientConnection2* This);
870 
871     ULONG (STDMETHODCALLTYPE *Release)(
872         INapEnforcementClientConnection2* This);
873 
874     /*** INapEnforcementClientConnection methods ***/
875     HRESULT (STDMETHODCALLTYPE *Initialize)(
876         INapEnforcementClientConnection2* This,
877         EnforcementEntityId id);
878 
879     HRESULT (STDMETHODCALLTYPE *SetMaxSize)(
880         INapEnforcementClientConnection2* This,
881         ProtocolMaxSize maxSize);
882 
883     HRESULT (STDMETHODCALLTYPE *GetMaxSize)(
884         INapEnforcementClientConnection2* This,
885         ProtocolMaxSize *maxSize);
886 
887     HRESULT (STDMETHODCALLTYPE *SetFlags)(
888         INapEnforcementClientConnection2* This,
889         UINT8 flags);
890 
891     HRESULT (STDMETHODCALLTYPE *GetFlags)(
892         INapEnforcementClientConnection2* This,
893         UINT8 *flags);
894 
895     HRESULT (STDMETHODCALLTYPE *SetConnectionId)(
896         INapEnforcementClientConnection2* This,
897         const ConnectionId *connectionId);
898 
899     HRESULT (STDMETHODCALLTYPE *GetConnectionId)(
900         INapEnforcementClientConnection2* This,
901         ConnectionId **connectionId);
902 
903     HRESULT (STDMETHODCALLTYPE *GetCorrelationId)(
904         INapEnforcementClientConnection2* This,
905         CorrelationId *correlationId);
906 
907     HRESULT (STDMETHODCALLTYPE *GetStringCorrelationId)(
908         INapEnforcementClientConnection2* This,
909         StringCorrelationId **correlationId);
910 
911     HRESULT (STDMETHODCALLTYPE *SetCorrelationId)(
912         INapEnforcementClientConnection2* This,
913         CorrelationId correlationId);
914 
915     HRESULT (STDMETHODCALLTYPE *SetSoHRequest)(
916         INapEnforcementClientConnection2* This,
917         const NetworkSoHRequest *sohRequest);
918 
919     HRESULT (STDMETHODCALLTYPE *GetSoHRequest)(
920         INapEnforcementClientConnection2* This,
921         NetworkSoHRequest **sohRequest);
922 
923     HRESULT (STDMETHODCALLTYPE *SetSoHResponse)(
924         INapEnforcementClientConnection2* This,
925         const NetworkSoHResponse *sohResponse);
926 
927     HRESULT (STDMETHODCALLTYPE *GetSoHResponse)(
928         INapEnforcementClientConnection2* This,
929         NetworkSoHResponse **sohResponse);
930 
931     HRESULT (STDMETHODCALLTYPE *SetIsolationInfo)(
932         INapEnforcementClientConnection2* This,
933         const IsolationInfo *isolationInfo);
934 
935     HRESULT (STDMETHODCALLTYPE *GetIsolationInfo)(
936         INapEnforcementClientConnection2* This,
937         IsolationInfo **isolationInfo);
938 
939     HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
940         INapEnforcementClientConnection2* This,
941         const PrivateData *privateData);
942 
943     HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
944         INapEnforcementClientConnection2* This,
945         PrivateData **privateData);
946 
947     HRESULT (STDMETHODCALLTYPE *SetEnforcerPrivateData)(
948         INapEnforcementClientConnection2* This,
949         const PrivateData *privateData);
950 
951     HRESULT (STDMETHODCALLTYPE *GetEnforcerPrivateData)(
952         INapEnforcementClientConnection2* This,
953         PrivateData **privateData);
954 
955     /*** INapEnforcementClientConnection2 methods ***/
956     HRESULT (STDMETHODCALLTYPE *SetIsolationInfoEx)(
957         INapEnforcementClientConnection2* This,
958         const IsolationInfoEx *isolationInfo);
959 
960     HRESULT (STDMETHODCALLTYPE *GetIsolationInfoEx)(
961         INapEnforcementClientConnection2* This,
962         IsolationInfoEx **isolationInfo);
963 
964     HRESULT (STDMETHODCALLTYPE *GetInstalledShvs)(
965         INapEnforcementClientConnection2* This,
966         SystemHealthEntityCount *count,
967         SystemHealthEntityId **ids);
968 
969     HRESULT (STDMETHODCALLTYPE *SetInstalledShvs)(
970         INapEnforcementClientConnection2* This,
971         SystemHealthEntityCount count,
972         SystemHealthEntityId *ids);
973 
974     END_INTERFACE
975 } INapEnforcementClientConnection2Vtbl;
976 interface INapEnforcementClientConnection2 {
977     CONST_VTBL INapEnforcementClientConnection2Vtbl* lpVtbl;
978 };
979 
980 #ifdef COBJMACROS
981 #ifndef WIDL_C_INLINE_WRAPPERS
982 /*** IUnknown methods ***/
983 #define INapEnforcementClientConnection2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
984 #define INapEnforcementClientConnection2_AddRef(This) (This)->lpVtbl->AddRef(This)
985 #define INapEnforcementClientConnection2_Release(This) (This)->lpVtbl->Release(This)
986 /*** INapEnforcementClientConnection methods ***/
987 #define INapEnforcementClientConnection2_Initialize(This,id) (This)->lpVtbl->Initialize(This,id)
988 #define INapEnforcementClientConnection2_SetMaxSize(This,maxSize) (This)->lpVtbl->SetMaxSize(This,maxSize)
989 #define INapEnforcementClientConnection2_GetMaxSize(This,maxSize) (This)->lpVtbl->GetMaxSize(This,maxSize)
990 #define INapEnforcementClientConnection2_SetFlags(This,flags) (This)->lpVtbl->SetFlags(This,flags)
991 #define INapEnforcementClientConnection2_GetFlags(This,flags) (This)->lpVtbl->GetFlags(This,flags)
992 #define INapEnforcementClientConnection2_SetConnectionId(This,connectionId) (This)->lpVtbl->SetConnectionId(This,connectionId)
993 #define INapEnforcementClientConnection2_GetConnectionId(This,connectionId) (This)->lpVtbl->GetConnectionId(This,connectionId)
994 #define INapEnforcementClientConnection2_GetCorrelationId(This,correlationId) (This)->lpVtbl->GetCorrelationId(This,correlationId)
995 #define INapEnforcementClientConnection2_GetStringCorrelationId(This,correlationId) (This)->lpVtbl->GetStringCorrelationId(This,correlationId)
996 #define INapEnforcementClientConnection2_SetCorrelationId(This,correlationId) (This)->lpVtbl->SetCorrelationId(This,correlationId)
997 #define INapEnforcementClientConnection2_SetSoHRequest(This,sohRequest) (This)->lpVtbl->SetSoHRequest(This,sohRequest)
998 #define INapEnforcementClientConnection2_GetSoHRequest(This,sohRequest) (This)->lpVtbl->GetSoHRequest(This,sohRequest)
999 #define INapEnforcementClientConnection2_SetSoHResponse(This,sohResponse) (This)->lpVtbl->SetSoHResponse(This,sohResponse)
1000 #define INapEnforcementClientConnection2_GetSoHResponse(This,sohResponse) (This)->lpVtbl->GetSoHResponse(This,sohResponse)
1001 #define INapEnforcementClientConnection2_SetIsolationInfo(This,isolationInfo) (This)->lpVtbl->SetIsolationInfo(This,isolationInfo)
1002 #define INapEnforcementClientConnection2_GetIsolationInfo(This,isolationInfo) (This)->lpVtbl->GetIsolationInfo(This,isolationInfo)
1003 #define INapEnforcementClientConnection2_SetPrivateData(This,privateData) (This)->lpVtbl->SetPrivateData(This,privateData)
1004 #define INapEnforcementClientConnection2_GetPrivateData(This,privateData) (This)->lpVtbl->GetPrivateData(This,privateData)
1005 #define INapEnforcementClientConnection2_SetEnforcerPrivateData(This,privateData) (This)->lpVtbl->SetEnforcerPrivateData(This,privateData)
1006 #define INapEnforcementClientConnection2_GetEnforcerPrivateData(This,privateData) (This)->lpVtbl->GetEnforcerPrivateData(This,privateData)
1007 /*** INapEnforcementClientConnection2 methods ***/
1008 #define INapEnforcementClientConnection2_SetIsolationInfoEx(This,isolationInfo) (This)->lpVtbl->SetIsolationInfoEx(This,isolationInfo)
1009 #define INapEnforcementClientConnection2_GetIsolationInfoEx(This,isolationInfo) (This)->lpVtbl->GetIsolationInfoEx(This,isolationInfo)
1010 #define INapEnforcementClientConnection2_GetInstalledShvs(This,count,ids) (This)->lpVtbl->GetInstalledShvs(This,count,ids)
1011 #define INapEnforcementClientConnection2_SetInstalledShvs(This,count,ids) (This)->lpVtbl->SetInstalledShvs(This,count,ids)
1012 #else
1013 /*** IUnknown methods ***/
1014 static FORCEINLINE HRESULT INapEnforcementClientConnection2_QueryInterface(INapEnforcementClientConnection2* This,REFIID riid,void **ppvObject) {
1015     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1016 }
1017 static FORCEINLINE ULONG INapEnforcementClientConnection2_AddRef(INapEnforcementClientConnection2* This) {
1018     return This->lpVtbl->AddRef(This);
1019 }
1020 static FORCEINLINE ULONG INapEnforcementClientConnection2_Release(INapEnforcementClientConnection2* This) {
1021     return This->lpVtbl->Release(This);
1022 }
1023 /*** INapEnforcementClientConnection methods ***/
1024 static FORCEINLINE HRESULT INapEnforcementClientConnection2_Initialize(INapEnforcementClientConnection2* This,EnforcementEntityId id) {
1025     return This->lpVtbl->Initialize(This,id);
1026 }
1027 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetMaxSize(INapEnforcementClientConnection2* This,ProtocolMaxSize maxSize) {
1028     return This->lpVtbl->SetMaxSize(This,maxSize);
1029 }
1030 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetMaxSize(INapEnforcementClientConnection2* This,ProtocolMaxSize *maxSize) {
1031     return This->lpVtbl->GetMaxSize(This,maxSize);
1032 }
1033 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetFlags(INapEnforcementClientConnection2* This,UINT8 flags) {
1034     return This->lpVtbl->SetFlags(This,flags);
1035 }
1036 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetFlags(INapEnforcementClientConnection2* This,UINT8 *flags) {
1037     return This->lpVtbl->GetFlags(This,flags);
1038 }
1039 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetConnectionId(INapEnforcementClientConnection2* This,const ConnectionId *connectionId) {
1040     return This->lpVtbl->SetConnectionId(This,connectionId);
1041 }
1042 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetConnectionId(INapEnforcementClientConnection2* This,ConnectionId **connectionId) {
1043     return This->lpVtbl->GetConnectionId(This,connectionId);
1044 }
1045 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetCorrelationId(INapEnforcementClientConnection2* This,CorrelationId *correlationId) {
1046     return This->lpVtbl->GetCorrelationId(This,correlationId);
1047 }
1048 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetStringCorrelationId(INapEnforcementClientConnection2* This,StringCorrelationId **correlationId) {
1049     return This->lpVtbl->GetStringCorrelationId(This,correlationId);
1050 }
1051 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetCorrelationId(INapEnforcementClientConnection2* This,CorrelationId correlationId) {
1052     return This->lpVtbl->SetCorrelationId(This,correlationId);
1053 }
1054 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetSoHRequest(INapEnforcementClientConnection2* This,const NetworkSoHRequest *sohRequest) {
1055     return This->lpVtbl->SetSoHRequest(This,sohRequest);
1056 }
1057 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetSoHRequest(INapEnforcementClientConnection2* This,NetworkSoHRequest **sohRequest) {
1058     return This->lpVtbl->GetSoHRequest(This,sohRequest);
1059 }
1060 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetSoHResponse(INapEnforcementClientConnection2* This,const NetworkSoHResponse *sohResponse) {
1061     return This->lpVtbl->SetSoHResponse(This,sohResponse);
1062 }
1063 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetSoHResponse(INapEnforcementClientConnection2* This,NetworkSoHResponse **sohResponse) {
1064     return This->lpVtbl->GetSoHResponse(This,sohResponse);
1065 }
1066 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetIsolationInfo(INapEnforcementClientConnection2* This,const IsolationInfo *isolationInfo) {
1067     return This->lpVtbl->SetIsolationInfo(This,isolationInfo);
1068 }
1069 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetIsolationInfo(INapEnforcementClientConnection2* This,IsolationInfo **isolationInfo) {
1070     return This->lpVtbl->GetIsolationInfo(This,isolationInfo);
1071 }
1072 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetPrivateData(INapEnforcementClientConnection2* This,const PrivateData *privateData) {
1073     return This->lpVtbl->SetPrivateData(This,privateData);
1074 }
1075 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetPrivateData(INapEnforcementClientConnection2* This,PrivateData **privateData) {
1076     return This->lpVtbl->GetPrivateData(This,privateData);
1077 }
1078 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetEnforcerPrivateData(INapEnforcementClientConnection2* This,const PrivateData *privateData) {
1079     return This->lpVtbl->SetEnforcerPrivateData(This,privateData);
1080 }
1081 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetEnforcerPrivateData(INapEnforcementClientConnection2* This,PrivateData **privateData) {
1082     return This->lpVtbl->GetEnforcerPrivateData(This,privateData);
1083 }
1084 /*** INapEnforcementClientConnection2 methods ***/
1085 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetIsolationInfoEx(INapEnforcementClientConnection2* This,const IsolationInfoEx *isolationInfo) {
1086     return This->lpVtbl->SetIsolationInfoEx(This,isolationInfo);
1087 }
1088 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetIsolationInfoEx(INapEnforcementClientConnection2* This,IsolationInfoEx **isolationInfo) {
1089     return This->lpVtbl->GetIsolationInfoEx(This,isolationInfo);
1090 }
1091 static FORCEINLINE HRESULT INapEnforcementClientConnection2_GetInstalledShvs(INapEnforcementClientConnection2* This,SystemHealthEntityCount *count,SystemHealthEntityId **ids) {
1092     return This->lpVtbl->GetInstalledShvs(This,count,ids);
1093 }
1094 static FORCEINLINE HRESULT INapEnforcementClientConnection2_SetInstalledShvs(INapEnforcementClientConnection2* This,SystemHealthEntityCount count,SystemHealthEntityId *ids) {
1095     return This->lpVtbl->SetInstalledShvs(This,count,ids);
1096 }
1097 #endif
1098 #endif
1099 
1100 #endif
1101 
1102 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection2_SetIsolationInfoEx_Proxy(
1103     INapEnforcementClientConnection2* This,
1104     const IsolationInfoEx *isolationInfo);
1105 void __RPC_STUB INapEnforcementClientConnection2_SetIsolationInfoEx_Stub(
1106     IRpcStubBuffer* This,
1107     IRpcChannelBuffer* pRpcChannelBuffer,
1108     PRPC_MESSAGE pRpcMessage,
1109     DWORD* pdwStubPhase);
1110 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection2_GetIsolationInfoEx_Proxy(
1111     INapEnforcementClientConnection2* This,
1112     IsolationInfoEx **isolationInfo);
1113 void __RPC_STUB INapEnforcementClientConnection2_GetIsolationInfoEx_Stub(
1114     IRpcStubBuffer* This,
1115     IRpcChannelBuffer* pRpcChannelBuffer,
1116     PRPC_MESSAGE pRpcMessage,
1117     DWORD* pdwStubPhase);
1118 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection2_GetInstalledShvs_Proxy(
1119     INapEnforcementClientConnection2* This,
1120     SystemHealthEntityCount *count,
1121     SystemHealthEntityId **ids);
1122 void __RPC_STUB INapEnforcementClientConnection2_GetInstalledShvs_Stub(
1123     IRpcStubBuffer* This,
1124     IRpcChannelBuffer* pRpcChannelBuffer,
1125     PRPC_MESSAGE pRpcMessage,
1126     DWORD* pdwStubPhase);
1127 HRESULT STDMETHODCALLTYPE INapEnforcementClientConnection2_SetInstalledShvs_Proxy(
1128     INapEnforcementClientConnection2* This,
1129     SystemHealthEntityCount count,
1130     SystemHealthEntityId *ids);
1131 void __RPC_STUB INapEnforcementClientConnection2_SetInstalledShvs_Stub(
1132     IRpcStubBuffer* This,
1133     IRpcChannelBuffer* pRpcChannelBuffer,
1134     PRPC_MESSAGE pRpcMessage,
1135     DWORD* pdwStubPhase);
1136 
1137 #endif  /* __INapEnforcementClientConnection2_INTERFACE_DEFINED__ */
1138 
1139 EXTERN_C const CLSID CLSID_NapEnforcementClientBinding;
1140 #endif
1141 /* Begin additional prototypes for all interfaces */
1142 
1143 
1144 /* End additional prototypes */
1145 
1146 #ifdef __cplusplus
1147 }
1148 #endif
1149 
1150 #endif /* __napenforcementclient_h__ */
1151