From 768b3268250cf7a237168103eb19716936008cd6 Mon Sep 17 00:00:00 2001 From: Brian Kardell <> Date: Fri, 31 Jan 2020 14:21:26 -0500 Subject: [PATCH 1/7] Rename HTMLOrSVGElement to reflect its wider use in MathML as well --- source | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/source b/source index d0ae6452289..75ad4c12c26 100644 --- a/source +++ b/source @@ -7114,9 +7114,9 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
Elements that have a nonce
content attribute ensure that the
crytographic nonce is only exposed to script (and not to side-channels like CSS attribute
selectors) by extracting the value from the content attribute, moving it into an internal slot
- named [[CryptographicNonce]], and exposing it to script via the
- HTMLOrSVGElement
interface mixin. Unless otherwise specified, the slot's value
+ HTMLOrForeignElement
interface mixin. Unless otherwise specified, the slot's value
is the empty string.
The nonce
IDL
+ data-dfn-for="HTMLOrForeignElement">nonce
IDL
attribute must, on getting, return the value of this element's
[[CryptographicNonce]]; and on setting, set this element's
[[CryptographicNonce]] to the given value.
Note how the setter for the nonce
IDL attribute does not update the corresponding
+ data-x="dom-HTMLOrForeignElement-nonce">nonce IDL attribute does not update the corresponding
content attribute. This, as well as the below setting of the nonce
content attribute to the empty string when an element
becomes browsing-context connected, is meant to prevent exfiltration of the nonce
@@ -7142,11 +7142,11 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
issue #2369, where this behavior was
introduced.
Whenever an element including HTMLOrSVGElement
has its Whenever an element including
HTMLOrForeignElement
has its nonce
attribute is set or changed, set this element's
[[CryptographicNonce]] to the given value.
Whenever an element including Whenever an element including HTMLOrSVGElement
becomes browsing-context
+ HTMLOrForeignElement
becomes browsing-context
connected, the user agent must execute the following steps on the element:
@@ -7174,7 +7174,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
creation and initialization
.
The cloning steps for elements that include
- HTMLOrSVGElement
must set the [[CryptographicNonce]] slot on the copy
+ HTMLOrForeignElement
must set the [[CryptographicNonce]] slot on the copy
to the value of the slot on the element being cloned.
Features shared between HTML and SVG elements use the HTMLOrSVGElement
interface
+
Features shared between HTML, SVG and MathML elements use the HTMLOrForeignElement
interface
mixin:
interface mixin HTMLOrSVGElement {
+ interface mixin HTMLOrForeignElement {
[SameObject] readonly attribute DOMStringMap dataset;
- attribute DOMString nonce; // intentionally no [CEReactions]
+ attribute DOMString nonce; // intentionally no [CEReactions]
[CEReactions] attribute boolean autofocus;
[CEReactions] attribute long tabIndex;
@@ -126042,3 +126042,4 @@ INSERT INTERFACES HERE