1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/caps/idl/nsIScriptSecurityManager.idl
3 : */
4 :
5 : #ifndef __gen_nsIScriptSecurityManager_h__
6 : #define __gen_nsIScriptSecurityManager_h__
7 :
8 :
9 : #ifndef __gen_nsISupports_h__
10 : #include "nsISupports.h"
11 : #endif
12 :
13 : #ifndef __gen_nsIPrincipal_h__
14 : #include "nsIPrincipal.h"
15 : #endif
16 :
17 : #ifndef __gen_nsIXPCSecurityManager_h__
18 : #include "nsIXPCSecurityManager.h"
19 : #endif
20 :
21 : /* For IDL files that don't want to include root IDL files. */
22 : #ifndef NS_NO_VTABLE
23 : #define NS_NO_VTABLE
24 : #endif
25 : class nsIURI; /* forward declaration */
26 :
27 : class nsIChannel; /* forward declaration */
28 :
29 :
30 : /* starting interface: nsIScriptSecurityManager */
31 : #define NS_ISCRIPTSECURITYMANAGER_IID_STR "50eda256-4dd2-4c7c-baed-96983910af9f"
32 :
33 : #define NS_ISCRIPTSECURITYMANAGER_IID \
34 : {0x50eda256, 0x4dd2, 0x4c7c, \
35 : { 0xba, 0xed, 0x96, 0x98, 0x39, 0x10, 0xaf, 0x9f }}
36 :
37 2791 : class NS_NO_VTABLE NS_SCRIPTABLE nsIScriptSecurityManager : public nsIXPCSecurityManager {
38 : public:
39 :
40 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISCRIPTSECURITYMANAGER_IID)
41 :
42 : /* [noscript] void checkPropertyAccess (in JSContextPtr aJSContext, in JSObjectPtr aJSObject, in string aClassName, in jsid aProperty, in PRUint32 aAction); */
43 : NS_IMETHOD CheckPropertyAccess(JSContext *aJSContext, JSObject *aJSObject, const char * aClassName, jsid aProperty, PRUint32 aAction) = 0;
44 :
45 : /* [noscript] void checkLoadURIFromScript (in JSContextPtr cx, in nsIURI uri); */
46 : NS_IMETHOD CheckLoadURIFromScript(JSContext *cx, nsIURI *uri) = 0;
47 :
48 : enum {
49 : STANDARD = 0U,
50 : LOAD_IS_AUTOMATIC_DOCUMENT_REPLACEMENT = 1U,
51 : ALLOW_CHROME = 2U,
52 : DISALLOW_INHERIT_PRINCIPAL = 4U,
53 : DISALLOW_SCRIPT_OR_DATA = 4U,
54 : DISALLOW_SCRIPT = 8U
55 : };
56 :
57 : /* void checkLoadURIWithPrincipal (in nsIPrincipal aPrincipal, in nsIURI uri, in unsigned long flags); */
58 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIWithPrincipal(nsIPrincipal *aPrincipal, nsIURI *uri, PRUint32 flags) = 0;
59 :
60 : /* [deprecated] void checkLoadURI (in nsIURI from, in nsIURI uri, in unsigned long flags); */
61 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURI(nsIURI *from, nsIURI *uri, PRUint32 flags) = 0;
62 :
63 : /* void checkLoadURIStrWithPrincipal (in nsIPrincipal aPrincipal, in AUTF8String uri, in unsigned long flags); */
64 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStrWithPrincipal(nsIPrincipal *aPrincipal, const nsACString & uri, PRUint32 flags) = 0;
65 :
66 : /* [deprecated] void checkLoadURIStr (in AUTF8String from, in AUTF8String uri, in unsigned long flags); */
67 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStr(const nsACString & from, const nsACString & uri, PRUint32 flags) = 0;
68 :
69 : /* [noscript] void checkFunctionAccess (in JSContextPtr cx, in voidPtr funObj, in voidPtr targetObj); */
70 : NS_IMETHOD CheckFunctionAccess(JSContext *cx, void *funObj, void *targetObj) = 0;
71 :
72 : /* [noscript] boolean canExecuteScripts (in JSContextPtr cx, in nsIPrincipal principal); */
73 : NS_IMETHOD CanExecuteScripts(JSContext *cx, nsIPrincipal *principal, bool *_retval NS_OUTPARAM) = 0;
74 :
75 : /* [noscript] nsIPrincipal getSubjectPrincipal (); */
76 : NS_IMETHOD GetSubjectPrincipal(nsIPrincipal * *_retval NS_OUTPARAM) = 0;
77 :
78 : /* nsIPrincipal getSystemPrincipal (); */
79 : NS_SCRIPTABLE NS_IMETHOD GetSystemPrincipal(nsIPrincipal * *_retval NS_OUTPARAM) = 0;
80 :
81 : /* [noscript] nsIPrincipal getCertificatePrincipal (in AUTF8String aCertFingerprint, in AUTF8String aSubjectName, in AUTF8String aPrettyName, in nsISupports aCert, in nsIURI aURI); */
82 : NS_IMETHOD GetCertificatePrincipal(const nsACString & aCertFingerprint, const nsACString & aSubjectName, const nsACString & aPrettyName, nsISupports *aCert, nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM) = 0;
83 :
84 : /* nsIPrincipal getCodebasePrincipal (in nsIURI aURI); */
85 : NS_SCRIPTABLE NS_IMETHOD GetCodebasePrincipal(nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM) = 0;
86 :
87 : /* [noscript] short requestCapability (in nsIPrincipal principal, in string capability); */
88 : NS_IMETHOD RequestCapability(nsIPrincipal *principal, const char * capability, PRInt16 *_retval NS_OUTPARAM) = 0;
89 :
90 : /* boolean isCapabilityEnabled (in string capability); */
91 : NS_SCRIPTABLE NS_IMETHOD IsCapabilityEnabled(const char * capability, bool *_retval NS_OUTPARAM) = 0;
92 :
93 : /* void enableCapability (in string capability); */
94 : NS_SCRIPTABLE NS_IMETHOD EnableCapability(const char * capability) = 0;
95 :
96 : /* void revertCapability (in string capability); */
97 : NS_SCRIPTABLE NS_IMETHOD RevertCapability(const char * capability) = 0;
98 :
99 : /* void disableCapability (in string capability); */
100 : NS_SCRIPTABLE NS_IMETHOD DisableCapability(const char * capability) = 0;
101 :
102 : /* void setCanEnableCapability (in AUTF8String certificateFingerprint, in string capability, in short canEnable); */
103 : NS_SCRIPTABLE NS_IMETHOD SetCanEnableCapability(const nsACString & certificateFingerprint, const char * capability, PRInt16 canEnable) = 0;
104 :
105 : /* [noscript] nsIPrincipal getObjectPrincipal (in JSContextPtr cx, in JSObjectPtr obj); */
106 : NS_IMETHOD GetObjectPrincipal(JSContext *cx, JSObject *obj, nsIPrincipal * *_retval NS_OUTPARAM) = 0;
107 :
108 : /* [noscript] boolean subjectPrincipalIsSystem (); */
109 : NS_IMETHOD SubjectPrincipalIsSystem(bool *_retval NS_OUTPARAM) = 0;
110 :
111 : /* [noscript] void checkSameOrigin (in JSContextPtr aJSContext, in nsIURI aTargetURI); */
112 : NS_IMETHOD CheckSameOrigin(JSContext *aJSContext, nsIURI *aTargetURI) = 0;
113 :
114 : /* void checkSameOriginURI (in nsIURI aSourceURI, in nsIURI aTargetURI, in boolean reportError); */
115 : NS_SCRIPTABLE NS_IMETHOD CheckSameOriginURI(nsIURI *aSourceURI, nsIURI *aTargetURI, bool reportError) = 0;
116 :
117 : /* [noscript] nsIPrincipal getPrincipalFromContext (in JSContextPtr cx); */
118 : NS_IMETHOD GetPrincipalFromContext(JSContext *cx, nsIPrincipal * *_retval NS_OUTPARAM) = 0;
119 :
120 : /* nsIPrincipal getChannelPrincipal (in nsIChannel aChannel); */
121 : NS_SCRIPTABLE NS_IMETHOD GetChannelPrincipal(nsIChannel *aChannel, nsIPrincipal * *_retval NS_OUTPARAM) = 0;
122 :
123 : /* boolean isSystemPrincipal (in nsIPrincipal aPrincipal); */
124 : NS_SCRIPTABLE NS_IMETHOD IsSystemPrincipal(nsIPrincipal *aPrincipal, bool *_retval NS_OUTPARAM) = 0;
125 :
126 : /* [noscript,notxpcom] nsIPrincipal getCxSubjectPrincipal (in JSContextPtr cx); */
127 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipal(JSContext *cx) = 0;
128 :
129 : /* [noscript,notxpcom] nsIPrincipal getCxSubjectPrincipalAndFrame (in JSContextPtr cx, out JSStackFramePtr fp); */
130 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipalAndFrame(JSContext *cx, JSStackFrame **fp NS_OUTPARAM) = 0;
131 :
132 : /* [noscript] void pushContextPrincipal (in JSContextPtr cx, in JSStackFramePtr fp, in nsIPrincipal principal); */
133 : NS_IMETHOD PushContextPrincipal(JSContext *cx, JSStackFrame *fp, nsIPrincipal *principal) = 0;
134 :
135 : /* [noscript] void popContextPrincipal (in JSContextPtr cx); */
136 : NS_IMETHOD PopContextPrincipal(JSContext *cx) = 0;
137 :
138 : };
139 :
140 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIScriptSecurityManager, NS_ISCRIPTSECURITYMANAGER_IID)
141 :
142 : /* Use this macro when declaring classes that implement this interface. */
143 : #define NS_DECL_NSISCRIPTSECURITYMANAGER \
144 : NS_IMETHOD CheckPropertyAccess(JSContext *aJSContext, JSObject *aJSObject, const char * aClassName, jsid aProperty, PRUint32 aAction); \
145 : NS_IMETHOD CheckLoadURIFromScript(JSContext *cx, nsIURI *uri); \
146 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIWithPrincipal(nsIPrincipal *aPrincipal, nsIURI *uri, PRUint32 flags); \
147 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURI(nsIURI *from, nsIURI *uri, PRUint32 flags); \
148 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStrWithPrincipal(nsIPrincipal *aPrincipal, const nsACString & uri, PRUint32 flags); \
149 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStr(const nsACString & from, const nsACString & uri, PRUint32 flags); \
150 : NS_IMETHOD CheckFunctionAccess(JSContext *cx, void *funObj, void *targetObj); \
151 : NS_IMETHOD CanExecuteScripts(JSContext *cx, nsIPrincipal *principal, bool *_retval NS_OUTPARAM); \
152 : NS_IMETHOD GetSubjectPrincipal(nsIPrincipal * *_retval NS_OUTPARAM); \
153 : NS_SCRIPTABLE NS_IMETHOD GetSystemPrincipal(nsIPrincipal * *_retval NS_OUTPARAM); \
154 : NS_IMETHOD GetCertificatePrincipal(const nsACString & aCertFingerprint, const nsACString & aSubjectName, const nsACString & aPrettyName, nsISupports *aCert, nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM); \
155 : NS_SCRIPTABLE NS_IMETHOD GetCodebasePrincipal(nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM); \
156 : NS_IMETHOD RequestCapability(nsIPrincipal *principal, const char * capability, PRInt16 *_retval NS_OUTPARAM); \
157 : NS_SCRIPTABLE NS_IMETHOD IsCapabilityEnabled(const char * capability, bool *_retval NS_OUTPARAM); \
158 : NS_SCRIPTABLE NS_IMETHOD EnableCapability(const char * capability); \
159 : NS_SCRIPTABLE NS_IMETHOD RevertCapability(const char * capability); \
160 : NS_SCRIPTABLE NS_IMETHOD DisableCapability(const char * capability); \
161 : NS_SCRIPTABLE NS_IMETHOD SetCanEnableCapability(const nsACString & certificateFingerprint, const char * capability, PRInt16 canEnable); \
162 : NS_IMETHOD GetObjectPrincipal(JSContext *cx, JSObject *obj, nsIPrincipal * *_retval NS_OUTPARAM); \
163 : NS_IMETHOD SubjectPrincipalIsSystem(bool *_retval NS_OUTPARAM); \
164 : NS_IMETHOD CheckSameOrigin(JSContext *aJSContext, nsIURI *aTargetURI); \
165 : NS_SCRIPTABLE NS_IMETHOD CheckSameOriginURI(nsIURI *aSourceURI, nsIURI *aTargetURI, bool reportError); \
166 : NS_IMETHOD GetPrincipalFromContext(JSContext *cx, nsIPrincipal * *_retval NS_OUTPARAM); \
167 : NS_SCRIPTABLE NS_IMETHOD GetChannelPrincipal(nsIChannel *aChannel, nsIPrincipal * *_retval NS_OUTPARAM); \
168 : NS_SCRIPTABLE NS_IMETHOD IsSystemPrincipal(nsIPrincipal *aPrincipal, bool *_retval NS_OUTPARAM); \
169 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipal(JSContext *cx); \
170 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipalAndFrame(JSContext *cx, JSStackFrame **fp NS_OUTPARAM); \
171 : NS_IMETHOD PushContextPrincipal(JSContext *cx, JSStackFrame *fp, nsIPrincipal *principal); \
172 : NS_IMETHOD PopContextPrincipal(JSContext *cx);
173 :
174 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
175 : #define NS_FORWARD_NSISCRIPTSECURITYMANAGER(_to) \
176 : NS_IMETHOD CheckPropertyAccess(JSContext *aJSContext, JSObject *aJSObject, const char * aClassName, jsid aProperty, PRUint32 aAction) { return _to CheckPropertyAccess(aJSContext, aJSObject, aClassName, aProperty, aAction); } \
177 : NS_IMETHOD CheckLoadURIFromScript(JSContext *cx, nsIURI *uri) { return _to CheckLoadURIFromScript(cx, uri); } \
178 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIWithPrincipal(nsIPrincipal *aPrincipal, nsIURI *uri, PRUint32 flags) { return _to CheckLoadURIWithPrincipal(aPrincipal, uri, flags); } \
179 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURI(nsIURI *from, nsIURI *uri, PRUint32 flags) { return _to CheckLoadURI(from, uri, flags); } \
180 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStrWithPrincipal(nsIPrincipal *aPrincipal, const nsACString & uri, PRUint32 flags) { return _to CheckLoadURIStrWithPrincipal(aPrincipal, uri, flags); } \
181 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStr(const nsACString & from, const nsACString & uri, PRUint32 flags) { return _to CheckLoadURIStr(from, uri, flags); } \
182 : NS_IMETHOD CheckFunctionAccess(JSContext *cx, void *funObj, void *targetObj) { return _to CheckFunctionAccess(cx, funObj, targetObj); } \
183 : NS_IMETHOD CanExecuteScripts(JSContext *cx, nsIPrincipal *principal, bool *_retval NS_OUTPARAM) { return _to CanExecuteScripts(cx, principal, _retval); } \
184 : NS_IMETHOD GetSubjectPrincipal(nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetSubjectPrincipal(_retval); } \
185 : NS_SCRIPTABLE NS_IMETHOD GetSystemPrincipal(nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetSystemPrincipal(_retval); } \
186 : NS_IMETHOD GetCertificatePrincipal(const nsACString & aCertFingerprint, const nsACString & aSubjectName, const nsACString & aPrettyName, nsISupports *aCert, nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetCertificatePrincipal(aCertFingerprint, aSubjectName, aPrettyName, aCert, aURI, _retval); } \
187 : NS_SCRIPTABLE NS_IMETHOD GetCodebasePrincipal(nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetCodebasePrincipal(aURI, _retval); } \
188 : NS_IMETHOD RequestCapability(nsIPrincipal *principal, const char * capability, PRInt16 *_retval NS_OUTPARAM) { return _to RequestCapability(principal, capability, _retval); } \
189 : NS_SCRIPTABLE NS_IMETHOD IsCapabilityEnabled(const char * capability, bool *_retval NS_OUTPARAM) { return _to IsCapabilityEnabled(capability, _retval); } \
190 : NS_SCRIPTABLE NS_IMETHOD EnableCapability(const char * capability) { return _to EnableCapability(capability); } \
191 : NS_SCRIPTABLE NS_IMETHOD RevertCapability(const char * capability) { return _to RevertCapability(capability); } \
192 : NS_SCRIPTABLE NS_IMETHOD DisableCapability(const char * capability) { return _to DisableCapability(capability); } \
193 : NS_SCRIPTABLE NS_IMETHOD SetCanEnableCapability(const nsACString & certificateFingerprint, const char * capability, PRInt16 canEnable) { return _to SetCanEnableCapability(certificateFingerprint, capability, canEnable); } \
194 : NS_IMETHOD GetObjectPrincipal(JSContext *cx, JSObject *obj, nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetObjectPrincipal(cx, obj, _retval); } \
195 : NS_IMETHOD SubjectPrincipalIsSystem(bool *_retval NS_OUTPARAM) { return _to SubjectPrincipalIsSystem(_retval); } \
196 : NS_IMETHOD CheckSameOrigin(JSContext *aJSContext, nsIURI *aTargetURI) { return _to CheckSameOrigin(aJSContext, aTargetURI); } \
197 : NS_SCRIPTABLE NS_IMETHOD CheckSameOriginURI(nsIURI *aSourceURI, nsIURI *aTargetURI, bool reportError) { return _to CheckSameOriginURI(aSourceURI, aTargetURI, reportError); } \
198 : NS_IMETHOD GetPrincipalFromContext(JSContext *cx, nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetPrincipalFromContext(cx, _retval); } \
199 : NS_SCRIPTABLE NS_IMETHOD GetChannelPrincipal(nsIChannel *aChannel, nsIPrincipal * *_retval NS_OUTPARAM) { return _to GetChannelPrincipal(aChannel, _retval); } \
200 : NS_SCRIPTABLE NS_IMETHOD IsSystemPrincipal(nsIPrincipal *aPrincipal, bool *_retval NS_OUTPARAM) { return _to IsSystemPrincipal(aPrincipal, _retval); } \
201 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipal(JSContext *cx) { return _to GetCxSubjectPrincipal(cx); } \
202 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipalAndFrame(JSContext *cx, JSStackFrame **fp NS_OUTPARAM) { return _to GetCxSubjectPrincipalAndFrame(cx, fp); } \
203 : NS_IMETHOD PushContextPrincipal(JSContext *cx, JSStackFrame *fp, nsIPrincipal *principal) { return _to PushContextPrincipal(cx, fp, principal); } \
204 : NS_IMETHOD PopContextPrincipal(JSContext *cx) { return _to PopContextPrincipal(cx); }
205 :
206 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
207 : #define NS_FORWARD_SAFE_NSISCRIPTSECURITYMANAGER(_to) \
208 : NS_IMETHOD CheckPropertyAccess(JSContext *aJSContext, JSObject *aJSObject, const char * aClassName, jsid aProperty, PRUint32 aAction) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckPropertyAccess(aJSContext, aJSObject, aClassName, aProperty, aAction); } \
209 : NS_IMETHOD CheckLoadURIFromScript(JSContext *cx, nsIURI *uri) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckLoadURIFromScript(cx, uri); } \
210 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIWithPrincipal(nsIPrincipal *aPrincipal, nsIURI *uri, PRUint32 flags) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckLoadURIWithPrincipal(aPrincipal, uri, flags); } \
211 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURI(nsIURI *from, nsIURI *uri, PRUint32 flags) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckLoadURI(from, uri, flags); } \
212 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStrWithPrincipal(nsIPrincipal *aPrincipal, const nsACString & uri, PRUint32 flags) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckLoadURIStrWithPrincipal(aPrincipal, uri, flags); } \
213 : NS_SCRIPTABLE NS_IMETHOD CheckLoadURIStr(const nsACString & from, const nsACString & uri, PRUint32 flags) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckLoadURIStr(from, uri, flags); } \
214 : NS_IMETHOD CheckFunctionAccess(JSContext *cx, void *funObj, void *targetObj) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckFunctionAccess(cx, funObj, targetObj); } \
215 : NS_IMETHOD CanExecuteScripts(JSContext *cx, nsIPrincipal *principal, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CanExecuteScripts(cx, principal, _retval); } \
216 : NS_IMETHOD GetSubjectPrincipal(nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSubjectPrincipal(_retval); } \
217 : NS_SCRIPTABLE NS_IMETHOD GetSystemPrincipal(nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSystemPrincipal(_retval); } \
218 : NS_IMETHOD GetCertificatePrincipal(const nsACString & aCertFingerprint, const nsACString & aSubjectName, const nsACString & aPrettyName, nsISupports *aCert, nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCertificatePrincipal(aCertFingerprint, aSubjectName, aPrettyName, aCert, aURI, _retval); } \
219 : NS_SCRIPTABLE NS_IMETHOD GetCodebasePrincipal(nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCodebasePrincipal(aURI, _retval); } \
220 : NS_IMETHOD RequestCapability(nsIPrincipal *principal, const char * capability, PRInt16 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->RequestCapability(principal, capability, _retval); } \
221 : NS_SCRIPTABLE NS_IMETHOD IsCapabilityEnabled(const char * capability, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsCapabilityEnabled(capability, _retval); } \
222 : NS_SCRIPTABLE NS_IMETHOD EnableCapability(const char * capability) { return !_to ? NS_ERROR_NULL_POINTER : _to->EnableCapability(capability); } \
223 : NS_SCRIPTABLE NS_IMETHOD RevertCapability(const char * capability) { return !_to ? NS_ERROR_NULL_POINTER : _to->RevertCapability(capability); } \
224 : NS_SCRIPTABLE NS_IMETHOD DisableCapability(const char * capability) { return !_to ? NS_ERROR_NULL_POINTER : _to->DisableCapability(capability); } \
225 : NS_SCRIPTABLE NS_IMETHOD SetCanEnableCapability(const nsACString & certificateFingerprint, const char * capability, PRInt16 canEnable) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCanEnableCapability(certificateFingerprint, capability, canEnable); } \
226 : NS_IMETHOD GetObjectPrincipal(JSContext *cx, JSObject *obj, nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetObjectPrincipal(cx, obj, _retval); } \
227 : NS_IMETHOD SubjectPrincipalIsSystem(bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->SubjectPrincipalIsSystem(_retval); } \
228 : NS_IMETHOD CheckSameOrigin(JSContext *aJSContext, nsIURI *aTargetURI) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckSameOrigin(aJSContext, aTargetURI); } \
229 : NS_SCRIPTABLE NS_IMETHOD CheckSameOriginURI(nsIURI *aSourceURI, nsIURI *aTargetURI, bool reportError) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckSameOriginURI(aSourceURI, aTargetURI, reportError); } \
230 : NS_IMETHOD GetPrincipalFromContext(JSContext *cx, nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPrincipalFromContext(cx, _retval); } \
231 : NS_SCRIPTABLE NS_IMETHOD GetChannelPrincipal(nsIChannel *aChannel, nsIPrincipal * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetChannelPrincipal(aChannel, _retval); } \
232 : NS_SCRIPTABLE NS_IMETHOD IsSystemPrincipal(nsIPrincipal *aPrincipal, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsSystemPrincipal(aPrincipal, _retval); } \
233 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipal(JSContext *cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCxSubjectPrincipal(cx); } \
234 : NS_IMETHOD_(nsIPrincipal *) GetCxSubjectPrincipalAndFrame(JSContext *cx, JSStackFrame **fp NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCxSubjectPrincipalAndFrame(cx, fp); } \
235 : NS_IMETHOD PushContextPrincipal(JSContext *cx, JSStackFrame *fp, nsIPrincipal *principal) { return !_to ? NS_ERROR_NULL_POINTER : _to->PushContextPrincipal(cx, fp, principal); } \
236 : NS_IMETHOD PopContextPrincipal(JSContext *cx) { return !_to ? NS_ERROR_NULL_POINTER : _to->PopContextPrincipal(cx); }
237 :
238 : #if 0
239 : /* Use the code below as a template for the implementation class for this interface. */
240 :
241 : /* Header file */
242 : class nsScriptSecurityManager : public nsIScriptSecurityManager
243 : {
244 : public:
245 : NS_DECL_ISUPPORTS
246 : NS_DECL_NSISCRIPTSECURITYMANAGER
247 :
248 : nsScriptSecurityManager();
249 :
250 : private:
251 : ~nsScriptSecurityManager();
252 :
253 : protected:
254 : /* additional members */
255 : };
256 :
257 : /* Implementation file */
258 : NS_IMPL_ISUPPORTS1(nsScriptSecurityManager, nsIScriptSecurityManager)
259 :
260 : nsScriptSecurityManager::nsScriptSecurityManager()
261 : {
262 : /* member initializers and constructor code */
263 : }
264 :
265 : nsScriptSecurityManager::~nsScriptSecurityManager()
266 : {
267 : /* destructor code */
268 : }
269 :
270 : /* [noscript] void checkPropertyAccess (in JSContextPtr aJSContext, in JSObjectPtr aJSObject, in string aClassName, in jsid aProperty, in PRUint32 aAction); */
271 : NS_IMETHODIMP nsScriptSecurityManager::CheckPropertyAccess(JSContext *aJSContext, JSObject *aJSObject, const char * aClassName, jsid aProperty, PRUint32 aAction)
272 : {
273 : return NS_ERROR_NOT_IMPLEMENTED;
274 : }
275 :
276 : /* [noscript] void checkLoadURIFromScript (in JSContextPtr cx, in nsIURI uri); */
277 : NS_IMETHODIMP nsScriptSecurityManager::CheckLoadURIFromScript(JSContext *cx, nsIURI *uri)
278 : {
279 : return NS_ERROR_NOT_IMPLEMENTED;
280 : }
281 :
282 : /* void checkLoadURIWithPrincipal (in nsIPrincipal aPrincipal, in nsIURI uri, in unsigned long flags); */
283 : NS_IMETHODIMP nsScriptSecurityManager::CheckLoadURIWithPrincipal(nsIPrincipal *aPrincipal, nsIURI *uri, PRUint32 flags)
284 : {
285 : return NS_ERROR_NOT_IMPLEMENTED;
286 : }
287 :
288 : /* [deprecated] void checkLoadURI (in nsIURI from, in nsIURI uri, in unsigned long flags); */
289 : NS_IMETHODIMP nsScriptSecurityManager::CheckLoadURI(nsIURI *from, nsIURI *uri, PRUint32 flags)
290 : {
291 : return NS_ERROR_NOT_IMPLEMENTED;
292 : }
293 :
294 : /* void checkLoadURIStrWithPrincipal (in nsIPrincipal aPrincipal, in AUTF8String uri, in unsigned long flags); */
295 : NS_IMETHODIMP nsScriptSecurityManager::CheckLoadURIStrWithPrincipal(nsIPrincipal *aPrincipal, const nsACString & uri, PRUint32 flags)
296 : {
297 : return NS_ERROR_NOT_IMPLEMENTED;
298 : }
299 :
300 : /* [deprecated] void checkLoadURIStr (in AUTF8String from, in AUTF8String uri, in unsigned long flags); */
301 : NS_IMETHODIMP nsScriptSecurityManager::CheckLoadURIStr(const nsACString & from, const nsACString & uri, PRUint32 flags)
302 : {
303 : return NS_ERROR_NOT_IMPLEMENTED;
304 : }
305 :
306 : /* [noscript] void checkFunctionAccess (in JSContextPtr cx, in voidPtr funObj, in voidPtr targetObj); */
307 : NS_IMETHODIMP nsScriptSecurityManager::CheckFunctionAccess(JSContext *cx, void *funObj, void *targetObj)
308 : {
309 : return NS_ERROR_NOT_IMPLEMENTED;
310 : }
311 :
312 : /* [noscript] boolean canExecuteScripts (in JSContextPtr cx, in nsIPrincipal principal); */
313 : NS_IMETHODIMP nsScriptSecurityManager::CanExecuteScripts(JSContext *cx, nsIPrincipal *principal, bool *_retval NS_OUTPARAM)
314 : {
315 : return NS_ERROR_NOT_IMPLEMENTED;
316 : }
317 :
318 : /* [noscript] nsIPrincipal getSubjectPrincipal (); */
319 : NS_IMETHODIMP nsScriptSecurityManager::GetSubjectPrincipal(nsIPrincipal * *_retval NS_OUTPARAM)
320 : {
321 : return NS_ERROR_NOT_IMPLEMENTED;
322 : }
323 :
324 : /* nsIPrincipal getSystemPrincipal (); */
325 : NS_IMETHODIMP nsScriptSecurityManager::GetSystemPrincipal(nsIPrincipal * *_retval NS_OUTPARAM)
326 : {
327 : return NS_ERROR_NOT_IMPLEMENTED;
328 : }
329 :
330 : /* [noscript] nsIPrincipal getCertificatePrincipal (in AUTF8String aCertFingerprint, in AUTF8String aSubjectName, in AUTF8String aPrettyName, in nsISupports aCert, in nsIURI aURI); */
331 : NS_IMETHODIMP nsScriptSecurityManager::GetCertificatePrincipal(const nsACString & aCertFingerprint, const nsACString & aSubjectName, const nsACString & aPrettyName, nsISupports *aCert, nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM)
332 : {
333 : return NS_ERROR_NOT_IMPLEMENTED;
334 : }
335 :
336 : /* nsIPrincipal getCodebasePrincipal (in nsIURI aURI); */
337 : NS_IMETHODIMP nsScriptSecurityManager::GetCodebasePrincipal(nsIURI *aURI, nsIPrincipal * *_retval NS_OUTPARAM)
338 : {
339 : return NS_ERROR_NOT_IMPLEMENTED;
340 : }
341 :
342 : /* [noscript] short requestCapability (in nsIPrincipal principal, in string capability); */
343 : NS_IMETHODIMP nsScriptSecurityManager::RequestCapability(nsIPrincipal *principal, const char * capability, PRInt16 *_retval NS_OUTPARAM)
344 : {
345 : return NS_ERROR_NOT_IMPLEMENTED;
346 : }
347 :
348 : /* boolean isCapabilityEnabled (in string capability); */
349 : NS_IMETHODIMP nsScriptSecurityManager::IsCapabilityEnabled(const char * capability, bool *_retval NS_OUTPARAM)
350 : {
351 : return NS_ERROR_NOT_IMPLEMENTED;
352 : }
353 :
354 : /* void enableCapability (in string capability); */
355 : NS_IMETHODIMP nsScriptSecurityManager::EnableCapability(const char * capability)
356 : {
357 : return NS_ERROR_NOT_IMPLEMENTED;
358 : }
359 :
360 : /* void revertCapability (in string capability); */
361 : NS_IMETHODIMP nsScriptSecurityManager::RevertCapability(const char * capability)
362 : {
363 : return NS_ERROR_NOT_IMPLEMENTED;
364 : }
365 :
366 : /* void disableCapability (in string capability); */
367 : NS_IMETHODIMP nsScriptSecurityManager::DisableCapability(const char * capability)
368 : {
369 : return NS_ERROR_NOT_IMPLEMENTED;
370 : }
371 :
372 : /* void setCanEnableCapability (in AUTF8String certificateFingerprint, in string capability, in short canEnable); */
373 : NS_IMETHODIMP nsScriptSecurityManager::SetCanEnableCapability(const nsACString & certificateFingerprint, const char * capability, PRInt16 canEnable)
374 : {
375 : return NS_ERROR_NOT_IMPLEMENTED;
376 : }
377 :
378 : /* [noscript] nsIPrincipal getObjectPrincipal (in JSContextPtr cx, in JSObjectPtr obj); */
379 : NS_IMETHODIMP nsScriptSecurityManager::GetObjectPrincipal(JSContext *cx, JSObject *obj, nsIPrincipal * *_retval NS_OUTPARAM)
380 : {
381 : return NS_ERROR_NOT_IMPLEMENTED;
382 : }
383 :
384 : /* [noscript] boolean subjectPrincipalIsSystem (); */
385 : NS_IMETHODIMP nsScriptSecurityManager::SubjectPrincipalIsSystem(bool *_retval NS_OUTPARAM)
386 : {
387 : return NS_ERROR_NOT_IMPLEMENTED;
388 : }
389 :
390 : /* [noscript] void checkSameOrigin (in JSContextPtr aJSContext, in nsIURI aTargetURI); */
391 : NS_IMETHODIMP nsScriptSecurityManager::CheckSameOrigin(JSContext *aJSContext, nsIURI *aTargetURI)
392 : {
393 : return NS_ERROR_NOT_IMPLEMENTED;
394 : }
395 :
396 : /* void checkSameOriginURI (in nsIURI aSourceURI, in nsIURI aTargetURI, in boolean reportError); */
397 : NS_IMETHODIMP nsScriptSecurityManager::CheckSameOriginURI(nsIURI *aSourceURI, nsIURI *aTargetURI, bool reportError)
398 : {
399 : return NS_ERROR_NOT_IMPLEMENTED;
400 : }
401 :
402 : /* [noscript] nsIPrincipal getPrincipalFromContext (in JSContextPtr cx); */
403 : NS_IMETHODIMP nsScriptSecurityManager::GetPrincipalFromContext(JSContext *cx, nsIPrincipal * *_retval NS_OUTPARAM)
404 : {
405 : return NS_ERROR_NOT_IMPLEMENTED;
406 : }
407 :
408 : /* nsIPrincipal getChannelPrincipal (in nsIChannel aChannel); */
409 : NS_IMETHODIMP nsScriptSecurityManager::GetChannelPrincipal(nsIChannel *aChannel, nsIPrincipal * *_retval NS_OUTPARAM)
410 : {
411 : return NS_ERROR_NOT_IMPLEMENTED;
412 : }
413 :
414 : /* boolean isSystemPrincipal (in nsIPrincipal aPrincipal); */
415 : NS_IMETHODIMP nsScriptSecurityManager::IsSystemPrincipal(nsIPrincipal *aPrincipal, bool *_retval NS_OUTPARAM)
416 : {
417 : return NS_ERROR_NOT_IMPLEMENTED;
418 : }
419 :
420 : /* [noscript,notxpcom] nsIPrincipal getCxSubjectPrincipal (in JSContextPtr cx); */
421 : NS_IMETHODIMP_(nsIPrincipal *) nsScriptSecurityManager::GetCxSubjectPrincipal(JSContext *cx)
422 : {
423 : return NS_ERROR_NOT_IMPLEMENTED;
424 : }
425 :
426 : /* [noscript,notxpcom] nsIPrincipal getCxSubjectPrincipalAndFrame (in JSContextPtr cx, out JSStackFramePtr fp); */
427 : NS_IMETHODIMP_(nsIPrincipal *) nsScriptSecurityManager::GetCxSubjectPrincipalAndFrame(JSContext *cx, JSStackFrame **fp NS_OUTPARAM)
428 : {
429 : return NS_ERROR_NOT_IMPLEMENTED;
430 : }
431 :
432 : /* [noscript] void pushContextPrincipal (in JSContextPtr cx, in JSStackFramePtr fp, in nsIPrincipal principal); */
433 : NS_IMETHODIMP nsScriptSecurityManager::PushContextPrincipal(JSContext *cx, JSStackFrame *fp, nsIPrincipal *principal)
434 : {
435 : return NS_ERROR_NOT_IMPLEMENTED;
436 : }
437 :
438 : /* [noscript] void popContextPrincipal (in JSContextPtr cx); */
439 : NS_IMETHODIMP nsScriptSecurityManager::PopContextPrincipal(JSContext *cx)
440 : {
441 : return NS_ERROR_NOT_IMPLEMENTED;
442 : }
443 :
444 : /* End of implementation class template. */
445 : #endif
446 :
447 : #define NS_SCRIPTSECURITYMANAGER_CONTRACTID "@mozilla.org/scriptsecuritymanager;1"
448 : #define NS_SCRIPTSECURITYMANAGER_CLASSNAME "scriptsecuritymanager"
449 :
450 : #endif /* __gen_nsIScriptSecurityManager_h__ */
|