Skip to content

Commit

Permalink
Spec: disallow fenced frames setting contextId/filteringIdMaxBytes. (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
blu25 authored Aug 29, 2024
1 parent 04cae6d commit 9108e9b
Showing 1 changed file with 25 additions and 14 deletions.
39 changes: 25 additions & 14 deletions spec.bs
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,10 @@ spec: webdriver; urlPrefix: https://w3c.github.io/webdriver/
type: dfn
text: getting a property; url: dfn-getting-properties
text: error code; url: dfn-error-code
spec: fenced-frame; urlPrefix: https://wicg.github.io/fenced-frame/
type: dfn;
for: browsing context;
text: fenced frame config instance; url: browsing-context-fenced-frame-config-instance
</pre>

<pre class=link-defaults>
Expand Down Expand Up @@ -1235,9 +1239,9 @@ steps. They return an [=aggregation coordinator=], null or a {{DOMException}}:

<div algorithm>
To <dfn>obtain the pre-specified report parameters</dfn> given a
{{SharedStorageRunOperationMethodOptions}} |options|, perform the following
steps. They return a [=pre-specified report parameters=], null, or a
{{DOMException}}:
{{SharedStorageRunOperationMethodOptions}} |options| and a [=browsing context=]
|context|, perform the following steps. They return a [=pre-specified report
parameters=], null, or a {{DOMException}}:
1. If |options|["{{SharedStorageRunOperationMethodOptions/privateAggregationConfig}}"]
does not [=map/exist=], return null.
1. Let |privateAggregationConfig| be
Expand All @@ -1254,6 +1258,10 @@ steps. They return a [=pre-specified report parameters=], null, or a
|privateAggregationConfig|["{{SharedStoragePrivateAggregationConfig/filteringIdMaxBytes}}"].
1. If |filteringIdMaxBytes| is not [=set/contained=] in the [=valid filtering ID
max bytes range=], return a new {{DOMException}} with name "`DataError`".
1. If |context|'s [=browsing context/fenced frame config instance=] is not null:
1. If |filteringIdMaxBytes| is not the [=default filtering ID max bytes=] or
|contextId| is not null, return a new {{DOMException}} with name
"`DataError`".
1. Return a new [=pre-specified report parameters=] with the items:
: [=pre-specified report parameters/context ID=]
:: |contextId|
Expand All @@ -1262,13 +1270,16 @@ steps. They return a [=pre-specified report parameters=], null, or a

</div>

The {{SharedStorage}} {{SharedStorage/run()}} method steps are modified in four
ways. First, add the following steps just after step 2 ("If
{{Worklet/addModule()}} has not yet been called, ..."), renumbering later steps
as appropriate:
The {{SharedStorageWorklet}}'s {{SharedStorageWorklet/run()}} method steps are
modified in four ways. First, add the following steps just after step 4
("[=Assert=]: <var ignore>window</var> is a [=Window=]"), renumbering later
steps as appropriate:
<div algorithm="shared-storage-run-monkey-patch-1">
3. Let |preSpecifiedParams| be the result of [=obtaining the pre-specified
report parameters=] given |options|.
5. Let |context| be <var ignore>window</var>'s [=Window/browsing context=].
1. If |context| is null, then return [=a promise rejected with=] a
{{TypeError}}.
1. Let |preSpecifiedParams| be the result of [=obtaining the pre-specified
report parameters=] given |options| and |context|.
1. If |preSpecifiedParams| is a {{DOMException}}, return [=a promise rejected
with=] |preSpecifiedParams|.
1. Let |aggregationCoordinator| be the result of [=obtaining the aggregation
Expand Down Expand Up @@ -1326,12 +1337,12 @@ Finally, at the end of the same nested scope, add the following step:

</div>

The {{SharedStorage}} {{SharedStorage/selectURL()}} method steps are modified in
three ways. First, add the following steps just after step 5 ("If
{{Worklet/addModule()}} has not yet been called, ..."), renumbering later steps:
The {{SharedStorageWorklet}}'s {{SharedStorageWorklet/selectURL()}} method steps
are modified in three ways. First, add the following steps just after step 6
("If <var ignore>context</var> is null..."), renumbering later steps:
<div algorithm="shared-storage-selecturl-monkey-patch-1">
6. Let |preSpecifiedParams| be the result of [=obtaining the pre-specified
report parameters=] given |options|.
7. Let |preSpecifiedParams| be the result of [=obtaining the pre-specified
report parameters=] given |options| and <var ignore>context</var>.
1. If |preSpecifiedParams| is a {{DOMException}}, return [=a promise rejected
with=] |preSpecifiedParams|.
1. Let |aggregationCoordinator| be the result of [=obtaining the aggregation
Expand Down

0 comments on commit 9108e9b

Please sign in to comment.