Bobby Holley
8bbf60b812
Bug 965898 - Squelch exceptions during the shadowing detection in isCrossOriginAccessPermitted. r=gabor
2014-07-30 12:23:03 -07:00
Bobby Holley
99778c8324
Bug 965898 - Switch policies for get{,Own}PropertyDescriptor. r=gabor
2014-07-30 12:23:03 -07:00
Bobby Holley
a348ab6fd4
Bug 965898 - Generalize FilterSetter to work on all the relevant fields of JSPropertyDescriptor. r=gabor
2014-07-30 12:23:03 -07:00
Bobby Holley
7ca7c75a83
Bug 965898 - Don't use a FilteringWrapper to get an unfiltered view in ChromeObjectWrapper. r=gabor
...
This is necessary because subsequent patches cause us to assert when invoking
getPropertyDescriptor on a FilteringWrapper for which |Policy| denies both GET
and SET.
This stuff is really a mess. I'm looking forward to it going away.
2014-07-30 12:23:02 -07:00
Bobby Holley
f3c7314f1e
Bug 965898 - Throw for [[Delete]] and [[DefineOwnProperty]]. r=gabor
2014-07-30 12:23:02 -07:00
Bobby Holley
2fcb56964b
Bug 965898 - Implement proper behavior for [[Enumerate]] And [[OwnPropertyKeys]]. r=gabor
2014-07-30 12:23:02 -07:00
Bobby Holley
6f1162c539
Bug 965898 - Cross-origin objects should have null prototypes. r=gabor
2014-07-30 12:23:02 -07:00
Bobby Holley
c329d3c74c
Bug 965898 - All properties from cross-origin objects are "configurable", non-enumerable, and non-writable. r=gabor
2014-07-30 12:23:02 -07:00
Bobby Holley
921ed05b2c
Bug 965898 - All properties on cross-origin DOM objects should be |own|. r=gabor
2014-07-30 12:23:01 -07:00
Bobby Holley
3a13d5adec
Bug 965898 - Implement an Xray subclass that we can use to implement HTML5 cross-origin semantics. r=gabor
2014-07-30 12:23:01 -07:00
Bobby Holley
c125de4fef
Bug 965898 - Drop support for XPCWN XOWs. r=gabor
...
XOWs only allow access to Window and Location, both of which are on WebIDL now.
2014-07-30 12:23:01 -07:00
Bobby Holley
49e86ce330
Backed out 16 changesets (bug 965898) for rooting hazards. CLOSED TREE
...
Backed out changeset ac4abde3579f (bug 965898)
Backed out changeset c4c7ab1a2f70 (bug 965898)
Backed out changeset e0bf3598dfe1 (bug 965898)
Backed out changeset 8f2788a0ba24 (bug 965898)
Backed out changeset 0d1cda4decaa (bug 965898)
Backed out changeset 3d80ffc439fb (bug 965898)
Backed out changeset ad66ab36fe2d (bug 965898)
Backed out changeset dcf7ccf6eff2 (bug 965898)
Backed out changeset d3f02e80355d (bug 965898)
Backed out changeset 212f2d05d9e7 (bug 965898)
Backed out changeset c350a2c0aa6d (bug 965898)
Backed out changeset c75acd0663a9 (bug 965898)
Backed out changeset d68f7ef0ae69 (bug 965898)
Backed out changeset 610e6d6e1a88 (bug 965898)
Backed out changeset 54d40a30f6ad (bug 965898)
Backed out changeset 403a0e1d2324 (bug 965898)
2014-07-29 22:57:59 -07:00
Bobby Holley
3edb3819a0
Bug 965898 - Fix non-unified build bustage. r=me CLOSED TREE
2014-07-29 22:37:55 -07:00
Bobby Holley
077b49ebff
Bug 965898 - Allow both gettable and settable attributes in Filter(). r=gabor
2014-07-29 21:35:32 -07:00
Bobby Holley
0ff091e38b
Bug 965898 - Squelch exceptions during the shadowing detection in isCrossOriginAccessPermitted. r=gabor
2014-07-29 21:35:32 -07:00
Bobby Holley
8f84226eb0
Bug 965898 - Switch policies for get{,Own}PropertyDescriptor. r=gabor
2014-07-29 21:35:32 -07:00
Bobby Holley
2773e94581
Bug 965898 - Generalize FilterSetter to work on all the relevant fields of JSPropertyDescriptor. r=gabor
2014-07-29 21:35:31 -07:00
Bobby Holley
1eccf2848c
Bug 965898 - Don't use a FilteringWrapper to get an unfiltered view in ChromeObjectWrapper. r=gabor
...
This is necessary because subsequent patches cause us to assert when invoking
getPropertyDescriptor on a FilteringWrapper for which |Policy| denies both GET
and SET.
This stuff is really a mess. I'm looking forward to it going away.
2014-07-29 21:35:31 -07:00
Bobby Holley
3b613a5b26
Bug 965898 - Throw for [[Delete]] and [[DefineOwnProperty]]. r=gabor
2014-07-29 21:35:31 -07:00
Bobby Holley
d080afcd9d
Bug 965898 - Implement proper behavior for [[Enumerate]] And [[OwnPropertyKeys]]. r=gabor
2014-07-29 21:35:31 -07:00
Bobby Holley
4f0d1e2311
Bug 965898 - Cross-origin objects should have null prototypes. r=gabor
2014-07-29 21:35:30 -07:00
Bobby Holley
1845c65894
Bug 965898 - All properties from cross-origin objects are "configurable", non-enumerable, and non-writable. r=gabor
2014-07-29 21:35:30 -07:00
Bobby Holley
80a57aee8e
Bug 965898 - All properties on cross-origin DOM objects should be |own|. r=gabor
2014-07-29 21:35:30 -07:00
Bobby Holley
7cb586e5d9
Bug 965898 - Implement an Xray subclass that we can use to implement HTML5 cross-origin semantics. r=gabor
2014-07-29 21:35:30 -07:00
Bobby Holley
03c0bac2d7
Bug 965898 - Drop support for XPCWN XOWs. r=gabor
...
XOWs only allow access to Window and Location, both of which are on WebIDL now.
2014-07-29 21:35:29 -07:00
Bobby Holley
8615f8ac98
Bug 1042398 - Add a WaiveXrayWrapper override for ::iterate. r=gabor
...
I thought we had overrides for all the proxy traps that returned non-primitive
values, but it looks like we missed one.
2014-07-23 15:20:05 -07:00
Wes Kocher
db3599ee0f
Backed out changeset 79d2db9a2a2c (bug 1042398) for build bustage on a CLOSED TREE
2014-07-23 13:08:24 -07:00
Bobby Holley
1ce9ff6a4a
Bug 1042398 - Add a WaiveXrayWrapper override for ::iterate. r=gabor
...
I thought we had overrides for all the proxy traps that returned non-primitive
values, but it looks like we missed one.
2014-07-23 12:36:22 -07:00
Boris Zbarsky
eafe8cdc8f
Bug 1021066. Make named setters work even for non-overridebuiltins bindings over Xrays. r=bholley,jorendorff
2014-07-23 01:06:33 -04:00
Mike Hommey
bc5d6801bb
Bug 1041860 - Avoid setting FINAL_LIBRARY to libraries that further use a FINAL_LIBRARY. r=mshal
2014-07-23 08:37:51 +09:00
Bobby Holley
ffe3111a73
Bug 742444 - Only propagate waivers between same-origin compartments. r=gabor
2014-07-22 16:14:27 -07:00
Bobby Holley
eaccea432a
Bug 742444 - Pass the old wrapper or value to the prewrap callback instead of its flags. r=gabor
...
We need this so that we can reason about the origin of the wrapper that
previously had a waiver and decide whether or not to extend it.
2014-07-22 16:14:27 -07:00
Bobby Holley
972dacf31e
Bug 930091 - Check objects at COW membranes. r=gabor,r=msucan
2014-07-20 15:36:32 -06:00
Bobby Holley
71765487c1
Bug 1040181 - Use an opaque wrapper rather than failing in Rewrap. r=gabor
2014-07-20 10:03:58 -06:00
Bobby Holley
96f5760708
Bug 1038844
- Implement a COW opt-out for automation. r=gabor,sr=mrbkap
2014-07-17 21:34:48 -07:00
Bobby Holley
e6562f0ffa
Bug 1036185 - Clean up logic in IsPermitted (bonus fix). r=gabor
2014-07-15 09:04:19 -07:00
Bill McCloskey
47a7769d00
Bug 1017323 - Fix some non-unified build bustage
2014-07-14 22:49:09 -07:00
Bill McCloskey
926f8bfdd8
Bug 1017323 - Add-on interposition (r=bholley)
2014-07-14 22:10:05 -07:00
Bobby Holley
d65aa88546
Bug 856067 - Add some helpful logging to the console when we deny access to a non-Xrayable object. r=gabor
2014-07-14 10:09:07 -07:00
Bobby Holley
2fac4671d3
Bug 856067 - Remove special case for content XBL scopes. r=gabor
...
This is now the default behavior. \o/
2014-07-14 10:09:07 -07:00
Bobby Holley
1ef8a86459
Bug 856067 - Make unwaived non-Xrayable objects opaque from privileged code. r=gabor
2014-07-14 10:09:07 -07:00
Boris Zbarsky
4330519678
Bug 832014 part 9. Switch AccessCheck to using the generated LocationBinding::IsPermitted method. r=bholley
2014-07-11 19:34:44 -04:00
Bobby Holley
e7024b77c9
Bug 987669 - Just use macros because MSVC and gcc don't have real constexpr support. r=me CLOSED TREE
2014-07-11 09:37:00 -07:00
Bobby Holley
c4700e5072
Bug 987669 - Turn on Xrays for Error objects. r=gabor
2014-07-11 09:09:22 -07:00
Bobby Holley
83fe833e66
Bug 987669 - Add Xray support for FooError.prototype.name. r=gabor
2014-07-11 09:09:22 -07:00
Bobby Holley
d4e5d6b652
Bug 987669 - Implement Xray support for the data properties on ErrorObject instances. r=gabor
2014-07-11 09:09:21 -07:00
Bobby Holley
d2fd703dac
Bug 987669 - Implement IsErrorObjectKey and do more at compile-time. r=gabor
2014-07-11 09:09:21 -07:00
Chris Peterson
6f5eb4b6c9
Bug 1036778 - Replace MOZ_ASSUME_UNREACHABLE with MOZ_CRASH in js/xpconnect. r=bholley
2014-06-29 20:42:36 -07:00
Bobby Holley
c6ad0230b3
Bug 1034262 - Honor the wantXrays of both sides of the membrane when computing same-origin wrappers. r=gabor
...
The basic problem in the testcase is that one compartment requests same-origin
Xrays via wantXrays=true (the default for Sandboxes) while the other does not.
The current code only considers the wantXrays flag of the compartment performing
the access, so we end up in a situation where we have same-origin compartments,
but Xray in one direction and Transparent in the other.
This is a problem for crossCompartmentFunction.apply(null, [arg]). If both
globals get transparent wrappers, there's obviously no problem. And if both
globals get XrayWrappers, then the |apply| happens on the XrayWrapper of the
function in the caller's compartment. So the Array is unpacked in the caller's
compartment, and again we have no problem.
But if the caller gets Transparent and the callee gets Xrays, then we end up
invoking |apply| from the callee's side, which then gets an XrayWrapper to the
array. This XrayWrapper may do surprising things, leading to the odd situation
in the testcase.
Same-origin Xrays are kind of broken anyway, but I don't think we'll ever be
able to get rid of them. So the most sensible thing to do is probably to honor
the flag (if set) from either compartment. This patch does that.
2014-07-10 10:04:30 -07:00
Bobby Holley
4a9f9e844b
Bug 1034239 - Replace GentlyOpaque with an "Xray-to-nothing" wrapper. r=gabor
...
I did this wrong before. Making this a SecurityWrapper means that the caller does
not subsumes the target, and that the target therefore needs to be protected
from the caller. But GentlyOpaque was supposed to be an analog of PermissiveXray
for use when no useful XrayTraits exist, so it should behave similarly.
If we make this a Filtering Security Wrapper, we get a bunch of assertions where we
expect CheckedUnwrap to succeed for a chrome-side wrapper. And we can't making it
a Filtering Non-Security Wrapper, because then the filtering policy isn't even
consulted (an optimization in jsproxy.cpp).
Really, we want all of the Xray machinery (like the ability to waive and to place
expandos), and we just don't want to resolve any properties. This patch does this.
2014-07-10 09:31:37 -07:00
Bobby Holley
bba8240dd7
Bug 1034239 - Add Proxies to ForceCOWBehavior. r=gabor
2014-07-10 09:31:37 -07:00
Jan de Mooij
b986e6ec0f
Bug 1034627 part 3 - Fix SandboxDump, AccessCheck.cpp to work with Latin1 strings and nursery strings. r=bholley
2014-07-10 17:36:35 +02:00
Bobby Holley
ec0078e10d
Bug 1033927 - Drop support for custom [object XrayWrapper [object ClassName]] stringification. r=peterv
2014-07-07 13:11:24 -07:00
Jan de Mooij
44da586636
Bug 1034191 - Make nsDependentJSString users work with Latin1 strings and nursery-allocated strings. r=bz
2014-07-05 17:30:54 +02:00
Bobby Holley
f0dce63c2c
Bug 1029933
- Introduce and use ParentKeyForStandardClass. r=Waldo
2014-07-04 12:41:28 -07:00
Bobby Holley
98413afdad
Bug 1029933
- Introduce the concept of "dependent" standard classes and handle them in the ClassSpec infrastructure. r=Waldo
2014-07-04 12:41:28 -07:00
Bobby Holley
71f1a77169
Bug 1032317 - Make CompartmentPrivate and XPCWrappedNativeScope accessors infallible. r=gabor
2014-07-03 09:40:52 -07:00
Bobby Holley
7bfa2b8c8f
Bug 1033920 - Handle null in XrayWrapper::setPrototypeOf. v1 r=efaust
...
From ac73068c4494c0df74329482e57f64ba8ec93cb4 Mon Sep 17 00:00:00 2001
2014-07-02 21:06:28 -07:00
Bobby Holley
9e1742f3c3
Bug 1033253 - Null-check the result of JS_GetFunctionId. r=bz
2014-07-02 11:02:11 -07:00
Steve Fink
04d4a79438
Bug 1022773 - Return value rooting for XPConnect, r=bholley
...
--HG--
extra : rebase_source : 7dd3b1585bbc3d6a4a22812771495dedf600d7e0
2014-06-25 15:35:37 -07:00
Eric Faust
19ae308309
Bug 1027402 - Part 4: Mark Proxy Handler uses const. (r=jorendorff, r=bz)
2014-06-27 04:44:08 -07:00
Eric Faust
04ec29520a
Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz)
2014-06-27 04:44:06 -07:00
Eric Faust
992c8dde5a
Bug 1027402 - Part 2: Mark Proxy Handler instances as const. (r=bholley, r=bz over IRC)
2014-06-27 04:44:04 -07:00
Eric Faust
d6d3b525f2
Bug 1027402 - Part 1: Remove set* from BaseProxyHandler. (r=bholley)
2014-06-27 04:44:02 -07:00
Carsten "Tomcat" Book
e4f5e9f3a3
Backed out changeset 2c6403818106 (bug 1027402) for bustage on a CLOSED TREE
2014-06-27 14:21:46 +02:00
Carsten "Tomcat" Book
cbe01cdaa8
Backed out changeset 346912776f97 (bug 1027402)
2014-06-27 14:21:22 +02:00
Carsten "Tomcat" Book
76beb8d59f
Backed out changeset 285c853fedfa (bug 1027402)
2014-06-27 14:21:20 +02:00
Carsten "Tomcat" Book
0c7ea5265d
Backed out changeset 96443362db6f (bug 1027402)
2014-06-27 14:21:17 +02:00
Eric Faust
6f7e434c6b
Bug 1027402 - Part 4: Mark Proxy Handler uses const. (r=jorendorff, r=bz)
2014-06-27 04:44:08 -07:00
Eric Faust
62d61ccf3f
Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz)
2014-06-27 04:44:06 -07:00
Eric Faust
6091687271
Bug 1027402 - Part 2: Mark Proxy Handler instances as const. (r=bholley)
2014-06-27 04:44:04 -07:00
Eric Faust
89bdda2ed7
Bug 1027402 - Part 1: Remove set* from BaseProxyHandler. (r=bholley)
2014-06-27 04:44:02 -07:00
Jason Orendorff
76d9f6e407
Bug 645416, part 22 - Remove JSCompartment::wrapId. r=terrence.
...
This is unnecessary now that object jsids no longer exist. Both string and
symbol jsids point only to GC things in the atoms compartment, which are safe
to pass to any compartment without wrapping.
--HG--
extra : rebase_source : 82c21e8474df05b1bb42c14d872c981205bbe879
2014-06-23 10:57:02 -05:00
Bobby Holley
a5aa04cdbc
Bug 976148 - Support the .name and .length properties of Function instances. r=gabor
2014-06-19 09:57:06 -07:00
Bobby Holley
5549a2a2cc
Bug 976148 - Support the 'prototype' property for standard constructors. r=gabor
2014-06-19 09:57:06 -07:00
Bobby Holley
02c638ea36
Bug 976148 - Implement Xrays to Function objects. r=gabor
2014-06-19 09:57:06 -07:00
Bobby Holley
3963ab573b
Bug 987163 - Implement Xrays for TypedArrays. r=gabor
2014-06-17 10:16:08 -07:00
Bobby Holley
a5a0be7595
Bug 987163 - Drop special COW support for TypedArrays. r=gabor
...
From now on, if someone wants to expose a TypedArray to content, they should
use Cu.cloneInto.
2014-06-17 10:16:08 -07:00
Bobby Holley
78b6ce807b
Bug 987163 - Fix some squelched OOMs. r=gabor
2014-06-17 10:16:08 -07:00
Bobby Holley
e25ce66bda
Bug 987163 - Convert from |switch| statements to |if| statements. r=gabor
...
I realized that the switches are going to be cumbersome for Array stuff, because
we'll have to enumerate each kind of TypedArray as a separate case: statement.
Let's just use |if| so that we can call a helper.
2014-06-17 10:16:08 -07:00
Terrence Cole
5590758a75
Bug 1017650 - Remove the unused |proto| arg from the wrapping machinery; r=efaust
2014-06-16 11:59:59 -07:00
Bobby Holley
07bee3c907
Bug 1020609 - Implement Xrays to Arrays. r=bz
2014-06-11 15:16:07 -07:00
Bobby Holley
0f251a891e
Bug 1020609 - Make configurability check in Xray defineProperty match the spec. r=bz
...
This code is basically emulating the ES semantics with respect to non-configurable
properties. Non-configurable value properties can still be writable, in which case
their value and writability may be updated.
2014-06-11 15:16:06 -07:00
Chris Peterson
c04dc8b035
Bug 1018680 - Fix jsd_xpc.cpp warning and mark js/ductwork, js/jsd, and js/xpconnet as FAIL_ON_WARNINGS. r=ejpbruel
2014-05-31 19:50:24 -07:00
Bobby Holley
699946fc90
Bug 1022016 - Redesign nsDependentJSString API to be less of a footgun. r=gabor
2014-06-10 20:15:56 -07:00
Trevor Saunders
dd19f59774
bug 1021171 - don't return nulllptr in functions returning bool r=bz,waldo
2014-06-06 15:31:30 -04:00
Bobby Holley
9db935d49b
Bug 987111 - Flip on Object Xrays. r=gabor
2014-06-05 22:32:39 -07:00
Bobby Holley
42f7024f5e
Bug 987111 - Implement delete_ for Object Xrays. r=gabor
2014-06-05 22:32:39 -07:00
Bobby Holley
cad5e8f936
Bug 987111 - Implement defineProperty for Object Xrays. r=gabor
2014-06-05 22:32:39 -07:00
Bobby Holley
88e63325ae
Bug 987111 - Implement resolveOwnProperty and enumerateNames for Object instances. r=gabor
2014-06-05 22:32:38 -07:00
Bobby Holley
a2ee510ecb
Bug 987111 - Make JSProto_Object COWs take precedence over Xrays. r=gabor
2014-06-05 22:32:38 -07:00
Bobby Holley
bbc449149e
Bug 987111 - Handle the Object.prototype case in Xray getPrototypeOf. r=gabor
2014-06-05 22:32:38 -07:00
Bobby Holley
6bb5e95a97
Bug 987111 - Fill out existing_desc with all properties, not just |own| ones. r=gabor
...
This gives us strictly more information than we had before, which turns out to
be useful. We can still get the old behavior by testing the identity of
desc.object(), which I've done in one of the two existing uses for existing_desc.
The other (in DOMXrayTraits::defineProperty) is actually more correct with the
full (non-own) lookup.
2014-06-05 22:32:38 -07:00
Vivien Nicolas
bc803a18da
Bug 1015887 - Expose realFrameElement to Chrome JS. r=bholley
2014-06-04 20:11:05 +02:00
Wes Kocher
915f3c652a
Backed out 13 changesets (bug 987111) for disagreeing with some patch from b-i or fx-team in tonight's merge to hopefully fix a CLOSED TREE
...
Backed out changeset d4e390ceac27 (bug 987111)
Backed out changeset 5f88b5ef9496 (bug 987111)
Backed out changeset cdfd24ddf448 (bug 987111)
Backed out changeset 7883150e5471 (bug 987111)
Backed out changeset 407c7ca82ada (bug 987111)
Backed out changeset e7140ccf7e09 (bug 987111)
Backed out changeset 0a4d18d6306f (bug 987111)
Backed out changeset e7b7548867d9 (bug 987111)
Backed out changeset 944d128f135a (bug 987111)
Backed out changeset 33860f30fc4f (bug 987111)
Backed out changeset 518a915fb81b (bug 987111)
Backed out changeset 7576a51cf72e (bug 987111)
Backed out changeset 1a8dc1af9de6 (bug 987111)
2014-06-04 22:12:50 -07:00
Bobby Holley
c6742de97a
Bug 987111 - Flip on Object Xrays. r=gabor
2014-06-04 15:12:27 -07:00
Bobby Holley
a9aed971d9
Bug 987111 - Implement delete_ for Object Xrays. r=gabor
2014-06-04 15:12:27 -07:00
Bobby Holley
98b02626d5
Bug 987111 - Implement defineProperty for Object Xrays. r=gabor
2014-06-04 15:12:27 -07:00
Bobby Holley
6e9bc694e8
Bug 987111 - Implement resolveOwnProperty and enumerateNames for Object instances. r=gabor
2014-06-04 15:12:27 -07:00
Bobby Holley
5fce5dd4ab
Bug 987111 - Make JSProto_Object COWs take precedence over Xrays. r=gabor
2014-06-04 15:12:26 -07:00
Bobby Holley
6c6c52d3ec
Bug 987111 - Handle the Object.prototype case in Xray getPrototypeOf. r=gabor
2014-06-04 15:12:26 -07:00
Bobby Holley
ce6b82c251
Bug 987111 - Fill out existing_desc with all properties, not just |own| ones. r=gabor
...
This gives us strictly more information than we had before, which turns out to
be useful. We can still get the old behavior by testing the identity of
desc.object(), which I've done in one of the two existing uses for existing_desc.
The other (in DOMXrayTraits::defineProperty) is actually more correct with the
full (non-own) lookup.
2014-06-04 15:12:26 -07:00
Ryan VanderMeulen
3d3ce28f0f
Backed out 5 changesets (bug 1015871, bug 1020257, bug 1015887, bug 1005888, bug 1015894) for desktop B2G mochitest failures on a CLOSED TREE.
...
Backed out changeset dbcb9974b640 (bug 1020257)
Backed out changeset 3220b7b2efc9 (bug 1015894)
Backed out changeset 4e23647ae247 (bug 1015887)
Backed out changeset 59df0cdacc15 (bug 1015871)
Backed out changeset e7124b07804b (bug 1005888)
2014-06-04 16:07:06 -04:00
Vivien Nicolas
34a46b6121
Bug 1015887 - Expose realFrameElement to Chrome JS. r=bholley
2014-06-04 20:11:05 +02:00
Bill McCloskey
9157c8fd4d
Bug 1017310 - Rename *XBLScope to *ContentXBLScope in xpconnect (r=bholley)
2014-06-02 18:04:21 -07:00
Bobby Holley
13813ca2bf
Bug 972987 - Implement Xrays to self-hosted methods and properties. r=till,gabor
2014-06-02 13:55:20 -07:00
Bobby Holley
09f9f51b84
Bug 992958 - Add support for prototype JSPropertySpecs on ClassSpec. r=luke
2014-05-23 16:53:03 -07:00
Julien Levesy
38b0b1f449
Bug 1006692 - Replaced nsScriptSecurityManager::SubjectIsPrivileged and AccessCheck::IsCallerChrome by nsContentUtils::IsCallerChrome. r=bholley
2014-05-19 13:39:00 +02:00
Bobby Holley
2513cf740a
Bug 1001198 - Explicitly fire up the SSM from nsXPConnect. r=gabor
2014-05-06 23:17:43 -07:00
Bobby Holley
8ba3be8772
Bug 997987 - Cache the system principal on nsContentUtils and remove nsIScriptSecurityManager::SubjectPrincipalIsSystem. r=Ms2ger,sr=bz
2014-05-06 15:43:03 -07:00
Jon Coppeard
1216544376
Bug 959787 - Handlify remaining JS APIs r=terrence r=bz r=bholley
2014-04-30 10:10:33 +01:00
Michael Shuen
e76fd87034
Bug 972385 - Make JS::AutoValueVector subscript operator return handles. r=jonco, smaug
2014-04-28 16:53:00 +02:00
Birunthan Mohanathas
c48b86b0c6
Bug 866289 - Make mode lines consistent in js/xpconnect/ for 4 space indented files. r=Ms2ger
2014-04-03 07:58:00 -04:00
Jason Orendorff
4740c9dea6
Bug 547140, part 4 - Remove flags argument from resolve hooks. r=Waldo.
2014-04-25 16:11:02 -05:00
Jason Orendorff
6e21c723d2
Bug 547140, part 2 - Remove flags argument from JS_GetPropertyDescriptor and friends. r=Waldo.
2014-04-25 16:11:01 -05:00
Jason Orendorff
e51a8c4a20
Bug 547140, part 1 - Remove JSRESOLVE_ASSIGNING. r=Waldo.
2014-04-25 16:11:00 -05:00
Jason Orendorff
f66a185e68
Bug 987007, part 2 - Handle assignment to named and indexed setters without using JSRESOLVE_ASSIGNING. r=bz, r=bholley.
...
--HG--
extra : rebase_source : a26eb85a086a18219a4d423cd7ad49a92cfd2584
2014-04-25 15:07:18 -05:00
Peter Van der Beken
4b64c1bee2
Bug 993057 - Fix Xrays to disallow indexed expando properties on Xrays for Window with a WebIDL binding. r=bholley.
...
--HG--
extra : rebase_source : a7762fc56b9ad1801be22aa3380f430b44082f9e
2014-02-15 22:12:35 +01:00
Bobby Holley
2ca3777187
Bug 958326 - Remove same-compartment security wrapper machinery. r=mrbkap
2014-03-26 10:59:20 -03:00
Bobby Holley
4146c05d55
Bug 975042 - Enable JS Xray for the Date object. r=peterv
2014-03-23 11:02:14 -03:00
Bobby Holley
56aac00a06
Bug 975042 - Implement resolveOwnProperty and enumerateNames trap. r=peterv
2014-03-23 11:02:13 -03:00
Bobby Holley
a9d3924c56
Bug 975042 - Make enumerateNames trap virtual. r=peterv
2014-03-23 11:02:13 -03:00
Bobby Holley
8eb80b2fd1
Bug 975042 - Implement getPrototypeOf. r=peterv
2014-03-23 11:02:13 -03:00
Bobby Holley
f08d932ce0
Bug 975042 - Implement createHolder. r=peterv
2014-03-23 11:02:13 -03:00
Bobby Holley
60e8547108
Bug 975042 - Implement the easy trait hooks. r=peterv
2014-03-23 11:02:13 -03:00
Bobby Holley
9c97f0b173
Bug 975042 - Basic Xray infrastructure and boilerplate. r=peterv
...
All of this machinery asserts if it actually get used. But it won't be used at
present, because we have an empty whitelist of JSProtoKeys.
2014-03-23 11:02:12 -03:00
Bobby Holley
c34dd9877d
Bug 975042 - Remove the special COW support for Date. r=peterv
...
As soon as Date is on Xrays, this stuff won't work anyway. Henceforth, content
access to chrome Date objects is forbidden, and APIs should use something like
|new contentWindow.Date()| for any Date object they wish to expose to content.
2014-03-23 11:02:12 -03:00
Carsten "Tomcat" Book
9099b263ed
Backed out changeset f787c0fa465e (bug 975042) for B2G ICS Emulator M7 Orange on a CLOSED TREE
2014-03-21 08:48:40 +01:00
Carsten "Tomcat" Book
0bc70db9d7
Backed out changeset 351371062c26 (bug 975042)
2014-03-21 08:47:48 +01:00
Carsten "Tomcat" Book
f816ce48b9
Backed out changeset 449ade4078c0 (bug 975042)
2014-03-21 08:47:47 +01:00
Carsten "Tomcat" Book
ac8230799d
Backed out changeset 59a38e0e27bb (bug 975042)
2014-03-21 08:47:45 +01:00
Carsten "Tomcat" Book
2c95000099
Backed out changeset 8ac7fa583164 (bug 975042)
2014-03-21 08:47:44 +01:00
Carsten "Tomcat" Book
5f92d5b6fa
Backed out changeset 6c25a4bfd449 (bug 975042)
2014-03-21 08:47:43 +01:00
Carsten "Tomcat" Book
9f22e17a78
Backed out changeset f7d97dc26289 (bug 975042)
2014-03-21 08:47:42 +01:00
Carsten "Tomcat" Book
239b34fee5
Backed out changeset 1b62c8f1c211 (bug 975042)
2014-03-21 08:47:41 +01:00
Bobby Holley
1973d9aa6a
Bug 975042 - Enable JS Xray for the Date object. r=peterv
2014-03-20 23:47:24 -03:00
Bobby Holley
838db9bb08
Bug 975042 - Implement resolveOwnProperty and enumerateNames trap. r=peterv
2014-03-20 23:47:24 -03:00
Bobby Holley
5cc38c0e83
Bug 975042 - Make enumerateNames trap virtual. r=peterv
2014-03-20 23:47:24 -03:00
Bobby Holley
3364cb667b
Bug 975042 - Implement getPrototypeOf. r=peterv
2014-03-20 23:47:24 -03:00
Bobby Holley
a00932c5e2
Bug 975042 - Implement createHolder. r=peterv
2014-03-20 23:47:24 -03:00
Bobby Holley
9115f9b416
Bug 975042 - Implement the easy trait hooks. r=peterv
2014-03-20 23:47:23 -03:00
Bobby Holley
eb2c3f8bbb
Bug 975042 - Basic Xray infrastructure and boilerplate. r=peterv
...
All of this machinery asserts if it actually get used. But it won't be used at
present, because we have an empty whitelist of JSProtoKeys.
2014-03-20 23:47:23 -03:00
Bobby Holley
6567ce6262
Bug 975042 - Remove the special COW support for Date. r=peterv
...
As soon as Date is on Xrays, this stuff won't work anyway. Henceforth, content
access to chrome Date objects is forbidden, and APIs should use something like
|new contentWindow.Date()| for any Date object they wish to expose to content.
2014-03-20 23:47:23 -03:00
Bobby Holley
fbb9b62de8
Bug 825392 - Remove SOWs. r=bz
2014-03-19 13:35:45 -03:00
Bobby Holley
8dee0c93c9
Bug 976704 - Make opaque security wrappers non-callable. r=gabor,sr=mrbkap
2014-03-18 19:23:45 -03:00
Peter Van der Beken
ae397a6658
Bug 982112 - Make accesscheck code deal with WebIDL bindings. r=bz.
2013-11-05 09:47:59 +01:00
Jon Coppeard
bafb7ba32f
Bug 959787 - Handlify some friend and debug APIs r=sfink r=bholley
2014-03-17 16:17:58 +00:00
Bobby Holley
46624f507a
Bug 976938 - Add a way to identify the Xray parent (if any) of a given function. r=bz
2014-03-04 10:05:07 -08:00
Bobby Holley
5ebbbb4ebd
Bug 976151 - Anti eval/Function() check during wrapping should use |subsumes|. r=gabor
2014-02-25 08:38:33 -08:00
Bobby Holley
30907ef9cb
Bug 975277 - Introduce a mechanism to identify instances of standard classes. r=luke
2014-02-21 16:03:11 -08:00
Bobby Holley
97f387fd67
Bug 975277 - Move the wrappedJSObject getter out of getPropertyDescriptor. r=gabor
...
The current setup is kinda wrong, and doesn't work with HasPrototype Xrays.
This change requires us to manually munge the holder, but that's probably ok
for now.
2014-02-21 16:03:08 -08:00
Bobby Holley
3fb149d9d7
Bug 975277 - Clean up the XPCWN XrayHolder a bit. r=gabor
2014-02-21 15:55:31 -08:00
Peter Van der Beken
6f7b80e5b5
Bug 975277 - Pass the real receiver when using HasPrototype. r=bholley
2014-02-21 15:55:31 -08:00
Peter Van der Beken
08d239ffd1
Bug 975277 - Add some machinery to allow Traits to specify whether they want to use hasPrototype or not. r=bholley,efaust
2014-02-21 15:55:30 -08:00
Bobby Holley
4b70a01ff8
Bug 973780 - Hook Xrays up to the new expando map. r=bz
2014-02-21 11:35:48 -08:00
Luke Wagner
b1325de739
Bug 797126 - Remove tinyid/shortid/userid (r=terrence)
...
--HG--
extra : rebase_source : d3cee5e71ca02708e91419b209b5914ce9fd2f9f
2014-02-21 10:24:26 -06:00
Phil Ringnalda
01ad150169
Back out 0f5f58d5d410:8db4d719f5f8 (bug 973780) for debug WinXP mochitest-3 assertions
...
CLOSED TREE
2014-02-20 20:46:50 -08:00
Bobby Holley
21ff903ba9
Bug 973780 - Hook Xrays up to the new expando map. r=bz
2014-02-20 18:24:09 -08:00
Bobby Holley
1c600e7056
Bug 956382 - Remove usage of explicit *IgnoringDomain variants. r=mrbkap
2014-02-13 18:57:36 -08:00
Bobby Holley
2b33b064b7
Bug 956382 - Consider document.domain when computing security wrappers. r=mrbkap
2014-02-13 18:57:35 -08:00
Bobby Holley
e0f33e6e2e
Bug 956382 - Add AccessCheck::subsumesConsideringDomain and clean up other implementations. r=mrbkap
...
We now assert that we have a principal when we enter the wrap callback, and we
now have a convenient overload defined in nsIPrincipal.idl.
2014-02-13 18:57:34 -08:00
Bobby Holley
74dced0ef3
Bug 965981 - Wrap ids in XPCWrappedNativeXrayTraits::enumerateNames. r=mccr8
2014-02-13 10:54:08 -08:00
Bobby Holley
26295823eb
Bug 965901 - Add an ENUMERATE policy action. r=gabor sr=mrbkap
2014-02-13 10:54:08 -08:00
Bobby Holley
cab18b5855
Bug 965901 - Track and assert the policy action in AutoEnterPolicy/assertEnteredPolicy. r=gabor sr=mrbkap
2014-02-13 10:54:07 -08:00
Bobby Holley
331a1f6c7b
Bug 959012 - Clean up and separate the semantics of js_{Get,Find}Class{Prototype,Object}. r=jorendorff
2014-01-30 07:45:16 -08:00
Bobby Holley
8b2a3c8d5b
Bug 959012 - Remove unused cx parameter from JS_IdentifyClassPrototype. r=jorendorff
2014-01-30 07:45:16 -08:00
Boris Zbarsky
0ec24be88b
Bug 965144. Make the Window-specific bits of XrayWrapper work with WebIDL windows. r=bholley
2014-01-29 22:34:25 -08:00
Bobby Holley
4261137095
Bug 965082 - Only run the {get,set}PrototypeOf override for non-SecurityWrappers. r=mrbkap,r=gabor
2014-01-29 13:07:13 -08:00
Bobby Holley
6a1e0258a1
Bug 965082 - Unify duplicate bits of state of proxies. r=mrbkap,r=gabor
...
Conceptually, these all boil down to "is this a security wrapper?"
2014-01-29 13:07:13 -08:00
Tom Schuster
18397aa440
Bug 958119 - Some cleanup for XPConnect. r=gabor
2014-01-22 18:50:32 +01:00
Bobby Holley
44cd3fcb36
Bug 958324 - Remove same-compartment security wrappers for WNs. r=peterv,r=mrbkap
...
We've fixed Components, and SOWs are new-binding only. Youpie!
2014-01-21 08:26:40 -08:00
Bobby Holley
18dab24d3d
Bug 794943 - Followup bustage fix. r=me CLOSED TREE
2014-01-16 16:11:25 -08:00
Bobby Holley
aca56744a1
Bug 794943 - Make window.controllers [ChromeOnly], and remove nsISecurityCheckedComponent from nsXULControllers. r=bz
2014-01-16 15:45:40 -08:00
Terrence Cole
6beccf2363
Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 3; r=sfink
...
--HG--
extra : rebase_source : ace7b0fa6ba93acbf0ec8ecaeb68ffa287a33665
2014-01-16 09:48:58 -08:00
Terrence Cole
aa7ab27af5
Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 2; r=sfink
...
--HG--
extra : rebase_source : e36c89af9c362e781d9ca9aceee42779258328b5
2014-01-14 17:19:07 -08:00
Tom Schuster
f39e81815a
Bug 939294 - Change xpidl jsval to handles. r=gabor,bz,khuey,bsmedberg,terrence
2014-01-09 18:39:36 +01:00
Boris Zbarsky
1b7f303480
Bug 959695 part 3. Make ReportIsNotFunction take a Handle. r=terrence
2014-01-14 21:46:44 -05:00
Bobby Holley
78a5768df9
Bug 951948 - Remove Components wrappers. r=mrbkap
...
We fix up the tests here to test the new behavior, and fix some bugs in the test
while we're at it.
2014-01-14 18:49:30 -08:00
Andrew McCreight
194d76d7e9
Bug 956455, part 3 - Remove the holder argument to nsXPConnect::WrapNativeToJSVal. r=gabor
2014-01-06 11:54:43 -08:00
Ms2ger
561cae4a0e
Bug 950130 - Move more INCLUDES / LOCAL_INCLUDES to moz.build; r=mshal
2013-12-31 10:06:11 +01:00
Wes Kocher
51be634cd2
Backed out changeset ef0eeaec74a8 (bug 949183) on the theory that it somehow broke every single b2g test on a CLOSED TREE
2013-12-16 18:27:43 -08:00
Sean Stangl
59305924cb
Bug 949183 - Fix jsid static constructor explosion. r=Waldo
2013-12-16 14:40:05 -08:00
Eric Faust
46a65bdd10
Bug 926012 - Part 3: Convert wrappers to using dynamic prototype hooks. (r=bholley)
2013-12-13 12:01:30 -08:00
Boris Zbarsky
abefb320a5
Bug 946067 part 2. Generate Window's access checks in XPConnect based on WebIDL access annotations. r=bholley,peterv
2013-12-09 10:34:03 -05:00
Boris Zbarsky
5a1836271c
Bug 946289. Make GetNativeForGlobal work for WebIDL globals. r=peterv
2013-12-09 10:34:03 -05:00
Jacek Caban
c9efa74885
Bug 944444 - Fix js/ compilation on mingw. r=Waldo
2013-12-05 10:56:22 +01:00
Ehsan Akhgari
656e1c1b05
Bug 939608 - Part 2: Build xpconnect in unified mode; r=bholley
2013-11-20 11:35:34 -05:00
Bobby Holley
76193870ea
Bug 933681 - Resolve canonical eval() onto Xrayed globals. r=jorendorff
2013-11-22 10:55:43 -08:00
Bobby Holley
bdc983a462
Bug 933681 - Add lookups for standard classes in XrayWrapper. r=jorendorff
2013-11-22 10:55:42 -08:00
Ehsan Akhgari
b86497683d
Backed out changeset 5993d8ad664c (bug 939608) because bug 941450 was backed out
...
Landed on a CLOSED TREE
2013-11-22 11:22:49 -05:00
Jon Coppeard
d8c217e468
Bug 941767 - Fix rooting hazard in GetNativeForGlobal() r=bholley
2013-11-22 06:58:32 -08:00
Ehsan Akhgari
64bc15535e
Bug 939608 - Part 2: Build xpconnect in unified mode; r=bholley
...
--HG--
extra : rebase_source : d4baf7ddb95bb0217357b9eb9fabd2e08d37548a
2013-11-20 11:35:34 -05:00
Terrence Cole
6936f37dc7
Bug 940505 - Handlify GetXrayWaiver; r=bholley
...
--HG--
extra : rebase_source : 1812e79207fccdcf479b14637b67b2510d2f317b
2013-11-19 10:12:10 -08:00
Ehsan Akhgari
69ecdab690
Bug 939608 - Part 1: Code changes required to build xpconnect in unified mode; r=bholley
...
--HG--
extra : rebase_source : e691b361737fbb233a0b33ed7fc6aa97ae172223
2013-11-19 15:03:40 -05:00
Carsten "Tomcat" Book
30de6cc6d3
Backed out changeset 161bfee3f57a (bug 939608) PGO build issue
2013-11-19 14:13:15 +01:00
Mike Hommey
2812d11fce
Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
...
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
e06d795c71
Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps
2013-11-19 11:48:10 +09:00
Mike Hommey
e80e877ab7
Bug 939044 - Remove most definitions of MODULE. r=mshal
2013-11-19 11:47:39 +09:00
Mike Hommey
ffe0380912
Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps
2013-11-19 11:47:14 +09:00
Ehsan Akhgari
e91814a204
Bug 939608 - Build xpconnect in unified mode; r=bholley
2013-11-18 00:47:30 -05:00