AuthenticatorAssertionResponse.h [plain text]
#pragma once
#if ENABLE(WEB_AUTHN)
#include "AuthenticatorResponse.h"
namespace WebCore {
class AuthenticatorAssertionResponse : public AuthenticatorResponse {
public:
static Ref<AuthenticatorAssertionResponse> create(Ref<ArrayBuffer>&& clientDataJSON, Ref<ArrayBuffer>&& authenticatorData, Ref<ArrayBuffer>&& signature, RefPtr<ArrayBuffer>&& userHandle)
{
return adoptRef(*new AuthenticatorAssertionResponse(WTFMove(clientDataJSON), WTFMove(authenticatorData), WTFMove(signature), WTFMove(userHandle)));
}
virtual ~AuthenticatorAssertionResponse() = default;
ArrayBuffer* authenticatorData() const { return m_authenticatorData.ptr(); }
ArrayBuffer* signature() const { return m_signature.ptr(); }
ArrayBuffer* userHandle() const { return m_userHandle.get(); }
private:
AuthenticatorAssertionResponse(Ref<ArrayBuffer>&& clientDataJSON, Ref<ArrayBuffer>&& authenticatorData, Ref<ArrayBuffer>&& signature, RefPtr<ArrayBuffer>&& userHandle)
: AuthenticatorResponse(WTFMove(clientDataJSON))
, m_authenticatorData(WTFMove(authenticatorData))
, m_signature(WTFMove(signature))
, m_userHandle(WTFMove(userHandle))
{
}
Type type() const final { return Type::Assertion; }
Ref<ArrayBuffer> m_authenticatorData;
Ref<ArrayBuffer> m_signature;
RefPtr<ArrayBuffer> m_userHandle;
};
}
SPECIALIZE_TYPE_TRAITS_AUTHENTICATOR_RESPONSE(AuthenticatorAssertionResponse, AuthenticatorResponse::Type::Assertion)
#endif // ENABLE(WEB_AUTHN)