@@ -722,7 +722,8 @@ <h3 id="should-block-fetch">
722
722
< var > request</ var > 's < a > client</ a > 's < a > responsible browsing
723
723
context</ a > has no < a > parent browsing context</ a > .
724
724
725
- ISSUE: Is this right, Anne?
725
+ ISSUE: This doesn't yet work correctly for content inside an
726
+ < {iframe}> or < {frame}> .
726
727
</ li >
727
728
</ ol >
728
729
</ li >
@@ -810,76 +811,71 @@ <h3 id="should-block-response">
810
811
811
812
< ol >
812
813
< 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 >
821
840
</ li >
822
841
< 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 >
825
855
</ li >
826
856
< 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:
829
860
830
861
< ol >
831
862
< 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 > .
854
865
</ li >
855
866
< 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 > ".
874
875
</ li >
875
876
</ 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.
881
877
</ li >
882
- < li > Return < strong > allowed </ strong > .</ li >
878
+ < li > Return < strong > blocked </ strong > .</ li >
883
879
</ ol >
884
880
</ section >
885
881
</ section >
0 commit comments