Skip to content

Commit a48d2a4

Browse files
ypoulabergs
authored andcommitted
Fixes Fido2Configuration.FullyQualifiedOrigins contains a null entry when configured from a configuration section on .NET 7
1 parent e3851a7 commit a48d2a4

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

Src/Fido2.Models/Fido2Configuration.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ namespace Fido2NetLib;
66

77
public class Fido2Configuration
88
{
9-
private HashSet<string> _origins;
10-
private HashSet<string> _fullyQualifiedOrigins;
9+
private ISet<string> _origins;
10+
private ISet<string> _fullyQualifiedOrigins;
1111

1212
/// <summary>
1313
/// Create the configuration for Fido2.
@@ -56,7 +56,7 @@ public Fido2Configuration()
5656
/// <summary>
5757
/// Server origins, including protocol host and port.
5858
/// </summary>
59-
public HashSet<string> Origins
59+
public ISet<string> Origins
6060
{
6161
get
6262
{
@@ -86,7 +86,7 @@ public HashSet<string> Origins
8686
/// <summary>
8787
/// Fully Qualified Server origins, generated automatically from Origins.
8888
/// </summary>
89-
public HashSet<string> FullyQualifiedOrigins
89+
public ISet<string> FullyQualifiedOrigins
9090
{
9191
get => _fullyQualifiedOrigins ?? new HashSet<string>
9292
{

Src/Fido2/AuthenticatorAssertionResponse.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public static AuthenticatorAssertionResponse Parse(AuthenticatorAssertionRawResp
5858
/// <param name="cancellationToken"></param>
5959
public async Task<AssertionVerificationResult> VerifyAsync(
6060
AssertionOptions options,
61-
HashSet<string> fullyQualifiedExpectedOrigins,
61+
ISet<string> fullyQualifiedExpectedOrigins,
6262
byte[] storedPublicKey,
6363
uint storedSignatureCounter,
6464
IsUserHandleOwnerOfCredentialIdAsync isUserHandleOwnerOfCredId,

Src/Fido2/AuthenticatorResponse.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ protected AuthenticatorResponse(ReadOnlySpan<byte> utf8EncodedJson)
6565

6666
// todo: add TokenBinding https://www.w3.org/TR/webauthn/#dictdef-tokenbinding
6767

68-
protected void BaseVerify(HashSet<string> fullyQualifiedExpectedOrigins, ReadOnlySpan<byte> originalChallenge, ReadOnlySpan<byte> requestTokenBindingId)
68+
protected void BaseVerify(ISet<string> fullyQualifiedExpectedOrigins, ReadOnlySpan<byte> originalChallenge, ReadOnlySpan<byte> requestTokenBindingId)
6969
{
7070
if (Type is not "webauthn.create" && Type is not "webauthn.get")
7171
throw new Fido2VerificationException(Fido2ErrorCode.InvalidAuthenticatorResponse, $"Type must be 'webauthn.create' or 'webauthn.get'. Was '{Type}'");

0 commit comments

Comments
 (0)