Provision Callback

group Provision_Callback

Callback types used for provisioning procedure.

Typedefs

typedef struct _prov_ctx_t *prov_ctx_p

Typedef for provisioning context.

typedef bool (*prov_cb_pf)(prov_cb_type_t cb_type, prov_cb_data_t cb_data)

Typedef for provisioning callback function pointer.

typedef bool (*prov_send_t)(prov_ctx_p pprov_ctx, uint8_t *pdata, uint16_t len)

Typedef for provisioning send function pointer.

typedef struct _prov_ctx_t prov_ctx_t

Struct for provisioning context in stack.

Enums

enum prov_cb_type_t

Enum for types of provisioning callbacks.

Values:

Callback type for pb-adv link state.

enumerator PROV_CB_TYPE_UNPROV

Callback type notified when the stack is ready.

enumerator PROV_CB_TYPE_START

Callback type used by device.

enumerator PROV_CB_TYPE_PATH_CHOOSE

Callback type used by provisioner.

enumerator PROV_CB_TYPE_PUBLIC_KEY

Callback type for public key exchange.

enumerator PROV_CB_TYPE_AUTH_DATA

Callback type for authentication data.

enumerator PROV_CB_TYPE_RANDOM

Callback type notified when receiving remote random value.

enumerator PROV_CB_TYPE_COMPLETE

Callback type notified in the provisioning procedure completion.

enumerator PROV_CB_TYPE_FAIL

Callback type for provisioning failure.

enumerator PROV_CB_TYPE_PROV

Callback type added to notify the stack is ready for provisioning.

enum prov_cb_fail_type_t

Enum for provisioning callback failure types.

Values:

enumerator PROV_CB_FAIL_TYPE_BEARER_LOSS

Callback failure type for pb-adv link close & le link disconnect.

enumerator PROV_CB_FAIL_TYPE_BEARER_TIMEOUT

Callback failure type for pb-adv transaction timeout; see MESH_PB_GENERIC_TIMEOUT_PERIOD.

enumerator PROV_CB_FAIL_TYPE_BEARER_IDLE

Callback failure type for pb-adv link idle timeout; see MESH_PB_ADV_LINK_IDLE_TIMEOUT.

enumerator PROV_CB_FAIL_TYPE_PROCEDURE_TIMEOUT

Callback failure type for provisioning procedure timeout; see MESH_PROV_TIMEOUT_PERIOD.

enumerator PROV_CB_FAIL_TYPE_PROCEDURE_ABNORMAL

Callback failure type for provisioning procedure failure; see prov_result_t.

struct prov_cb_fail_t

Struct for provisioning callback failure information.

Union members

union prov_cb_fail_t

Public Members

prov_cb_fail_type_t fail_type

Type of failure; see prov_cb_fail_type_t.

bearer_type_t bearer_type

Type of bearer used.

prov_result_t prov_result

Result of provisioning; see prov_result_t.

struct prov_cb_data_t

Struct for provisioning callback data, little endian interfaced with app.

Union members

union prov_cb_data_t

Public Members

prov_generic_cb_type_t pb_generic_cb_type

Used in PROV_CB_TYPE_PB_ADV_LINK_STATE.

prov_capabilities_t *pprov_capabilities

Used in PROV_CB_TYPE_PATH_CHOOSE by provisioner.

prov_start_t *pprov_start

Used in PROV_CB_TYPE_AUTH_DATA by device.

prov_data_t *pprov_data

Used in PROV_CB_TYPE_COMPLETE.

prov_random_t *pprov_random

Used in PROV_CB_TYPE_RANDOM by device and provisioner.

prov_cb_fail_t prov_fail

Used in PROV_CB_TYPE_FAIL.

prov_bearer_t bearer

Bearer type used in provisioning.

struct _prov_ctx_t

Struct for provisioning context in stack.

Public Members

prov_pdu_type_t fsm

FSM state; see prov_pdu_type_t.

bool fsm_flag

TRUE: tx, FALSE: rx. Assisting to determine the FSM when there is ambiguity tx/rx the same msgs.

prov_capabilities_t prov_cap

Provisioning capabilities structure.

prov_cb_pf pf_prov_cb

Provisioning callback function pointer.

plt_timer_t timer

Timer used for provisioning.

prov_ctx_tmp_t *pctx_tmp

Pointer to provision context temporary structure.

prov_send_t prov_send

Provision sending function pointer.

prov_bearer_t bearer

Bearer type used in provisioning.

bool random_set

Flag indicating if random is set.