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 otTrelPeer * otTrelGetNextPeer ( 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] aInstance The 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] aInstance The 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] aInstance The OpenThread instance.
[in] aIterator The 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] aInstance The OpenThread instance.
[in] aIterator The iterator to initialize.

otTrelIsEnabled()

bool otTrelIsEnabled ( otInstance * aInstance )

This function indicates whether the TREL operation is enabled.

Parameters
[in] aInstance The OpenThread instance.
Return values
TRUE if the TREL operation is enabled.
FALSE if the TREL operation is disabled.

otTrelIsFilterEnabled()

bool otTrelIsFilterEnabled ( otInstance * aInstance )

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

Parameters
[in] aInstance The OpenThread instance.
Return values
TRUE if the TREL filter mode is enabled.
FALSE if 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] aInstance The OpenThread instance.
[in] aFiltered TRUE to enable filter mode, FALSE to disable filter mode.