13#ifndef ZEPHYR_INCLUDE_AUTHENTICATION_FIDO2_FIDO2_TRANSPORT_H_
14#define ZEPHYR_INCLUDE_AUTHENTICATION_FIDO2_FIDO2_TRANSPORT_H_
35#define FIDO2_BLE_SERVICE_UUID_VAL 0xFFFDU
38#define FIDO2_BLE_SERVICE_DATA_PAIRING_MODE BIT(7)
67 const uint8_t *buf,
size_t len);
138#define FIDO2_TRANSPORT_DEFINE(_name, _label, _api) \
139 STRUCT_SECTION_ITERABLE(fido2_transport, _name) = { \
162void fido2_transport_shutdown_all(
void);
void(* fido2_transport_cancel_cb_t)(const struct fido2_transport *transport)
Callback invoked when a transport receives a cancel command.
Definition fido2_transport.h:74
fido2_wire_status
Transport progress status codes.
Definition fido2_transport.h:41
@ FIDO2_WIRE_STATUS_PROCESSING
A long-running operation has started (e.g.
Definition fido2_transport.h:45
@ FIDO2_WIRE_STATUS_UP_NEEDED
The authenticator is waiting for a user presence gesture.
Definition fido2_transport.h:43
@ FIDO2_WIRE_STATUS_DONE
The operation is complete.
Definition fido2_transport.h:47
int(* 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:66
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:77
int(* send)(uint32_t cid, const uint8_t *data, size_t len)
Send response data to the host.
Definition fido2_transport.h:103
void(* shutdown)(void)
Shut down the transport.
Definition fido2_transport.h:120
int(* init)(fido2_transport_recv_cb_t cb, fido2_transport_cancel_cb_t cancel_cb)
Initialize the transport.
Definition fido2_transport.h:91
void(* notify)(uint32_t cid, enum fido2_wire_status status)
Notify the transport of an operation progress change.
Definition fido2_transport.h:115
A registered FIDO2 transport.
Definition fido2_transport.h:124
const char * name
Transport name.
Definition fido2_transport.h:126
const struct fido2_transport_api * api
Transport driver API callbacks.
Definition fido2_transport.h:128
Iterable sections helpers.