[WebAuthN] Implement dummy WebAuthN IDLs
authorjiewen_tan@apple.com <jiewen_tan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 16 Jan 2018 23:08:44 +0000 (23:08 +0000)
committerjiewen_tan@apple.com <jiewen_tan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 16 Jan 2018 23:08:44 +0000 (23:08 +0000)
commit5836b35dce5417335dd609acc557b1f5f0715e1c
tree2d309782555ee3ecc3dcc956d622210243b45197
parentd28853713e465169deb2697c9a20231032f6629a
[WebAuthN] Implement dummy WebAuthN IDLs
https://bugs.webkit.org/show_bug.cgi?id=181627
<rdar://problem/36459864>

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

* web-platform-tests/credential-management/credentialscontainer-create-basics.https-expected.txt:

Source/WebCore:

This patch implements dummy WebAuthN IDLs and connect them with Credential Management as well.
All implementations in this patch are subject to change when real implementations land. The
purpose here on the other hand is to have IDLs, bindings and implementations connected. This
patch should handle all IDLs that we need.

No tests.

* CMakeLists.txt:
* DerivedSources.make:
* Modules/credentialmanagement/CredentialCreationOptions.h:
* Modules/credentialmanagement/CredentialCreationOptions.idl:
* Modules/credentialmanagement/CredentialRequestOptions.h:
* Modules/credentialmanagement/CredentialRequestOptions.idl:
* Modules/webauthn/AuthenticatorAssertionResponse.cpp: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.cpp.
(WebCore::AuthenticatorAssertionResponse::AuthenticatorAssertionResponse):
(WebCore::AuthenticatorAssertionResponse::~AuthenticatorAssertionResponse):
(WebCore::AuthenticatorAssertionResponse::authenticatorData):
(WebCore::AuthenticatorAssertionResponse::signature):
(WebCore::AuthenticatorAssertionResponse::userHandle):
* Modules/webauthn/AuthenticatorAssertionResponse.h: Copied from Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h.
* Modules/webauthn/AuthenticatorAssertionResponse.idl: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.idl.
* Modules/webauthn/AuthenticatorAttestationResponse.cpp: Copied from Source/WebCore/Modules/credentialmanagement/CredentialCreationOptions.h.
(WebCore::AuthenticatorAttestationResponse::AuthenticatorAttestationResponse):
(WebCore::AuthenticatorAttestationResponse::~AuthenticatorAttestationResponse):
(WebCore::AuthenticatorAttestationResponse::attestationObject):
* Modules/webauthn/AuthenticatorAttestationResponse.h: Copied from Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h.
* Modules/webauthn/AuthenticatorAttestationResponse.idl: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.idl.
* Modules/webauthn/AuthenticatorResponse.cpp: Copied from Source/WebCore/Modules/credentialmanagement/CredentialCreationOptions.h.
(WebCore::AuthenticatorResponse::AuthenticatorResponse):
(WebCore::AuthenticatorResponse::~AuthenticatorResponse):
(WebCore::AuthenticatorResponse::clientDataJSON):
* Modules/webauthn/AuthenticatorResponse.h: Copied from Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h.
* Modules/webauthn/AuthenticatorResponse.idl: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.idl.
* Modules/webauthn/PublicKeyCredential.cpp:
(WebCore::PublicKeyCredential::rawId):
(WebCore::PublicKeyCredential::response):
(WebCore::PublicKeyCredential::getClientExtensionResults):
(WebCore::PublicKeyCredential::isUserVerifyingPlatformAuthenticatorAvailable):
* Modules/webauthn/PublicKeyCredential.h:
* Modules/webauthn/PublicKeyCredential.idl:
* Modules/webauthn/PublicKeyCredentialCreationOptions.h: Copied from Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h.
* Modules/webauthn/PublicKeyCredentialCreationOptions.idl: Added.
* Modules/webauthn/PublicKeyCredentialDescriptor.h: Copied from Source/WebCore/Modules/credentialmanagement/CredentialCreationOptions.h.
* Modules/webauthn/PublicKeyCredentialDescriptor.idl: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.idl.
* Modules/webauthn/PublicKeyCredentialRequestOptions.h: Copied from Source/WebCore/Modules/credentialmanagement/CredentialCreationOptions.h.
* Modules/webauthn/PublicKeyCredentialRequestOptions.idl: Copied from Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h.
* Modules/webauthn/PublicKeyCredentialType.h: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.idl.
* Modules/webauthn/PublicKeyCredentialType.idl: Copied from Source/WebCore/Modules/webauthn/PublicKeyCredential.idl.
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/WebCoreBuiltinNames.h:

LayoutTests:

Modify some tests to reflect the update.

* http/wpt/credential-management/credentialscontainer-create-basics.https-expected.txt:
* http/wpt/credential-management/credentialscontainer-create-basics.https.html:
* http/wpt/credential-management/credentialscontainer-get-basics.https-expected.txt:
* http/wpt/credential-management/credentialscontainer-get-basics.https.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@227007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
37 files changed:
LayoutTests/ChangeLog
LayoutTests/http/wpt/credential-management/credentialscontainer-create-basics.https-expected.txt
LayoutTests/http/wpt/credential-management/credentialscontainer-create-basics.https.html
LayoutTests/http/wpt/credential-management/credentialscontainer-get-basics.https-expected.txt
LayoutTests/http/wpt/credential-management/credentialscontainer-get-basics.https.html
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/credential-management/credentialscontainer-create-basics.https-expected.txt
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.make
Source/WebCore/Modules/credentialmanagement/CredentialCreationOptions.h
Source/WebCore/Modules/credentialmanagement/CredentialCreationOptions.idl
Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h
Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.idl
Source/WebCore/Modules/webauthn/AuthenticatorAssertionResponse.cpp [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorAssertionResponse.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorAssertionResponse.idl [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorAttestationResponse.cpp [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorAttestationResponse.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorAttestationResponse.idl [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorResponse.cpp [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorResponse.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/AuthenticatorResponse.idl [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredential.cpp
Source/WebCore/Modules/webauthn/PublicKeyCredential.h
Source/WebCore/Modules/webauthn/PublicKeyCredential.idl
Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.idl [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialDescriptor.idl [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialRequestOptions.idl [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialType.h [new file with mode: 0644]
Source/WebCore/Modules/webauthn/PublicKeyCredentialType.idl [new file with mode: 0644]
Source/WebCore/Sources.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/WebCoreBuiltinNames.h