Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 772701bae9c5a854a774f4dde7416235fa8c8e6d
      
https://github.com/WebKit/WebKit/commit/772701bae9c5a854a774f4dde7416235fa8c8e6d
  Author: Anne van Kesteren <[email protected]>
  Date:   2026-10-08 (Thu, 08 Oct 2026)

  Changed paths:
    R LayoutTests/fast/web-share/share-canShare-insecure-expected.txt
    R LayoutTests/fast/web-share/share-canShare-insecure.html
    R 
LayoutTests/http/tests/events/device-orientation-motion-insecure-context-expected.txt
    R 
LayoutTests/http/tests/events/device-orientation-motion-insecure-context.html
    R 
LayoutTests/http/tests/events/device-orientation-motion-non-secure-context-expected.txt
    R 
LayoutTests/http/tests/events/device-orientation-motion-non-secure-context.html
    R 
LayoutTests/http/tests/is-logged-in/unavailable-in-insecure-contexts-expected.txt
    R LayoutTests/http/tests/is-logged-in/unavailable-in-insecure-contexts.html
    R LayoutTests/http/tests/misc/gamepads-insecure-expected.txt
    R LayoutTests/http/tests/misc/gamepads-insecure.html
    R 
LayoutTests/http/tests/notifications/notification-in-non-secure-context-expected.txt
    R 
LayoutTests/http/tests/notifications/notification-in-non-secure-context.html
    R LayoutTests/http/tests/security/insecure-geolocation-expected.txt
    R LayoutTests/http/tests/security/insecure-geolocation.html
    R 
LayoutTests/http/tests/security/resources/geolocation-over-insecure-content.html
    R 
LayoutTests/http/tests/workers/resources/worker-iframe-owner-isSecureContext-frame.html
    R 
LayoutTests/http/tests/workers/resources/worker-iframe-owner-isSecureContext-worker.js
    R 
LayoutTests/http/tests/workers/worker-iframe-owner-isSecureContext-expected.txt
    R LayoutTests/http/tests/workers/worker-iframe-owner-isSecureContext.html
    R 
LayoutTests/http/wpt/cross-origin-opener-policy/non-secure-to-secure-context-navigation.https-expected.txt
    R 
LayoutTests/http/wpt/cross-origin-opener-policy/non-secure-to-secure-context-navigation.https.html
    R 
LayoutTests/http/wpt/cross-origin-opener-policy/resources/non-secure-to-secure-context-navigation-popup.html
    R LayoutTests/http/wpt/crypto/historical-expected.txt
    R LayoutTests/http/wpt/crypto/historical.html
    A LayoutTests/http/wpt/gamepad/getGamepads-insecure-context-expected.txt
    A LayoutTests/http/wpt/gamepad/getGamepads-insecure-context.html
    A LayoutTests/http/wpt/geolocation/insecure-geolocation-expected.txt
    A LayoutTests/http/wpt/geolocation/insecure-geolocation.html
    A 
LayoutTests/http/wpt/geolocation/resources/geolocation-over-insecure-content.html
    A 
LayoutTests/http/wpt/is-logged-in/unavailable-in-insecure-contexts-expected.txt
    A LayoutTests/http/wpt/is-logged-in/unavailable-in-insecure-contexts.html
    R LayoutTests/http/wpt/mediastream/speechrecognition-insecure-expected.txt
    R LayoutTests/http/wpt/mediastream/speechrecognition-insecure.html
    M LayoutTests/imported/w3c/resources/import-expectations.json
    A 
LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-opener-policy/non-secure-to-secure-context-navigation.https-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-opener-policy/non-secure-to-secure-context-navigation.https.html
    A 
LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-opener-policy/resources/non-secure-to-secure-context-navigation-popup.html
    M 
LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-opener-policy/resources/w3c-import.log
    M 
LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-opener-policy/w3c-import.log
    A 
LayoutTests/imported/w3c/web-platform-tests/orientation-event/device-orientation-events-unavailable-on-insecure-origins-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/orientation-event/device-orientation-events-unavailable-on-insecure-origins.html
    A 
LayoutTests/imported/w3c/web-platform-tests/orientation-event/resources/orientation-event-helpers.js
    A 
LayoutTests/imported/w3c/web-platform-tests/orientation-event/resources/w3c-import.log
    A 
LayoutTests/imported/w3c/web-platform-tests/orientation-event/w3c-import.log
    A 
LayoutTests/imported/w3c/web-platform-tests/speech-api/SpeechRecognition-non-secure-context.http-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/speech-api/SpeechRecognition-non-secure-context.http.html
    M LayoutTests/imported/w3c/web-platform-tests/speech-api/w3c-import.log
    R 
LayoutTests/platform/ios/http/tests/events/device-orientation-motion-insecure-context-expected.txt
    R 
LayoutTests/platform/ios/http/tests/events/device-orientation-motion-non-secure-context-expected.txt
    M LayoutTests/platform/win/TestExpectations
    M Source/WebCore/dom/Document.h
    M Source/WebCore/page/SecurityOrigin.h
    M Source/WebCore/testing/Internals.cpp
    M Source/WebCore/testing/Internals.h
    M Source/WebCore/testing/Internals.idl

  Log Message:
  -----------
  Remove internals.markContextAsInsecure()
https://bugs.webkit.org/show_bug.cgi?id=326672
rdar://189407926

Reviewed by Chris Dumez.

internals.markContextAsInsecure() turned a document created as a secure
context into a non-secure one, which cannot happen otherwise: an API that
requires a secure context is either exposed or not. It also changed state only
in its own process, so with site isolation other processes still saw a secure
context.

Tests now get a real non-secure context from the WPT server, as localhost is
potentially trustworthy. Tests that need nothing WebKit-specific become
web-platform tests:
- 
orientation-event/device-orientation-events-unavailable-on-insecure-origins.html
  is imported and replaces http/tests/events/device-orientation-motion-*.
- speech-api/SpeechRecognition-non-secure-context.http.html is new and replaces
  http/wpt/mediastream/speechrecognition-insecure.html.
  SpeechRecognitionResultList is still exposed in non-secure contexts.
- 
html/cross-origin-opener-policy/non-secure-to-secure-context-navigation.https.html
  moves from http/wpt. Its popup now starts at
  get_host_info().UNAUTHENTICATED_ORIGIN and navigates itself to the secure 
page.

The tests for the login status API, getGamepads() and geolocation's console
message move to http/wpt and run from get_host_info().UNAUTHENTICATED_ORIGIN.
The login status test now checks navigator.setStatus() and
navigator.isLoggedIn() instead of navigator.setLoggedIn(), which no longer
exists.

Four tests are removed, as imported WPTs already cover them from a non-secure
context:
- fast/web-share/share-canShare-insecure.html, by 
web-share/canShare-insecure.http.html
  and web-share/share-securecontext.http.html.
- http/tests/notifications/notification-in-non-secure-context.html, by
  notifications/permissions-non-secure.html.
- http/tests/workers/worker-iframe-owner-isSecureContext.html, by
  secure-contexts/basic-dedicated-worker.html.
- http/wpt/crypto/historical.html, by WebCryptoAPI/historical.any.html.

This also removes the SecurityOrigin and Document setters that only the hook
used.

Canonical link: https://commits.webkit.org/323118@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to