97 Commits

Author SHA1 Message Date
Ludvig Michaelsson
bd591e0ea6 bio: support non-preview command
If the bioEnroll option ID is present in the authenticatorGetInfo
response, use the aunthenticatorBioEnrollment (0x09) command instead of
the preview command (0x40).
2023-11-27 16:30:40 +01:00
Ludvig Michaelsson
1b5572678c credman: support non-preview command
If credMgmt option ID is present in the authenticatorGetInfo response,
use the authenticatorCredentialManagement (0x0A) command instead of the
preview command (0x41).
2023-11-27 16:30:40 +01:00
pedro martelletto
f1a74c8f27 src: specify SPDX-License-Identifier; #623 2022-08-02 10:59:49 +02:00
pedro martelletto
e2915a69dc dev: remove fido_dev_register_manifest_func as it is no longer used 2022-03-29 15:36:11 +02:00
pedro martelletto
703bb93b01 dev: rework invocation of hid/nfc/pcsc/winhello manifests
- avoid using fido_dev_register_manifest_func;
- don't stop if a given manifest fails;
- log the number of devices found by each manifest;
- run fido_winhello_manifest last (it should always be the last).
2022-03-29 15:36:11 +02:00
pedro martelletto
5bcc59e54f dev: move touch-related functions to touch.c 2022-03-29 13:13:53 +02:00
pedro martelletto
152ccf832a dev: wrap lines at 80 chars 2022-03-29 12:39:55 +02:00
pedro martelletto
22f0591cfa experimental support for PC/SC NFC readers
allows communication with PC/SC NFC readers on Windows, macOS, and
Linux. disabled by default; enable with cmake -DUSE_PCSC=ON. based
on code contribution from Micro Focus in issue #481; thanks!
fixes #481 and #249.
2022-02-25 10:33:53 +01:00
pedro martelletto
9284588b77 dev: abstract check for nfc paths
while here, move the code from dev.c to nfc.c
2022-02-23 16:55:39 +01:00
pedro martelletto
7608caf6c9 NFC_LINUX -> USE_NFC; no functional change 2022-02-23 14:59:45 +01:00
Taylor R Campbell
992c4ae456 New function fido_dev_io_handle.
Needed for composable use of custom transport functions, as discussed
in <https://github.com/Yubico/libfido2/issues/465>.

Documented in fido_dev_set_io_functions(3).  While here, document
fido_dev_set_transport_functions in the same man page, since that's
what motivates this function.
2021-12-09 09:57:23 +01:00
pedro martelletto
1d21193872 u2f_get_touch_begin: take a timeout parameter
take a timeout parameter instead of using a hardcoded magic
constant (which appears to have been unnecessary in the first
place).
2021-10-12 09:37:58 +02:00
Ludvig Michaelsson
672b72abc9 dev: add fido_dev_set_timeout
Sets an upper limit for how long libfido2 may block while communicating
with a device.
2021-09-28 16:02:48 +02:00
Ludvig Michaelsson
bf9b59b03b io: measure tx duration 2021-09-27 15:32:03 +02:00
Ludvig Michaelsson
b44d9168fe dev,info: prepare to measure tx duration 2021-09-27 13:36:46 +02:00
Ludvig Michaelsson
e563be6647 io: accept timeout as a reference 2021-09-23 17:31:37 +02:00
Ludvig Michaelsson
8ab64a3e1e u2f: pass timeout by reference 2021-09-23 10:05:02 +02:00
Ludvig Michaelsson
1519623ba1 dev,info: pass timeout by reference 2021-09-22 16:30:07 +02:00
Ludvig Michaelsson
336b1f2d34 dev: add timeout attribute to fido_dev_t 2021-09-22 16:22:57 +02:00
Ludvig Michaelsson
dfab0bb3e3 dev: allow use of fido_dev_set_sigmask() with nfc
libfido2 may internally override the transport function (i.e. set
`io_own`) for some of its backends. As such, we must determine the
correct sigmask function by introspecting the transport and io
functions rather than erroring out if `io_own` is set.
2021-09-13 10:41:21 +02:00
pedro martelletto
a1fd991e3c nfc: work with nfc:// paths 2021-08-20 12:53:19 +02:00
pedro martelletto
fdaf5f3dd3 introduce fido_dev_is_winhello() 2021-06-16 09:21:29 +02:00
pedro martelletto
72bd8df95d initial support for windows hello
make the incision in fido_dev_info_manifest(), like we did with nfc
on linux, treating microsoft's api as a device as far as libfido2 is
concerned. fixes gh#34.
2021-06-16 09:21:29 +02:00
pedro martelletto
6aa413b6e7 dev: drop unnecessary variable; no functional change 2021-06-08 17:16:20 +02:00
pedro martelletto
b585ba7903 disable nfc support in preparation for release 2021-03-09 17:45:41 +01:00