User Credential Unsolicited Transmission Functions. More...
Go to the source code of this file.
Macros | |
#define | CREDENTIAL_USAGE_MAX_ITEMS CREDENTIAL_RULE_TRIPLE |
Maximum number of items in a Credential Usage Data Notification. | |
#define | CREDENTIAL_USAGE_DATA_MAX_SIZE |
Typedefs | |
typedef void(* | u3c_credential_report_tx_callback_t) (const u3c_credential_report_type_t report_type, const u3c_credential_t *const p_credential, const u3c_credential_type next_credential_type, const uint16_t next_credential_slot, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
Functions | |
bool | is_rx_frame_initiated_locally (const RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
void | fill_rx_frame_with_local (RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
void | CC_UserCredential_UserReport_tx (const u3c_user_report_type_t report_type, const u3c_user_t *const p_user, const uint8_t *const p_name, const uint16_t next_uuid, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
void | CC_UserCredential_CredentialReport_tx (const u3c_credential_report_type_t report_type, const u3c_credential_t *p_credential, const u3c_credential_type next_credential_type, const uint16_t next_credential_slot, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
void | CC_UserCredential_AdminCodeReport_tx (const u3c_admin_code_metadata_t *const data, RECEIVE_OPTIONS_TYPE_EX *rx_options) |
Translate admin code data to Report command and send to the original source per the RX options. | |
void | CC_UserCredential_AllUsersChecksumReport_tx (uint16_t checksum, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
Transmit All Users Checksum Report. | |
void | CC_UserCredential_UserChecksumReport_tx (uint16_t uuid, uint16_t checksum, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
Transmit User Checksum Report. | |
void | CC_UserCredential_CredentialChecksumReport_tx (u3c_credential_type type, uint16_t checksum, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
Transmit Credential Checksum Report. | |
void | CC_UserCredential_CredentialLearnStatusReport_tx (const u3c_credential_learn_status_t status, const u3c_credential_identifier_t *const p_target, const uint8_t steps_remaining, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
JOB_STATUS | CC_UserCredential_UsageNotification_tx (const uint8_t notification_event, const uint16_t uuid, const uint8_t credential_count, const u3c_credential_metadata_t *const p_credential_metadata) |
User Credential Unsolicited Transmission Functions.
Functions for transmitting different unsolicited User Credential Command Class reports.
SPDX-License-Identifier: BSD-3-Clause SPDX-FileCopyrightText: 2023 Silicon Laboratories Inc.
#define CREDENTIAL_USAGE_DATA_MAX_SIZE |
Maximum size for Credential Usage Data Notification Event/State parameters
UUID (16 bits) | Credential Count (8 bits) Max items * (Credential Type (8 bits) + Credential Slot (16 bits))
#define CREDENTIAL_USAGE_MAX_ITEMS CREDENTIAL_RULE_TRIPLE |
Maximum number of items in a Credential Usage Data Notification.
typedef void(* u3c_credential_report_tx_callback_t) (const u3c_credential_report_type_t report_type, const u3c_credential_t *const p_credential, const u3c_credential_type next_credential_type, const uint16_t next_credential_slot, RECEIVE_OPTIONS_TYPE_EX *p_rx_options) |
void CC_UserCredential_AdminCodeReport_tx | ( | const u3c_admin_code_metadata_t *const | data, |
RECEIVE_OPTIONS_TYPE_EX * | rx_options ) |
Translate admin code data to Report command and send to the original source per the RX options.
data | pointer to Admin Code metadata retrieved from the database. |
rx_options | Information about the source of the original command. |
void CC_UserCredential_AllUsersChecksumReport_tx | ( | uint16_t | checksum, |
RECEIVE_OPTIONS_TYPE_EX * | p_rx_options ) |
Transmit All Users Checksum Report.
Sends a report containing the checksum of all users and their associated credentials.
[in] | checksum | The calculated checksum for all users. |
[in] | p_rx_options | Pointer to the structure containing the received frame's details. |
void CC_UserCredential_CredentialChecksumReport_tx | ( | u3c_credential_type | type, |
uint16_t | checksum, | ||
RECEIVE_OPTIONS_TYPE_EX * | p_rx_options ) |
Transmit Credential Checksum Report.
Sends a report containing the checksum of all credentials of a specific type.
[in] | type | The type of the credential. |
[in] | checksum | The calculated checksum for the credential. |
[in] | p_rx_options | Pointer to the structure containing the received frame's details. |
void CC_UserCredential_CredentialLearnStatusReport_tx | ( | const u3c_credential_learn_status_t | status, |
const u3c_credential_identifier_t *const | p_target, | ||
const uint8_t | steps_remaining, | ||
RECEIVE_OPTIONS_TYPE_EX * | p_rx_options ) |
Sends a Credential Learn Status Report frame.
[in] | status | Status to report |
[in] | p_target | Pointer to the identifying details of the credential |
[in] | steps_remaining | Number of remaining steps in the current learn process |
[in] | p_rx_options | Pointer to the details of the frame that prompted the process (provide a blank struct if initiated locally) |
void CC_UserCredential_CredentialReport_tx | ( | const u3c_credential_report_type_t | report_type, |
const u3c_credential_t * | p_credential, | ||
const u3c_credential_type | next_credential_type, | ||
const uint16_t | next_credential_slot, | ||
RECEIVE_OPTIONS_TYPE_EX * | p_rx_options ) |
Sends one or more Credential Report frames to the appropriate destinations depending on the type of the report
[in] | report_type | The type of report to send |
[in] | p_credential | Pointer to the metadata and content of the credential |
[in] | next_credential_type | The type of the next credential |
[in] | next_credential_slot | The slot number of the next credential |
[in] | p_rx_options | Pointer to the properties of the incoming frame |
JOB_STATUS CC_UserCredential_UsageNotification_tx | ( | const uint8_t | notification_event, |
const uint16_t | uuid, | ||
const uint8_t | credential_count, | ||
const u3c_credential_metadata_t *const | p_credential_metadata ) |
Sends a Notification Report frame with Event/State parameters containing the Credential Usage Data
[in] | notification_event | The type of notification to send |
[in] | uuid | The unique identifier of the user |
[in] | credential_count | The number of credentials in the notification |
[in] | p_credential_metadata | Pointer to the metadata of the credentials |
void CC_UserCredential_UserChecksumReport_tx | ( | uint16_t | uuid, |
uint16_t | checksum, | ||
RECEIVE_OPTIONS_TYPE_EX * | p_rx_options ) |
Transmit User Checksum Report.
Sends a report containing the checksum of a specific user and their associated credentials.
[in] | uuid | The unique identifier of the user. |
[in] | checksum | The calculated checksum for the user. |
[in] | p_rx_options | Pointer to the structure containing the received frame's details. |
void CC_UserCredential_UserReport_tx | ( | const u3c_user_report_type_t | report_type, |
const u3c_user_t *const | p_user, | ||
const uint8_t *const | p_name, | ||
const uint16_t | next_uuid, | ||
RECEIVE_OPTIONS_TYPE_EX * | p_rx_options ) |
Sends one or more User Report frames to the appropriate destinations depending on the type of the report
[in] | report_type | The type of report to send |
[in] | p_user | Pointer to the User metadata |
[in] | p_name | Pointer to the User Name |
[in] | next_uuid | The UUID of the next User |
[in] | p_rx_options | Pointer to the properties of the incoming frame |
void fill_rx_frame_with_local | ( | RECEIVE_OPTIONS_TYPE_EX * | p_rx_options | ) |
Fills the frame info to properly handle locally initiated operations.
[in] | p_rx_options | Pointer to the properties of the incoming frame |
bool is_rx_frame_initiated_locally | ( | const RECEIVE_OPTIONS_TYPE_EX * | p_rx_options | ) |
Checks whether a frame was initiated locally.
[in] | p_rx_options | Pointer to the properties of the incoming frame |