Skip to content

Commit

Permalink
Apply Jeff's suggestions from code review
Browse files Browse the repository at this point in the history
Co-authored-by: =JeffH <jdhodges@google.com>
  • Loading branch information
agl and equalsJeffH committed Sep 25, 2020
1 parent ea23052 commit f4e3d07
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions index.bs
Expand Up @@ -5857,9 +5857,10 @@ Note: In order to interoperate, user agents storing large blobs on authenticator
1. Return a {{DOMException}} whose name is “{{NotSupportedError}}”.
1. If {{AuthenticationExtensionsLargeBlobInputs/support}} is present and has the value {{LargeBlobSupport/required}}:
1. Set {{AuthenticationExtensionsLargeBlobOutputs/supported}} to [TRUE].
1. When creating the credential, prior to evaluating the [=authenticator attachment modality=], [=iteration/continue=] (i.e. ignore the authenticator) if the authenticator is not capable of storing large blobs.
Note: This is in anticipation of an authenticator capable of storing large blobs becoming available. It occurs during extension processing in Step 11 of {{PublicKeyCredential/[[Create]]()}}. The {{AuthenticationExtensionsLargeBlobOutputs}} will be abandoned if no satisfactory authenticator becomes available.
1. If a [=create/candidate authenticator=] becomes available (Step 19 of {{PublicKeyCredential/[[Create]]()}}), then before evaluating any <code>|options|</code>, [=iteration/continue=] (i.e. ignore the [=create/candidate authenticator=] ) if the [=create/candidate authenticator=] is not capable of storing large blobs.
1. Otherwise (i.e. {{AuthenticationExtensionsLargeBlobInputs/support}} is absent or has the value {{LargeBlobSupport/preferred}}):
1. Set {{AuthenticationExtensionsLargeBlobOutputs/supported}} to [TRUE] if the [=create/selected authenticator=] supports large blobs and [FALSE] otherwise.
1. If an [=create/selected authenticator|authenticator is selected=], then if the [=create/selected authenticator=] supports large blobs, set {{AuthenticationExtensionsLargeBlobOutputs/supported}} to [TRUE], and [FALSE] otherwise.

: Client extension processing ([=authentication extension|authentication=])
::
Expand All @@ -5869,7 +5870,7 @@ Note: In order to interoperate, user agents storing large blobs on authenticator
1. Return a {{DOMException}} whose name is “{{NotSupportedError}}”.
1. If {{AuthenticationExtensionsLargeBlobInputs/read}} is present and has the value [TRUE]:
1. Initialize the [=client extension output=], {{AuthenticationExtensionsClientOutputs/largeBlob}}.
1. If the [=assertion=] operation is successful, attempt to read any data associated with the asserted credential.
1. If any authenticator indicates success (in {{PublicKeyCredential/[[DiscoverFromExternalSource]]()}}), attempt to read any largeBlob data associated with the asserted credential.
1. If successful, set {{AuthenticationExtensionsLargeBlobOutputs/blob}} to the result.

Note: if the read is not successful, {{AuthenticationExtensionsClientOutputs/largeBlob}} will be present in {{AuthenticationExtensionsClientOutputs}} but the {{AuthenticationExtensionsLargeBlobOutputs/blob}} member will not be present.
Expand Down

0 comments on commit f4e3d07

Please sign in to comment.