ot::Mle::DiscoverScanner::Discover() method
Starts a Thread Discovery Scan.
Arguments
aScanChannels
Channel mask listing channels to scan (if empty, use all supported channels).
aPanId
The PAN ID filter (set to Broadcast PAN to disable filter).
aJoiner
Value of the Joiner Flag in the Discovery Request TLV.
aEnableFiltering
Enable filtering MLE Discovery Responses with steering data not containing a given filter indexes.
aFilterIndexes
A pointer to `FilterIndexes` to use for filtering (when enabled). If set to `nullptr`, filter indexes are derived from hash of factory-assigned EUI64.
aCallback
A pointer to a function that is called on receiving an MLE Discovery Response.
aContext
A pointer to arbitrary context information.
Return value
kErrorNone Successfully started a Thread Discovery Scan. kErrorInvalidState The IPv6 interface is not enabled (netif is not up). kErrorNoBufs Could not allocate message for Discovery Request. kErrorBusy Thread Discovery Scan is already in progress.
ot::Mle::DiscoverScanner::Discover() calls 15 functions:
![]()
ot::Mle::DiscoverScanner::Discover()
ot::Mle::DiscoverScanner::Discover() reads 22 variables and writes 3 variables:
![]()
ot::Mle::DiscoverScanner::Discover()