Skip to content

Commit bbe52ec

Browse files
committed
MIX: Align 'should block response?' with Fetch.
#465
1 parent 72c2dba commit bbe52ec

File tree

1 file changed

+55
-59
lines changed

1 file changed

+55
-59
lines changed

specs/mixedcontent/index.src.html

Lines changed: 55 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -722,7 +722,8 @@ <h3 id="should-block-fetch">
722722
<var>request</var>'s <a>client</a>'s <a>responsible browsing
723723
context</a> has no <a>parent browsing context</a>.
724724

725-
ISSUE: Is this right, Anne?
725+
ISSUE: This doesn't yet work correctly for content inside an
726+
<{iframe}> or <{frame}>.
726727
</li>
727728
</ol>
728729
</li>
@@ -810,76 +811,71 @@ <h3 id="should-block-response">
810811

811812
<ol>
812813
<li>
813-
If [[#categorize-settings-object]] returns <code>Does Not Restrict
814-
Mixed Content</code> when applied to <var>request</var>'s <a>client</a>,
815-
return <strong>allowed</strong>.
816-
</li>
817-
<li>
818-
If the user agent has been instructed to allow <a>mixed content</a>
819-
(as outlined in [[#requirements-user-controls]]), return
820-
<strong>allowed</strong>.
814+
Return <strong>allowed</strong> if one or more of the following
815+
conditions are met:
816+
817+
<ol>
818+
<li>
819+
[[#categorize-settings-object]] returns <code>Does Not Restrict
820+
Mixed Content</code> when applied to <var>request</var>'s
821+
<a>client</a>.
822+
</li>
823+
<li>
824+
<var>response</var>'s <a>HTTPS state</a> is
825+
<code>authenticated</code>.
826+
</li>
827+
<li>
828+
The user agent has been instructed to allow <a>mixed content</a>, as
829+
described in [[#requirements-user-controls]]).
830+
</li>
831+
<li>
832+
<var>request</var>'s <a>target</a> is "<code>document</code>", and
833+
<var>request</var>'s <a>client</a>'s <a>responsible browsing
834+
context</a> has no <a>parent browsing context</a>.
835+
836+
ISSUE: This doesn't yet work correctly for content inside an
837+
<{iframe}> or <{frame}>.
838+
</li>
839+
</ol>
821840
</li>
822841
<li>
823-
Let <var>context</var> be the <a>request context</a> of
824-
<var>request</var>.
842+
Return <strong>blocked</strong> if one or more of the following
843+
conditions are met:
844+
845+
<ol>
846+
<li>
847+
The user agent is configured to block <a>optionally-blockable</a>
848+
mixed content, as described in [[#requirements-user-controls]].
849+
</li>
850+
<li>
851+
<var>request</var>'s <a>client</a>'s <a>strict mixed content
852+
checking flag</a> is <code>true</code>.
853+
</li>
854+
</ol>
825855
</li>
826856
<li>
827-
If <var>response</var>'s <a>HTTPS state</a> is not
828-
<code>authenticated</code>:
857+
Return <strong>allowed</strong> if <var>response</var> is an <a>opaque
858+
filtered response</a> and one or more of the following conditions are
859+
met:
829860

830861
<ol>
831862
<li>
832-
If <var>context</var> is <code>fetch</code>:
833-
834-
<ol>
835-
<li>
836-
If <var>request</var> is <strong>not</strong> a <a>passthrough
837-
request</a>, return <strong>blocked</strong>.
838-
</li>
839-
<li>
840-
If <var>response</var> is <strong>not</strong> an <a>opaque
841-
filtered response</a>, return <strong>blocked</strong>.
842-
</li>
843-
<li>
844-
If the user agent is configured to block
845-
<a>optionally-blockable</a> mixed content, return
846-
<strong>blocked</strong>.
847-
</li>
848-
<li>
849-
If <var>request</var>'s <a>client</a>'s <a>strict mixed content
850-
checking flag</a> is <code>true</code>, return
851-
<strong>blocked</strong>.
852-
</li>
853-
</ol>
863+
<var>request</var>'s <a>initiator</a> is "<code>fetch</code>", and
864+
<var>request</var> is a <a>passthrough request</a>.
854865
</li>
855866
<li>
856-
Otherwise:
857-
858-
<ol>
859-
<li>
860-
If <var>context</var> is a blockable request
861-
context, return <strong>blocked</strong>.
862-
</li>
863-
<li>
864-
If the user agent is configured to block
865-
<a>optionally-blockable</a> mixed content, return
866-
<strong>blocked</strong>.
867-
</li>
868-
<li>
869-
If <var>request</var>'s <a>client</a>'s <a>strict mixed content
870-
checking flag</a> is <code>true</code>, return
871-
<strong>blocked</strong>.
872-
</li>
873-
</ol>
867+
<var>request</var>'s <a>type</a> is "<code>image</code>", and
868+
<a>initiator</a> is not "<code>imageset</code>".
869+
</li>
870+
<li>
871+
<var>request</var>'s <a>type</a> is "<code>video</code>".
872+
</li>
873+
<li>
874+
<var>request</var>'s <a>type</a> is "<code>audio</code>".
874875
</li>
875876
</ol>
876-
877-
Note: This covers both cases in which unauthenticated resources are
878-
returned (by a Service Worker, for example), as well as cases in
879-
which the TLS handshake succeeds, but the user agent chooses to hold
880-
it to a higher standard.
881877
</li>
882-
<li>Return <strong>allowed</strong>.</li>
878+
<li>Return <strong>blocked</strong>.</li>
883879
</ol>
884880
</section>
885881
</section>

0 commit comments

Comments
 (0)