Re: [JS-internals] Wrappers

2018-09-10 Thread Luke Wagner
Longer term, I think we should consider putting all synchronously-accessible realms in the same compartment which would mean content never observed a transparent wrapper. (There are important security/testing/defense-in-depth questions to answer here, but iirc, there are reasonable answers.) Unf

Re: [JS-internals] Wrappers

2018-09-10 Thread Lars Hansen
Right, and we don't even need to throw: type testing just fails when we try to unbox anyref and we get a failed downcast; other ref types can't cross the JS->wasm boundary at all at the moment. So it's literally zero effort to deal with this now, I'm more worried about the longer term. --lars On

Re: [JS-internals] Wrappers

2018-09-10 Thread Luke Wagner
You're right that, to correctly handle transparent wrappers, wasm would have to do a lot of work to deal with them (they can't simply be unwrapped) and I agree that we don't want to do that. After Jan's work, the only case where normal Web content would see transparent wrappers would be the case w

Re: [JS-internals] Wrappers

2018-09-10 Thread Lars Hansen
I don't know enough about wrappers yet to have a definite opinion, but it's my understanding that if I encounter a wrapper I can't just unwrap the value and pass the resulting pointer on and let it escape unwrapped back into content. If that is so, then we have a problem, because it means that pot

Re: [JS-internals] Wrappers

2018-09-07 Thread Bobby Holley
I don't think we're anywhere close to a point where transparent wrappers (js::CrossCompartmentWrapper) will go away, or can be ignored by SM devs. Even after Jan's changes, we'll still use them for lots of things (including Chrome->Content XrayWaivers). For stuff that's super edge-casey, it may be

Re: [JS-internals] Wrappers

2018-09-07 Thread Lars Hansen
Thanks. Same-origin should be plenty good for what I'm doing. In the mean time, trapping / throwing when attempting to unbox an anyref that needs to be unwrapped is probably fine. --lars On Fri, Sep 7, 2018 at 11:05 AM, Jan de Mooij wrote: > On Fri, Sep 7, 2018 at 10:47 AM, Lars Hansen wrote

Re: [JS-internals] Wrappers

2018-09-07 Thread Jan de Mooij
On Fri, Sep 7, 2018 at 10:47 AM, Lars Hansen wrote: > So: what's the story, and what's the status? > Bug 1357862 will eliminate a lot of wrappers (it requires some Gecko changes still before we can enable it), but it will only get rid of same-origin wrappers at first. There has been some discuss