20257 unable to edit existing images in editor due to JS error 19933 JavaScript "window.location" core dumps in CAPS Back out previous changes for enforcing security on listeners and go with a simple restriction of access to the method for adding listeners. r=mstoltz git-svn-id: svn://10.0.0.236/trunk@54940 18797224-902f-48f8-a5cc-f745e15eee43
89 lines
2.8 KiB
Plaintext
89 lines
2.8 KiB
Plaintext
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
|
*
|
|
* The contents of this file are subject to the Netscape Public
|
|
* License Version 1.1 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.mozilla.org/NPL/
|
|
*
|
|
* Software distributed under the License is distributed on an "AS
|
|
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
|
* implied. See the License for the specific language governing
|
|
* rights and limitations under the License.
|
|
*
|
|
* The Original Code is mozilla.org code.
|
|
*
|
|
* The Initial Developer of the Original Code is Netscape
|
|
* Communications Corporation. Portions created by Netscape are
|
|
* Copyright (C) 1999 Netscape Communications Corporation. All
|
|
* Rights Reserved.
|
|
*
|
|
* Contributor(s):
|
|
*/
|
|
|
|
#include "nsISupports.idl"
|
|
#include "nsIPrincipal.idl"
|
|
|
|
interface nsIScriptContext;
|
|
interface nsIURI;
|
|
|
|
[uuid(58df5780-8006-11d2-bd91-00805f8ae3f4)]
|
|
interface nsIScriptSecurityManager : nsISupports
|
|
{
|
|
/**
|
|
* Checks whether the currently executing script can access the given
|
|
* property.
|
|
*
|
|
* @param cx The current active script context
|
|
* @param obj The object that is being accessed
|
|
* @param prop The ordinal of the property being accessed (see nsDOMPropEnums.h)
|
|
* @param isWrite True if write access is being attempted
|
|
* @return True if access is granted
|
|
*/
|
|
boolean CheckScriptAccess(in nsIScriptContext cx, in voidStar obj,
|
|
in long prop, in boolean isWrite);
|
|
|
|
/**
|
|
* Check that the script with context "cx" can load "uri".
|
|
*
|
|
* Will return error code NS_ERROR_DOM_BAD_URI if the load request
|
|
* should be denied.
|
|
*/
|
|
void CheckLoadURIFromScript(in nsIScriptContext cx, in nsIURI uri);
|
|
|
|
/**
|
|
* Check that content from "from" can load "uri".
|
|
*
|
|
* Will return error code NS_ERROR_DOM_BAD_URI if the load request
|
|
* should be denied.
|
|
*/
|
|
void CheckLoadURI(in nsIURI from, in nsIURI uri);
|
|
|
|
/**
|
|
* Return the principal of the innermost frame of the currently
|
|
* executing script. Will return null if there is no script
|
|
* currently executing.
|
|
*/
|
|
nsIPrincipal GetSubjectPrincipal();
|
|
|
|
nsIPrincipal GetSystemPrincipal();
|
|
|
|
nsIPrincipal GetCodebasePrincipal(in nsIURI aURI);
|
|
|
|
boolean CanExecuteScripts(in nsIPrincipal principal);
|
|
|
|
boolean CanExecuteFunction(in voidStar jsFunction);
|
|
|
|
boolean IsCapabilityEnabled(in string capability);
|
|
|
|
void EnableCapability(in string capability);
|
|
|
|
void RevertCapability(in string capability);
|
|
|
|
void DisableCapability(in string capability);
|
|
};
|
|
|
|
%{C++
|
|
#define NS_SCRIPTSECURITYMANAGER_PROGID "component://netscape/scriptsecuritymanager"
|
|
#define NS_SCRIPTSECURITYMANAGER_CLASSNAME "scriptsecuritymanager"
|
|
%}
|