12#ifndef ZEPHYR_INCLUDE_AUTHENTICATION_FIDO2_FIDO2_TRANSPORT_H_
13#define ZEPHYR_INCLUDE_AUTHENTICATION_FIDO2_FIDO2_TRANSPORT_H_
56 const uint8_t *buf,
size_t len);
125#define FIDO2_TRANSPORT_DEFINE(_name, _label, _api) \
126 STRUCT_SECTION_ITERABLE(fido2_transport, _name) = { \
149void fido2_transport_shutdown_all(
void);
fido2_wire_status
Transport progress status codes.
Definition fido2_transport.h:34
@ FIDO2_WIRE_STATUS_PROCESSING
A long-running operation has started (e.g.
Definition fido2_transport.h:38
@ FIDO2_WIRE_STATUS_UP_NEEDED
The authenticator is waiting for a user presence gesture.
Definition fido2_transport.h:36
@ FIDO2_WIRE_STATUS_DONE
The operation is complete.
Definition fido2_transport.h:40
void(* fido2_transport_cancel_cb_t)(void)
Callback invoked when a transport receives a cancel command.
Definition fido2_transport.h:61
void(* fido2_transport_recv_cb_t)(const struct fido2_transport *transport, uint32_t cid, const uint8_t *buf, size_t len)
Callback invoked when a transport receives data from the host.
Definition fido2_transport.h:55
FIDO2 shared type definitions.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Transport driver API callbacks.
Definition fido2_transport.h:64
int(* send)(uint32_t cid, const uint8_t *data, size_t len)
Send response data to the host.
Definition fido2_transport.h:90
void(* shutdown)(void)
Shut down the transport.
Definition fido2_transport.h:107
int(* init)(fido2_transport_recv_cb_t cb, fido2_transport_cancel_cb_t cancel_cb)
Initialize the transport.
Definition fido2_transport.h:78
void(* notify)(uint32_t cid, enum fido2_wire_status status)
Notify the transport of an operation progress change.
Definition fido2_transport.h:102
A registered FIDO2 transport.
Definition fido2_transport.h:111
const char * name
Transport name.
Definition fido2_transport.h:113
const struct fido2_transport_api * api
Transport driver API callbacks.
Definition fido2_transport.h:115
Iterable sections helpers.