Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
fido2_transport_api Struct Reference

Transport driver API callbacks. More...

#include <zephyr/authentication/fido2/fido2_transport.h>

Data Fields

int(* init )(fido2_transport_recv_cb_t cb, fido2_transport_cancel_cb_t cancel_cb)
 Initialize the transport.
int(* send )(uint32_t cid, const uint8_t *data, size_t len)
 Send response data to the host.
void(* notify )(uint32_t cid, enum fido2_wire_status status)
 Notify the transport of an operation progress change.
void(* shutdown )(void)
 Shut down the transport.

Detailed Description

Transport driver API callbacks.

Field Documentation

◆ init

int(* fido2_transport_api::init) (fido2_transport_recv_cb_t cb, fido2_transport_cancel_cb_t cancel_cb)

Initialize the transport.

Called once during subsystem startup. The transport must store the callbacks and invoke them on every received CBOR message or cancel command.

Parameters
cbCallback to invoke when a CBOR message is received.
cancel_cbCallback to invoke when the cancel command is received
Return values
0If successful.
-ENODEVIf hardware is not available.

◆ notify

void(* fido2_transport_api::notify) (uint32_t cid, enum fido2_wire_status status)

Notify the transport of an operation progress change.

Called by the FIDO2 core to signal state transitions during long-running operations. Each transport translates this into the appropriate wire-protocol signaling.

Parameters
cidChannel/connection identifier.
statusProgress status indicating what the core is doing.

◆ send

int(* fido2_transport_api::send) (uint32_t cid, const uint8_t *data, size_t len)

Send response data to the host.

Parameters
cidTransport channel ID to send the response on.
dataResponse payload bytes.
lenLength of data in bytes.
Return values
0If successful.
-EIOOn transport error.

◆ shutdown

void(* fido2_transport_api::shutdown) (void)

Shut down the transport.


The documentation for this struct was generated from the following file: