Name Description Size
AndroidWebAuthnTokenManager.cpp static 17594
AndroidWebAuthnTokenManager.h WebAuthnAndroidTokenManager is a token implementation communicating with Android Fido2 APIs. 4858
AuthenticatorAssertionResponse.cpp 3980
AuthenticatorAssertionResponse.h 1972
AuthenticatorAttestationResponse.cpp 2615
AuthenticatorAttestationResponse.h 1588
AuthenticatorResponse.cpp 1678
AuthenticatorResponse.h 1447
authrs_bridge
AuthrsTransport.cpp 772
AuthrsTransport.h 515
cbor-cpp
CtapArgs.cpp 8308
CtapArgs.h 1827
CtapResults.cpp 2066
CtapResults.h 2059
libudev-sys
moz.build 2366
nsIU2FTokenManager.idl TODO(1737205,1819414) Fold this interface into nsIWebAuthnController when we remove the legacy U2F DOM API. nsIU2FTokenManager An interface to the U2FTokenManager singleton. This should be used only by the WebAuthn browser UI prompts. 1414
nsIWebAuthnController.idl 8923
PublicKeyCredential.cpp static 5481
PublicKeyCredential.h 2170
PWebAuthnTransaction.ipdl IPC Transaction protocol for the WebAuthn DOM API. This IPC protocol allows the content process to call to the parent to access hardware for authentication registration and challenges. All transactions start in the child process, and the parent replies with a "Confirm*" message, or a "Cancel" message if there was an error (no hardware available, no registered keys, etc) or interruption (another transaction was started in another content process). Similarly, the content process can also request a cancel, either triggered explicitly by the user/script or due to UI events like selecting a different tab. 4045
tests
U2FSoftTokenTransport.cpp Gets the first key with the given nickname from the given slot. Any other keys found are not returned. PK11_GetNextSymKey() should not be called on the returned key. @param aSlot Slot to search. @param aNickname Nickname the key should have. @return The first key found. nullptr if no key could be found. 35261
U2FSoftTokenTransport.h U2FSoftTokenManager is a software implementation of a secure token manager for the U2F and WebAuthn APIs. 1574
U2FTokenManager.cpp Statics ******************************************************************** 18931
U2FTokenManager.h Parent process manager for U2F and WebAuthn API transactions. Handles process transactions from all content processes, make sure only one transaction is live at any time. Manages access to hardware and software based key systems. U2FTokenManager is created on the first access to functions of either the U2F or WebAuthn APIs that require key registration or signing. It lives until the end of the browser process. 5145
U2FTokenTransport.h Abstract class representing a transport manager for U2F Keys (software, bluetooth, usb, etc.). Hides the implementation details for specific key transport types. 1549
WebAuthnCBORUtil.cpp out 3891
WebAuthnCBORUtil.h Serialize and deserialize CBOR data formats for WebAuthn 1104
WebAuthnController.cpp Statics ******************************************************************** 25879
WebAuthnController.h Parent process manager for WebAuthn API transactions. Handles process transactions from all content processes, make sure only one transaction is live at any time. Manages access to hardware and software based key systems. 4894
WebAuthnCoseIdentifiers.h 716
WebAuthnEnumStrings.h 2481
WebAuthnManager.cpp Statics ******************************************************************** 29532
WebAuthnManager.h Content process manager for the WebAuthn protocol. Created on calls to the WebAuthentication DOM object, this manager handles establishing IPC channels for WebAuthn transactions, as well as keeping track of JS Promise objects representing transactions in flight. The WebAuthn spec (https://www.w3.org/TR/webauthn/) allows for two different types of transactions: registration and signing. When either of these is requested via the DOM API, the following steps are executed in the WebAuthnManager: - Validation of the request. Return a failed promise to js if request does not have correct parameters. - If request is valid, open a new IPC channel for running the transaction. If another transaction is already running in this content process, cancel it. Return a pending promise to js. - Send transaction information to parent process (by running the Start* functions of WebAuthnManager). Assuming another transaction is currently in flight in another content process, parent will handle canceling it. - On return of successful transaction information from parent process, turn information into DOM object format required by spec, and resolve promise (by running the Finish* functions of WebAuthnManager). On cancellation request from parent, reject promise with corresponding error code. Either outcome will also close the IPC channel. 5299
WebAuthnManagerBase.cpp IPC Protocol Implementation ******************************************************************** 4586
WebAuthnManagerBase.h A base class used by WebAuthn and U2F implementations, providing shared functionality and requiring an interface used by the IPC child actors. 2110
WebAuthnTransactionChild.cpp 3265
WebAuthnTransactionChild.h Child process IPC implementation for WebAuthn API. Receives results of WebAuthn transactions from the parent process, and sends them to the WebAuthnManager either cancel the transaction, or be formatted and relayed to content. 2087
WebAuthnTransactionParent.cpp 4359
WebAuthnTransactionParent.h Parent process IPC implementation for WebAuthn and U2F API. Receives authentication data to be either registered or signed by a key, passes information to U2FTokenManager. 1499
WebAuthnTransportIdentifiers.h 706
WebAuthnUtil.cpp in/out 14603
WebAuthnUtil.h Utility functions used by both WebAuthnManager and U2FTokenManager. 2776
winwebauthn
WinWebAuthnManager.cpp WinWebAuthnManager Implementation ******************************************************************** 30944
WinWebAuthnManager.h 2005