Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 06adc1c85bf626a4bbece8777e75280008468b37
https://github.com/WebKit/WebKit/commit/06adc1c85bf626a4bbece8777e75280008468b37
Author: Pascoe <[email protected]>
Date: 2025-10-22 (Wed, 22 Oct 2025)
Changed paths:
A Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.cpp
M Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h
M Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.idl
M Source/WebCore/Modules/identity/DigitalCredential.cpp
M
Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.cpp
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCStatsCollector.h
M Source/WebCore/Modules/notifications/NotificationPayload.cpp
M Source/WebCore/Modules/webauthn/AttestationConveyancePreference.idl
M Source/WebCore/Modules/webauthn/AuthenticatorAttachment.idl
M Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.cpp
A Source/WebCore/Modules/webauthn/AuthenticatorSelectionCriteria.cpp
M Source/WebCore/Modules/webauthn/AuthenticatorSelectionCriteria.h
M Source/WebCore/Modules/webauthn/AuthenticatorSelectionCriteria.idl
M Source/WebCore/Modules/webauthn/AuthenticatorTransport.idl
M Source/WebCore/Modules/webauthn/PublicKeyCredential.cpp
A Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.cpp
M Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.h
M Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.idl
M Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.h
M Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.idl
A Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.cpp
M Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.h
M Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.idl
M Source/WebCore/Modules/webauthn/ResidentKeyRequirement.idl
M Source/WebCore/Modules/webauthn/UserVerificationRequirement.idl
M Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.cpp
M Source/WebCore/Modules/webauthn/fido/U2fCommandConstructor.cpp
M Source/WebCore/Modules/webdatabase/DatabaseManager.cpp
M Source/WebCore/Modules/websockets/ThreadableWebSocketChannel.cpp
M Source/WebCore/Modules/webxr/XRWebGLBinding.cpp
M Source/WebCore/Sources.txt
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
M Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm
M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm
M
Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm
M Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.cpp
M Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp
M Source/WebKit/UIProcess/WebAuthentication/fido/U2fAuthenticator.cpp
M Tools/TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp
M Tools/TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm
Log Message:
-----------
[WebAuthn] Reland enums should be DOMStrings
rdar://156713314
https://bugs.webkit.org/show_bug.cgi?id=301101
Reviewed by Brent Fulgham.
WebAuthn enums should be DOMStrings instead, see the discussion on the spec
[1]. If a value is not valid,
it should be treated as not present (which usually means it should be converted
into the default). This
applies to AuthenticatorAttachment, ResidentKeyRequirement,
UserVerificationRequirement, and AttestationConveyancePreference.
w3c/webauthn#1738
* Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.cpp:
Copied from Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.h.
(WebCore::CredentialRequestOptions::mediation const):
* Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h:
* Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.idl:
* Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.cpp:
(WebCore::AuthenticatorCoordinator::discoverFromExternalSource):
* Source/WebCore/Modules/webauthn/AuthenticatorSelectionCriteria.cpp: Added.
(WebCore::AuthenticatorSelectionCriteria::authenticatorAttachment const):
(WebCore::AuthenticatorSelectionCriteria::residentKey const):
(WebCore::AuthenticatorSelectionCriteria::userVerification const):
* Source/WebCore/Modules/webauthn/AuthenticatorSelectionCriteria.h:
* Source/WebCore/Modules/webauthn/AuthenticatorSelectionCriteria.idl:
* Source/WebCore/Modules/webauthn/PublicKeyCredential.cpp:
(WebCore::fromJSON):
(WebCore::PublicKeyCredential::parseCreationOptionsFromJSON):
(WebCore::PublicKeyCredential::parseRequestOptionsFromJSON):
* Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.cpp:
Copied from Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.h.
(WebCore::PublicKeyCredentialCreationOptions::attestation const):
* Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.h:
* Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.idl:
* Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.h:
* Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.idl:
* Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.cpp: Copied
from Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.h.
(WebCore::PublicKeyCredentialRequestOptions::userVerification const):
* Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.h:
* Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.idl:
* Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.cpp:
(fido::encodeMakeCredentialRequestAsCBOR):
(fido::encodeGetAssertionRequestAsCBOR):
* Source/WebCore/Modules/webauthn/fido/U2fCommandConstructor.cpp:
(fido::isConvertibleToU2fRegisterCommand):
(fido::isConvertibleToU2fSignCommand):
* Source/WebCore/Sources.txt:
* Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:
(authenticatorTransports):
(authenticatorSelectionCriteria):
(+[_WKWebAuthenticationPanel convertToCoreCreationOptionsWithOptions:]):
(wkTransports):
(+[_WKWebAuthenticationPanel convertToCoreRequestOptionsWithOptions:]):
* Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp:
(WebKit::WebCore::collectTransports):
*
Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm:
(WebKit::WebAuthenticatorCoordinatorProxy::requestsForRegistration):
(WebKit::WebAuthenticatorCoordinatorProxy::requestsForAssertion):
(WebKit::configureRegistrationRequestContext):
(WebKit::configurationAssertionRequestContext):
* Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.cpp:
(WebKit::getUserVerificationRequirement):
* Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:
(WebKit::CtapAuthenticator::continueMakeCredentialAfterCheckExcludedCredentials):
(WebKit::CtapAuthenticator::continueMakeCredentialAfterResponseReceived):
(WebKit::CtapAuthenticator::continueGetAssertionAfterCheckAllowCredentials):
* Source/WebKit/UIProcess/WebAuthentication/fido/U2fAuthenticator.cpp:
(WebKit::U2fAuthenticator::continueRegisterCommandAfterResponseReceived):
Canonical link: https://commits.webkit.org/302002@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications