mozilla

Compare Revisions

User:Mrbkap

Change Revisions

Revision 180556:

Revision 180556 by Jst on

Revision 180557:

Revision 180557 by Jst on

Title:
User:Mrbkap
User:Mrbkap
Slug:
User:Mrbkap
User:Mrbkap
Content:

Revision 180556
Revision 180557
n10    <h2 name="Purpose_of_this_document">n10    <h2 id="Purpose_of_this_document" name="Purpose_of_this_docum
 >ent">
n16    <h2 name="Types_of_Wrappers">n16    <h2 id="Types_of_Wrappers" name="Types_of_Wrappers">
n19    <h3 name="Base_Wrappers">n19    <h3 id="Base_Wrappers" name="Base_Wrappers">
n22    <h4 name="XPCWrappedNative">n22    <h4 id="XPCWrappedNative" name="XPCWrappedNative">
n28    <h4 name="XPCWrappedJS">n28    <h4 id="XPCWrappedJS" name="XPCWrappedJS">
n34    <h3 name="Wrapper_Wrappers">n34    <h3 id="Wrapper_Wrappers" name="Wrapper_Wrappers">
n40    <h4 name="XPCNativeWrapper">n40    <h4 id="XPCNativeWrapper" name="XPCNativeWrapper">
n44      This was the first wrapper wrapper. It will only wrap XPCWrn44      This was the first wrapper wrapper. It will only wrap XPCWr
>appedNatives, and will throw an exception if it is asked to wrap >appedNatives, and will throw an exception if it is asked to wrap 
>any other type of JavaScript object (see the section about double>any other type of JavaScript object (see the section about double
> wrapping for more information about this statement). XPCNativeWr> wrapping for more information about this statement). XPCNativeWr
>appers are designed to protect the user from the dynamicism that >appers are designed to protect the user from the dynamicism that 
>JavaScript provides. For example, given the code <code>someAnchor>JavaScript provides. For example, given the code <code>someAnchor
>.href = "http://www.mozilla.com"</code> some evil code might run >.href = "<a class=" external" href="http://www.mozilla.com" rel="
>during the someAnchor call to prevent it from working correctly. >freelink">http://www.mozilla.com</a>"</code> some evil code might
>If someAnchor is wrapped by an XPCNativeWrapper, this will not ha> run during the someAnchor call to prevent it from working correc
>ppen. The wrapper will always perform the original action, as def>tly. If someAnchor is wrapped by an XPCNativeWrapper, this will n
>ined by idl (or convention in the case of DOM0 behavior). XPCNati>ot happen. The wrapper will always perform the original action, a
>veWrappers are implicitly created by XPConnect for chrome JavaScr>s defined by idl (or convention in the case of DOM0 behavior). XP
>ipt or JavaScript components, whenever they access content (less >CNativeWrappers are implicitly created by XPConnect for chrome Ja
>privileged) objects. They can also be created by using <code>new >vaScript or JavaScript components, whenever they access content (
>XPCNativeWrapper(wrappedNative)</code>. "Expando" properties, not>less privileged) objects. They can also be created by using <code
> defined in idl, but created by the <i>wrapped</i> object are not>>new XPCNativeWrapper(wrappedNative)</code>. "Expando" properties
> visible through this wrapper.>, not defined in idl, but created by the <i>wrapped</i> object ar
 >e not visible through this wrapper.
n46    <h4 name="XPCSafeJSObjectWrapper">n46    <h4 id="XPCSafeJSObjectWrapper" name="XPCSafeJSObjectWrapper"
 >>
n52    <h4 name="XPCCrossOriginWrapper">n52    <h4 id="XPCCrossOriginWrapper" name="XPCCrossOriginWrapper">
n58    <h2 name="What_Wrappers_Should_I_Use">n58    <h2 id="What_Wrappers_Should_I_Use" name="What_Wrappers_Shoul
 >d_I_Use">
n64    <h3 name="Chrome_Code_.28extensions.2C_etc.29">n64    <h3 id="Chrome_Code_.28extensions.2C_etc.29" name="Chrome_Cod
 >e_.28extensions.2C_etc.29">
n71      However, most extensions do touch content in some way. If yn71      However, most extensions do touch content in some way. If y
>ou do touch content (via its window, for example) you should <b>a>ou do touch content (via its window, for example) you should <b>a
>lways</b> get an XPCNativeWrapper. If you don't, then you have fo>lways</b> automatically get an XPCNativeWrapper. If you don't, th
>und a bug. See the documentation on XPCNativeWrapper for more inf>en you have found a bug (unless you opted out in your extension a
>ormation about its use.>nd you're intentionally writing insecure code). See the documenta
 >tion on XPCNativeWrapper for more information about its use.
n76    <h3 name="Content_Code_.28a_webpage.29">n76    <h3 id="Content_Code_.28a_webpage.29" name="Content_Code_.28a
 >_webpage.29">
t82    <h2 name="Details">t82    <h2 id="Details" name="Details">

Back to History