[uuid(31431440-f1ce-11d2-985a-006008962422)]
interface nsIXPCSecurityManager : nsISupports
Constants
These flags are used when calling nsIXPConnect::SetSecurityManager
const
PRUint32
HOOK_CREATE_WRAPPER = 1
const
PRUint32
HOOK_CREATE_INSTANCE = 2
const
PRUint32
HOOK_GET_SERVICE = 4
const
PRUint32
HOOK_CALL_METHOD = 8
const
PRUint32
HOOK_GET_PROPERTY = 16
const
PRUint32
HOOK_SET_PROPERTY = 32
const
PRUint32
HOOK_ALL = 63
const
PRUint32
ACCESS_CALL_METHOD = 0
const
PRUint32
ACCESS_GET_PROPERTY = 1
const
PRUint32
ACCESS_SET_PROPERTY = 2
Methods
void
CanAccess(in PRUint32 aAction, in nsIXPCNativeCallContext aCallContext, in JSContextPtr aJSContext, in JSObjectPtr aJSObject, in nsISupports aObj, in nsIClassInfo aClassInfo, in JSVal aName, inout voidPtr aPolicy)
void
CanCreateInstance(in JSContextPtr aJSContext, in nsCIDRef aCID)
For each of these hooks returning NS_OK means 'let the action continue'. Returning an error code means 'veto the action'. XPConnect will return JS_FALSE to the js engine if the action is vetoed. The implementor of this interface is responsible for setting a JS exception into the JSContext if that is appropriate.
void
CanCreateWrapper(in JSContextPtr aJSContext, in nsIIDRef aIID, in nsISupports aObj, in nsIClassInfo aClassInfo, inout voidPtr aPolicy)
void
CanGetService(in JSContextPtr aJSContext, in nsCIDRef aCID)
Compare to: