|
|
|
1 |
|
|
2 |
|
|
3 |
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */ |
4 |
|
|
5 |
|
|
6 |
|
/* File created by MIDL compiler version 7.00.0499 */ |
7 |
|
/* Compiler settings for objsafe.idl: |
8 |
|
Oicf, W1, Zp8, env=Win32 (32b run) |
9 |
|
protocol : dce , ms_ext, c_ext, robust |
10 |
|
error checks: allocation ref bounds_check enum stub_data |
11 |
|
VC __declspec() decoration level: |
12 |
|
__declspec(uuid()), __declspec(selectany), __declspec(novtable) |
13 |
|
DECLSPEC_UUID(), MIDL_INTERFACE() |
14 |
|
*/ |
15 |
|
//@@MIDL_FILE_HEADING( ) |
16 |
|
|
17 |
|
#pragma warning( disable: 4049 ) /* more than 64k source lines */ |
18 |
|
|
19 |
|
|
20 |
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/ |
21 |
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__ |
22 |
|
#define __REQUIRED_RPCNDR_H_VERSION__ 475 |
23 |
|
#endif |
24 |
|
|
25 |
|
/* verify that the <rpcsal.h> version is high enough to compile this file*/ |
26 |
|
#ifndef __REQUIRED_RPCSAL_H_VERSION__ |
27 |
|
#define __REQUIRED_RPCSAL_H_VERSION__ 100 |
28 |
|
#endif |
29 |
|
|
30 |
|
#include "rpc.h" |
31 |
|
#include "rpcndr.h" |
32 |
|
|
33 |
|
#ifndef __RPCNDR_H_VERSION__ |
34 |
|
#error this stub requires an updated version of <rpcndr.h> |
35 |
|
#endif // __RPCNDR_H_VERSION__ |
36 |
|
|
37 |
|
#ifndef COM_NO_WINDOWS_H |
38 |
|
#include "windows.h" |
39 |
|
#include "ole2.h" |
40 |
|
#endif /*COM_NO_WINDOWS_H*/ |
41 |
|
|
42 |
|
#ifndef __objsafe_h__ |
43 |
|
#define __objsafe_h__ |
44 |
|
|
45 |
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020) |
46 |
|
#pragma once |
47 |
|
#endif |
48 |
|
|
49 |
|
/* Forward Declarations */ |
50 |
|
|
51 |
|
#ifndef __IObjectSafety_FWD_DEFINED__ |
52 |
|
#define __IObjectSafety_FWD_DEFINED__ |
53 |
|
typedef interface IObjectSafety IObjectSafety; |
54 |
|
#endif /* __IObjectSafety_FWD_DEFINED__ */ |
55 |
|
|
56 |
|
|
57 |
|
/* header files for imported files */ |
58 |
|
#include "unknwn.h" |
59 |
|
|
60 |
|
#ifdef __cplusplus |
61 |
|
extern "C"{ |
62 |
|
#endif |
63 |
|
|
64 |
|
|
65 |
|
/* interface __MIDL_itf_objsafe_0000_0000 */ |
66 |
|
/* [local] */ |
67 |
|
|
68 |
|
//=--------------------------------------------------------------------------= |
69 |
|
// ObjSafe.h |
70 |
|
//=--------------------------------------------------------------------------= |
71 |
|
// (C) Copyright 1995-1998 Microsoft Corporation. All Rights Reserved. |
72 |
|
// |
73 |
|
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF |
74 |
|
// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO |
75 |
|
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A |
76 |
|
// PARTICULAR PURPOSE. |
77 |
|
//=--------------------------------------------------------------------------= |
78 |
|
|
79 |
|
#pragma comment(lib,"uuid.lib") |
80 |
|
|
81 |
|
//---------------------------------------------------------------------------= |
82 |
|
// Object Safety Interfaces. |
83 |
|
|
84 |
|
//+--------------------------------------------------------------------------= |
85 |
|
// |
86 |
|
// Contents: IObjectSafety definition |
87 |
|
// |
88 |
|
// |
89 |
|
// IObjectSafety should be implemented by objects that have interfaces which |
90 |
|
// support "untrusted" clients (for example, scripts). It allows the owner of |
91 |
|
// the object to specify which interfaces need to be protected from untrusted |
92 |
|
// use. Examples of interfaces that might be protected in this way are: |
93 |
|
// |
94 |
|
// IID_IDispatch - "Safe for automating with untrusted automation client or script" |
95 |
|
// IID_IPersist* - "Safe for initializing with untrusted data" |
96 |
|
// IID_IActiveScript - "Safe for running untrusted scripts" |
97 |
|
// |
98 |
|
//---------------------------------------------------------------------------= |
99 |
|
#ifndef _LPSAFEOBJECT_DEFINED |
100 |
|
#define _LPSAFEOBJECT_DEFINED |
101 |
|
|
102 |
|
// Option bit definitions for IObjectSafety: |
103 |
|
#define INTERFACESAFE_FOR_UNTRUSTED_CALLER 0x00000001 // Caller of interface may be untrusted |
104 |
|
#define INTERFACESAFE_FOR_UNTRUSTED_DATA 0x00000002 // Data passed into interface may be untrusted |
105 |
|
#define INTERFACE_USES_DISPEX 0x00000004 // Object knows to use IDispatchEx |
106 |
|
#define INTERFACE_USES_SECURITY_MANAGER 0x00000008 // Object knows to use IInternetHostSecurityManager |
107 |
|
|
108 |
|
// {CB5BDC81-93C1-11cf-8F20-00805F2CD064} |
109 |
|
DEFINE_GUID(IID_IObjectSafety, 0xcb5bdc81, 0x93c1, 0x11cf, 0x8f, 0x20, 0x0, 0x80, 0x5f, 0x2c, 0xd0, 0x64); |
110 |
|
EXTERN_C GUID CATID_SafeForScripting; |
111 |
|
EXTERN_C GUID CATID_SafeForInitializing; |
112 |
|
|
113 |
|
|
114 |
|
|
115 |
|
extern RPC_IF_HANDLE __MIDL_itf_objsafe_0000_0000_v0_0_c_ifspec; |
116 |
|
extern RPC_IF_HANDLE __MIDL_itf_objsafe_0000_0000_v0_0_s_ifspec; |
117 |
|
|
118 |
|
#ifndef __IObjectSafety_INTERFACE_DEFINED__ |
119 |
|
#define __IObjectSafety_INTERFACE_DEFINED__ |
120 |
|
|
121 |
|
/* interface IObjectSafety */ |
122 |
|
/* [unique][uuid][object] */ |
123 |
|
|
124 |
|
|
125 |
|
EXTERN_C const IID IID_IObjectSafety; |
136 |
|
/* [out] */ __RPC__out DWORD *pdwEnabledOptions) = 0; |
137 |
|
|
138 |
|
virtual HRESULT STDMETHODCALLTYPE SetInterfaceSafetyOptions( |
139 |
|
/* [in] */ __RPC__in REFIID riid, |
140 |
|
/* [in] */ DWORD dwOptionSetMask, |
141 |
|
/* [in] */ DWORD dwEnabledOptions) = 0; |
142 |
|
|
143 |
|
}; |
144 |
|
|
145 |
|
#else /* C style interface */ |
146 |
|
|
147 |
|
typedef struct IObjectSafetyVtbl |
148 |
|
{ |
149 |
|
BEGIN_INTERFACE |
150 |
|
|
151 |
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( |
152 |
|
IObjectSafety * This, |
153 |
|
/* [in] */ __RPC__in REFIID riid, |
154 |
|
/* [iid_is][out] */ |
155 |
|
__RPC__deref_out void **ppvObject); |
156 |
|
|
157 |
|
ULONG ( STDMETHODCALLTYPE *AddRef )( |
158 |
|
IObjectSafety * This); |
159 |
|
|
160 |
|
ULONG ( STDMETHODCALLTYPE *Release )( |
161 |
|
IObjectSafety * This); |
162 |
|
|
163 |
|
HRESULT ( STDMETHODCALLTYPE *GetInterfaceSafetyOptions )( |
164 |
|
IObjectSafety * This, |
165 |
|
/* [in] */ __RPC__in REFIID riid, |
166 |
|
/* [out] */ __RPC__out DWORD *pdwSupportedOptions, |
167 |
|
/* [out] */ __RPC__out DWORD *pdwEnabledOptions); |
168 |
|
|
169 |
|
HRESULT ( STDMETHODCALLTYPE *SetInterfaceSafetyOptions )( |
170 |
|
IObjectSafety * This, |
171 |
|
/* [in] */ __RPC__in REFIID riid, |
172 |
|
/* [in] */ DWORD dwOptionSetMask, |
173 |
|
/* [in] */ DWORD dwEnabledOptions); |
174 |
|
|
175 |
|
END_INTERFACE |
176 |
|
} IObjectSafetyVtbl; |
177 |
|
|
178 |
|
interface IObjectSafety |
179 |
|
{ |
180 |
|
CONST_VTBL struct IObjectSafetyVtbl *lpVtbl; |
181 |
|
}; |
182 |
|
|
183 |
|
|
184 |
|
|
185 |
|
#ifdef COBJMACROS |
186 |
|
|
187 |
|
|
188 |
|
#define IObjectSafety_QueryInterface(This,riid,ppvObject) \ |
189 |
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) |
190 |
|
|
191 |
|
#define IObjectSafety_AddRef(This) \ |
192 |
|
( (This)->lpVtbl -> AddRef(This) ) |
193 |
|
|
194 |
|
#define IObjectSafety_Release(This) \ |
195 |
|
( (This)->lpVtbl -> Release(This) ) |
196 |
|
|
197 |
|
|
198 |
|
#define IObjectSafety_GetInterfaceSafetyOptions(This,riid,pdwSupportedOptions,pdwEnabledOptions) \ |
199 |
|
( (This)->lpVtbl -> GetInterfaceSafetyOptions(This,riid,pdwSupportedOptions,pdwEnabledOptions) ) |
200 |
|
|
201 |
|
#define IObjectSafety_SetInterfaceSafetyOptions(This,riid,dwOptionSetMask,dwEnabledOptions) \ |
202 |
|
( (This)->lpVtbl -> SetInterfaceSafetyOptions(This,riid,dwOptionSetMask,dwEnabledOptions) ) |
203 |
|
|
204 |
|
#endif /* COBJMACROS */ |
205 |
|
|
206 |
|
|
207 |
|
#endif /* C style interface */ |
208 |
|
|
209 |
|
|
210 |
|
|
211 |
|
|
212 |
|
#endif /* __IObjectSafety_INTERFACE_DEFINED__ */ |
213 |
|
|
214 |
|
|
215 |
|
/* interface __MIDL_itf_objsafe_0000_0001 */ |
216 |
|
/* [local] */ |
217 |
|
|
218 |
|
typedef /* [unique] */ __RPC_unique_pointer IObjectSafety *LPOBJECTSAFETY; |
219 |
|
|
220 |
|
#endif |
221 |
|
|
222 |
|
|
223 |
|
extern RPC_IF_HANDLE __MIDL_itf_objsafe_0000_0001_v0_0_c_ifspec; |
224 |
|
extern RPC_IF_HANDLE __MIDL_itf_objsafe_0000_0001_v0_0_s_ifspec; |
225 |
|
|
226 |
|
/* Additional Prototypes for ALL interfaces */ |
227 |
|
|
228 |
|
/* end of Additional Prototypes */ |
229 |
|
|
230 |
|
#ifdef __cplusplus |
231 |
|
} |
232 |
|
#endif |
233 |
|
|
234 |
|
#endif |
235 |
|
|
236 |
|
|
237 |
|
|
238 |
|
|
|
|
|