TREL - Thread Stack

This module defines Thread Radio Encapsulation Link (TREL) APIs for Thread Over Infrastructure.

Classes

struct  otTrelPeer
 This struct represents a TREL peer.

Typedefs

typedef struct otTrelPeer otTrelPeer
 This struct represents a TREL peer.
 
typedef uint16_t otTrelPeerIterator
 This type represents an iterator for iterating over TREL peer table entries.

Functions

void otTrelEnable (otInstance *aInstance)
 This function enables TREL operation.
 
void otTrelDisable (otInstance *aInstance)
 This function disables TREL operation.
 
bool otTrelIsEnabled (otInstance *aInstance)
 This function indicates whether the TREL operation is enabled.
 
void otTrelInitPeerIterator (otInstance *aInstance, otTrelPeerIterator *aIterator)
 This function initializes a peer table iterator.
 
const otTrelPeerotTrelGetNextPeer (otInstance *aInstance, otTrelPeerIterator *aIterator)
 This function iterates over the peer table entries and get the next entry from the table.
 
void otTrelSetFilterEnabled (otInstance *aInstance, bool aEnable)
 This function sets the filter mode (enables/disables filtering).
 
bool otTrelIsFilterEnabled (otInstance *aInstance)
 This function indicates whether or not the filter mode is enabled.

Detailed Description

This module defines Thread Radio Encapsulation Link (TREL) APIs for Thread Over Infrastructure.

The functions in this module require OPENTHREAD_CONFIG_RADIO_LINK_TREL_ENABLE to be enabled.

Function Documentation

◆ otTrelDisable()

void otTrelDisable ( otInstance aInstance)

This function disables TREL operation.

This function stops the DNS-SD browse on the service name "_trel._udp", stops advertising TREL DNS-SD service, and clears the TREL peer table.

Parameters
[in]aInstanceThe OpenThread instance.

◆ otTrelEnable()

void otTrelEnable ( otInstance aInstance)

This function enables TREL operation.

This function initiates an ongoing DNS-SD browse on the service name "_trel._udp" within the local browsing domain to discover other devices supporting TREL. Device also registers a new service to be advertised using DNS-SD, with the service name is "_trel._udp" indicating its support for TREL. Device is then ready to receive TREL messages from peers.

Note
By default the OpenThread stack enables the TREL operation on start.
Parameters
[in]aInstanceThe OpenThread instance.

◆ otTrelGetNextPeer()

const otTrelPeer* otTrelGetNextPeer ( otInstance aInstance,
otTrelPeerIterator aIterator 
)

This function iterates over the peer table entries and get the next entry from the table.

Parameters
[in]aInstanceThe OpenThread instance.
[in]aIteratorThe iterator. MUST be initialized.
Returns
A pointer to the next otTrelPeer entry or NULL if no more entries in the table.

◆ otTrelInitPeerIterator()

void otTrelInitPeerIterator ( otInstance aInstance,
otTrelPeerIterator aIterator 
)

This function initializes a peer table iterator.

Parameters
[in]aInstanceThe OpenThread instance.
[in]aIteratorThe iterator to initialize.

◆ otTrelIsEnabled()

bool otTrelIsEnabled ( otInstance aInstance)

This function indicates whether the TREL operation is enabled.

Parameters
[in]aInstanceThe OpenThread instance.
Return values
TRUEif the TREL operation is enabled.
FALSEif the TREL operation is disabled.

◆ otTrelIsFilterEnabled()

bool otTrelIsFilterEnabled ( otInstance aInstance)

This function indicates whether or not the filter mode is enabled.

Parameters
[in]aInstanceThe OpenThread instance.
Return values
TRUEif the TREL filter mode is enabled.
FALSEif the TREL filter mode is disabled.

◆ otTrelSetFilterEnabled()

void otTrelSetFilterEnabled ( otInstance aInstance,
bool  aEnable 
)

This function sets the filter mode (enables/disables filtering).

When filter mode is enabled, any rx and tx traffic through TREL interface is silently dropped. This is mainly intended for use during testing.

Unlike otTrel{Enable/Disable}() which fully starts/stops the TREL operation, when filter mode is enabled the TREL interface continues to be enabled.

Parameters
[in]aInstanceThe OpenThread instance.
[in]aFilteredTRUE to enable filter mode, FALSE to disable filter mode.