13#ifndef ZEPHYR_INCLUDE_AUTHENTICATION_FIDO2_FIDO2_TRANSPORT_H_
14#define ZEPHYR_INCLUDE_AUTHENTICATION_FIDO2_FIDO2_TRANSPORT_H_
57 const uint8_t *buf,
size_t len);
126#define FIDO2_TRANSPORT_DEFINE(_name, _label, _api) \
127 STRUCT_SECTION_ITERABLE(fido2_transport, _name) = { \
150void fido2_transport_shutdown_all(
void);
fido2_wire_status
Transport progress status codes.
Definition fido2_transport.h:35
@ FIDO2_WIRE_STATUS_PROCESSING
A long-running operation has started (e.g.
Definition fido2_transport.h:39
@ FIDO2_WIRE_STATUS_UP_NEEDED
The authenticator is waiting for a user presence gesture.
Definition fido2_transport.h:37
@ FIDO2_WIRE_STATUS_DONE
The operation is complete.
Definition fido2_transport.h:41
void(* fido2_transport_cancel_cb_t)(void)
Callback invoked when a transport receives a cancel command.
Definition fido2_transport.h:62
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:56
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:65
int(* send)(uint32_t cid, const uint8_t *data, size_t len)
Send response data to the host.
Definition fido2_transport.h:91
void(* shutdown)(void)
Shut down the transport.
Definition fido2_transport.h:108
int(* init)(fido2_transport_recv_cb_t cb, fido2_transport_cancel_cb_t cancel_cb)
Initialize the transport.
Definition fido2_transport.h:79
void(* notify)(uint32_t cid, enum fido2_wire_status status)
Notify the transport of an operation progress change.
Definition fido2_transport.h:103
A registered FIDO2 transport.
Definition fido2_transport.h:112
const char * name
Transport name.
Definition fido2_transport.h:114
const struct fido2_transport_api * api
Transport driver API callbacks.
Definition fido2_transport.h:116
Iterable sections helpers.