Skip to content

Commit

Permalink
Move away from including IANA templates
Browse files Browse the repository at this point in the history
This is the first step towards addressing whatwg#7274. It takes care of Cross-Origin-Embedder-Policy, Cross-Origin-Embedder-Policy-Report-Only, Cross-Origin-Opener-Policy, Cross-Origin-Opener-Policy-Report-Only, and Origin-Agent-Cluster.

Closes whatwg#7325.
  • Loading branch information
annevk authored and dandclark committed Dec 4, 2021
1 parent e86b2f0 commit dc38e63
Showing 1 changed file with 39 additions and 164 deletions.
203 changes: 39 additions & 164 deletions source
Expand Up @@ -80385,8 +80385,8 @@ console.assert(iframeWindow.frameElement === null);
<span data-x="browsing context group">browsing context groups</span> where:</p>

<ul>
<li><p>every top-level <span>Document</span> has `<code data-x=""><span
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</span>: <span
<li><p>every top-level <span>Document</span> has `<code
data-x=""><span>Cross-Origin-Opener-Policy</span>: <span
data-x="coop-same-origin">same-origin</span></code>`, and</p></li>

<li><p>every <span>Document</span> has a `<code>Cross-Origin-Embedder-Policy</code>` header
Expand Down Expand Up @@ -83024,10 +83024,10 @@ interface <dfn interface>BarProp</dfn> {

<p>A <code>Document</code> delivered over a <span>secure context</span> can request that it be
placed in an <span>origin</span>-<span data-x="agent cluster key">keyed</span> <span>agent
cluster</span>, by using the `<code
data-x="http-origin-agent-cluster">Origin-Agent-Cluster</code>` HTTP response header. This header
is a <span data-x="http-structured-header">structured header</span> whose value must be a <span
data-x="http-structured-header-boolean">boolean</span>. <ref spec=STRUCTURED-FIELDS></p>
cluster</span>, by using the `<dfn http-header><code>Origin-Agent-Cluster</code></dfn>` HTTP
response header. This header is a <span data-x="http-structured-header">structured header</span>
whose value must be a <span data-x="http-structured-header-boolean">boolean</span>. <ref
spec=STRUCTURED-FIELDS></p>

<p><span w-nodev>Per the processing model in the <span data-x="create-the-document-object">create
and initialize a new <code>Document</code> object</span>, values</span><span w-dev>Values</span>
Expand All @@ -83045,11 +83045,11 @@ interface <dfn interface>BarProp</dfn> {
to allocate implementation-specific resources corresponding to <span data-x="agent cluster">agent
clusters</span>, such as processes or threads, more efficiently.</p>

<p>Note that within a <span>browsing context group</span>, the `<code
data-x="http-origin-agent-cluster">Origin-Agent-Cluster</code>` header can never cause same-origin
<code>Document</code> objects to end up in different <span data-x="agent cluster">agent
clusters</span>, even if one sends the header and the other doesn't.<span w-nodev> This is
prevented by means of the <span>historical agent cluster key map</span>.</span></p>
<p>Note that within a <span>browsing context group</span>, the `<code>Origin-Agent-Cluster</code>`
header can never cause same-origin <code>Document</code> objects to end up in different <span
data-x="agent cluster">agent clusters</span>, even if one sends the header and the other
doesn't.<span w-nodev> This is prevented by means of the <span>historical agent cluster key
map</span>.</span></p>

<p class="note">This means that the <code
data-x="dom-originAgentCluster">originAgentCluster</code> getter can return false, even if the
Expand All @@ -83069,9 +83069,8 @@ interface <dfn interface>BarProp</dfn> {
<p class="note">Similarly, <code>Document</code>s whose <span>agent cluster</span>'s
<span data-x="agent-cluster-cross-origin-isolation">cross-origin isolation mode</span> is not
"<code data-x="cross-origin-isolation-none">none</code>" are automatically origin-keyed. The
`<code data-x="http-origin-agent-cluster">Origin-Agent-Cluster</code>` header might be useful as
an additional hint to implementations about resource allocation, since the `<code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` and
`<code>Origin-Agent-Cluster</code>` header might be useful as an additional hint to
implementations about resource allocation, since the `<code>Cross-Origin-Opener-Policy</code>` and
`<code>Cross-Origin-Embedder-Policy</code>` headers used to achieve cross-origin isolation are
more about ensuring that everything in the same address space opts in to being there. But adding
it would have no additional observable effects on author code.</p>
Expand Down Expand Up @@ -83451,11 +83450,9 @@ interface <dfn interface>BarProp</dfn> {
data-x="cross-origin-isolation-concrete">concrete</code>".</p>

<p class="note">"<code data-x="coop-same-origin-plus-COEP">same-origin-plus-COEP</code>" cannot
be directly set via the `<code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` header, but results
from a combination of setting both `<code data-x=""><span
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</span>: <span
data-x="coop-same-origin">same-origin</span></code>` and a
be directly set via the `<code>Cross-Origin-Opener-Policy</code>` header, but results
from a combination of setting both `<code data-x=""><span>Cross-Origin-Opener-Policy</span>:
<span data-x="coop-same-origin">same-origin</span></code>` and a
`<code>Cross-Origin-Embedder-Policy</code>` header whose value is <span>compatible with
cross-origin isolation</span> together.<p>
</dd>
Expand Down Expand Up @@ -83497,15 +83494,14 @@ interface <dfn interface>BarProp</dfn> {
<li><p>Return false.</p></li>
</ol>

<h4>The headers</h4>
<h4 id="the-coop-headers">The headers</h4>

<p>A <code>Document</code>'s <span data-x="concept-document-coop">cross-origin opener
policy</span> is derived from the `<code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` and the `<code
data-x="http-cross-origin-opener-policy-report-only">Cross-Origin-Opener-Policy-Report-Only</code>`
HTTP response headers. These headers are <span data-x="http-structured-header">structured
headers</span> whose value must be a <span data-x="http-structured-header-token">token</span>.
<ref spec=STRUCTURED-FIELDS></p>
policy</span> is derived from the `<dfn http-header
id="cross-origin-opener-policy-2"><code>Cross-Origin-Opener-Policy</code></dfn>` and `<dfn
http-header><code>Cross-Origin-Opener-Policy-Report-Only</code></dfn>` HTTP response headers.
These headers are <span data-x="http-structured-header">structured headers</span> whose value must
be a <span data-x="http-structured-header-token">token</span>. <ref spec=STRUCTURED-FIELDS></p>

<p>The valid <span data-x="http-structured-header-token">token</span> values are the <span
data-x="cross-origin opener policy value">opener policy values</span>. The token may also have
Expand All @@ -83530,9 +83526,8 @@ interface <dfn interface>BarProp</dfn> {
<var>policy</var>.</p></li>

<li><p>Let <var>value</var> be the result of <span>getting a structured field value</span> given
`<code data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` and "<code
data-x="">item</code>" from <var>response</var>'s <span
data-x="concept-response-header-list">header list</span>.</p></li>
`<code>Cross-Origin-Opener-Policy</code>` and "<code data-x="">item</code>" from
<var>response</var>'s <span data-x="concept-response-header-list">header list</span>.</p></li>

<li>
<p>If <var>parsedItem</var> is not null, then:</p>
Expand Down Expand Up @@ -83570,10 +83565,9 @@ interface <dfn interface>BarProp</dfn> {
</li>

<li><p>Set <var>parsedItem</var> to the result of <span>getting a structured field value</span>
given `<code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy-Report-Only</code>` and
"<code data-x="">item</code>" from <var>response</var>'s <span
data-x="concept-response-header-list">header list</span>.</p></li>
given `<code>Cross-Origin-Opener-Policy-Report-Only</code>` and "<code data-x="">item</code>"
from <var>response</var>'s <span data-x="concept-response-header-list">header
list</span>.</p></li>

<li>
<p>If <var>parsedItem</var> is not null, then:</p>
Expand Down Expand Up @@ -84670,13 +84664,14 @@ interface <dfn interface>BarProp</dfn> {
is "<code data-x="">coep</code>". It is <span>visible to
<code>ReportingObserver</code>s</span>.</p>

<h4>The headers</h4>
<h4 id="the-coep-headers">The headers</h4>

<p>The `<code>Cross-Origin-Embedder-Policy</code>` and
`<code>Cross-Origin-Embedder-Policy-Report-Only</code>` HTTP response header fields allow a server
to declare an <span>embedder policy</span> for an <span>environment settings object</span>. These
headers are <span data-x="http-structured-header">structured headers</span> whose values must be
<span data-x="http-structured-header-token">token</span>. <ref spec=STRUCTURED-FIELDS>
<p>The `<dfn http-header><code>Cross-Origin-Embedder-Policy</code></dfn>` and
`<dfn http-header><code>Cross-Origin-Embedder-Policy-Report-Only</code></dfn>` HTTP response
headers allow a server to declare an <span>embedder policy</span> for an <span>environment
settings object</span>. These headers are <span data-x="http-structured-header">structured
headers</span> whose values must be <span data-x="http-structured-header-token">token</span>. <ref
spec=STRUCTURED-FIELDS>

<p>The valid <span
data-x="http-structured-header-token">token</span> values are the <span data-x="embedder policy
Expand Down Expand Up @@ -85082,9 +85077,8 @@ interface <dfn interface>BarProp</dfn> {
href="https://github.com/whatwg/html/issues/4782">whatwg/html issue #4782</a> and <a
href="https://github.com/whatwg/html/issues/5350">whatwg/html issue #5350</a> for defining
<span>browsing session</span>. It is roughly analogous to a <span>top-level browsing
context</span> except that it cannot be replaced due to a `<code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` header or
navigation.</p>
context</span> except that it cannot be replaced due to a
`<code>Cross-Origin-Opener-Policy</code>` header or navigation.</p>

<p>A <span>top-level browsing context</span> has an associated <dfn export data-x="tlbc browsing
session" for="top-level browsing context">browsing session</dfn> which is a <span>browsing
Expand Down Expand Up @@ -88021,9 +88015,8 @@ interface <dfn interface>Location</dfn> { // but see also <a href="#the-location

<ol>
<li><p>Let <var>oacHeader</var> be the result of <span>getting a structured field value</span>
given `<code data-x="http-origin-agent-cluster">Origin-Agent-Cluster</code>` and "<code
data-x="">item</code>" from <var>response</var>'s <span
data-x="concept-response-header-list">header list</span>.</p></li>
given `<code>Origin-Agent-Cluster</code>` and "<code data-x="">item</code>" from
<var>response</var>'s <span data-x="concept-response-header-list">header list</span>.</p></li>

<li><p>Let <var>requestsOAC</var> be true if <var>oacHeader</var> is not
null and <var>oacHeader</var>[0] is the <span
Expand Down Expand Up @@ -96005,8 +95998,7 @@ interface mixin <dfn interface>WindowOrWorkerGlobalScope</dfn> {

<dt><code data-x="">self.<span subdfn data-x="dom-crossOriginIsolated">crossOriginIsolated</span></code></dt>
<dd><p>Returns whether scripts running in this global are allowed to use APIs that require
cross-origin isolation. This depends on the `<code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` and
cross-origin isolation. This depends on the `<code>Cross-Origin-Opener-Policy</code>` and
`<code>Cross-Origin-Embedder-Policy</code>` HTTP response headers and the "<code
data-x="cross-origin-isolated-feature">cross-origin-isolated</code>" feature.</p></dd>
</dl>
Expand Down Expand Up @@ -121621,123 +121613,6 @@ interface <dfn interface>External</dfn> {
<code>text/event-stream</code> resources.</p>


<h3>`<dfn http-header><code>Cross-Origin-Embedder-Policy</code></dfn>`</h3>

<p>This section describes a header for registration in the Permanent Message Header Field
Registry. <ref spec=RFC3864></p>

<dl>
<dt>Header field name:</dt>
<dd>Cross-Origin-Embedder-Policy</dd>
<dt>Applicable protocol:</dt>
<dd>http</dd>
<dt>Status:</dt>
<dd>standard</dd>
<dt>Author/Change controller:</dt>
<dd>WHATWG</dd>
<dt>Specification document(s):</dt>
<dd>
This document is the relevant specification.
</dd>
<dt>Related information:</dt>
<dd>None.</dd>
</dl>


<h3>`<dfn http-header><code>Cross-Origin-Embedder-Policy-Report-Only</code></dfn>`</h3>

<p>This section describes a header for registration in the Permanent Message Header Field
Registry. <ref spec=RFC3864></p>

<dl>
<dt>Header field name:</dt>
<dd>Cross-Origin-Embedder-Policy-Report-Only</dd>
<dt>Applicable protocol:</dt>
<dd>http</dd>
<dt>Status:</dt>
<dd>standard</dd>
<dt>Author/Change controller:</dt>
<dd>WHATWG</dd>
<dt>Specification document(s):</dt>
<dd>
This document is the relevant specification.
</dd>
<dt>Related information:</dt>
<dd>None.</dd>
</dl>


<h3>`<dfn http-header><code
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code></dfn>`</h3>

<p>This section describes a header for registration in the Permanent Message Header Field
Registry. <ref spec=RFC3864></p>

<dl>
<dt>Header field name:</dt>
<dd>Cross-Origin-Opener-Policy</dd>
<dt>Applicable protocol:</dt>
<dd>http</dd>
<dt>Status:</dt>
<dd>standard</dd>
<dt>Author/Change controller:</dt>
<dd>WHATWG</dd>
<dt>Specification document(s):</dt>
<dd>
This document is the relevant specification.
</dd>
<dt>Related information:</dt>
<dd>None.</dd>
</dl>


<h3>`<dfn http-header><code
data-x="http-cross-origin-opener-policy-report-only">Cross-Origin-Opener-Policy-Report-Only</code></dfn>`</h3>

<p>This section describes a header for registration in the Permanent Message Header Field
Registry. <ref spec=RFC3864></p>

<dl>
<dt>Header field name:</dt>
<dd>Cross-Origin-Opener-Policy-Report-Only</dd>
<dt>Applicable protocol:</dt>
<dd>http</dd>
<dt>Status:</dt>
<dd>standard</dd>
<dt>Author/Change controller:</dt>
<dd>WHATWG</dd>
<dt>Specification document(s):</dt>
<dd>
This document is the relevant specification.
</dd>
<dt>Related information:</dt>
<dd>None.</dd>
</dl>


<h3>`<dfn><code data-x="http-origin-agent-cluster">Origin-Agent-Cluster</code></dfn>`</h3>

<p>This section describes a header for registration in the Permanent Message Header Field
Registry. <ref spec=RFC3864></p>

<dl>
<dt>Header field name:</dt>
<dd>Origin-Agent-Cluster</dd>
<dt>Applicable protocol:</dt>
<dd>http</dd>
<dt>Status:</dt>
<dd>standard</dd>
<dt>Author/Change controller:</dt>
<dd>WHATWG</dd>
<dt>Specification document(s):</dt>
<dd>
This document is the relevant specification.
</dd>
<dt>Related information:</dt>
<dd>None.</dd>
</dl>


<h3 id="ping-from">`<dfn><code data-x="http-ping-from">Ping-From</code></dfn>`</h3>

<p>This section describes a header for registration in the Permanent Message Header Field
Expand Down

0 comments on commit dc38e63

Please sign in to comment.