WebAuthenticatorCoordinator.cpp [plain text]
#include "config.h"
#include "WebAuthenticatorCoordinator.h"
#if ENABLE(WEB_AUTHN)
#include "WebAuthenticatorCoordinatorProxyMessages.h"
#include "WebFrame.h"
#include "WebPage.h"
#include <WebCore/AuthenticatorResponseData.h>
#include <WebCore/PublicKeyCredentialCreationOptions.h>
#include <WebCore/PublicKeyCredentialRequestOptions.h>
#include <WebCore/SecurityOrigin.h>
namespace WebKit {
using namespace WebCore;
WebAuthenticatorCoordinator::WebAuthenticatorCoordinator(WebPage& webPage)
: m_webPage(webPage)
{
}
void WebAuthenticatorCoordinator::makeCredential(const Frame& frame, const SecurityOrigin& origin, const Vector<uint8_t>& hash, const PublicKeyCredentialCreationOptions& options, RequestCompletionHandler&& handler)
{
auto* webFrame = WebFrame::fromCoreFrame(frame);
if (!webFrame)
return;
m_webPage.sendWithAsyncReply(Messages::WebAuthenticatorCoordinatorProxy::MakeCredential(webFrame->frameID(), origin.data(), hash, options), WTFMove(handler));
}
void WebAuthenticatorCoordinator::getAssertion(const Frame& frame, const SecurityOrigin& origin, const Vector<uint8_t>& hash, const PublicKeyCredentialRequestOptions& options, RequestCompletionHandler&& handler)
{
auto* webFrame = WebFrame::fromCoreFrame(frame);
if (!webFrame)
return;
m_webPage.sendWithAsyncReply(Messages::WebAuthenticatorCoordinatorProxy::GetAssertion(webFrame->frameID(), origin.data(), hash, options), WTFMove(handler));
}
void WebAuthenticatorCoordinator::isUserVerifyingPlatformAuthenticatorAvailable(QueryCompletionHandler&& handler)
{
m_webPage.sendWithAsyncReply(Messages::WebAuthenticatorCoordinatorProxy::IsUserVerifyingPlatformAuthenticatorAvailable(), WTFMove(handler));
}
}
#endif // ENABLE(WEB_AUTHN)