Lines Matching +full:cancel +full:- +full:in +full:- +full:progress
5 * Redistribution and use in source and binary forms, with or without
9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
47 * @addtogroup api-thread-general
50 * The functions in this module require `OPENTHREAD_FTD=1` or `OPENTHREAD_MTD=1`.
75 OT_DEVICE_ROLE_DETACHED = 1, ///< Not currently participating in a Thread network/partition.
102 uint8_t mLinkQualityIn; ///< Link Quality In
106 …uint16_t mFrameErrorRate; ///< Frame error rate (0xffff->100%). Requires error tracking …
107 …uint16_t mMessageErrorRate; ///< (IPv6) msg error rate (0xffff->100%). Requires error trac…
109 bool mRxOnWhenIdle : 1; ///< rx-on-when-idle
141 uint8_t mLinkQualityIn; ///< Link Quality In
151 uint8_t mCslClockAccuracy; ///< CSL clock accuracy, in ± ppm
152 uint8_t mCslUncertainty; ///< CSL uncertainty, in ±10 us
184 …* When uptime feature is enabled (OPENTHREAD_CONFIG_UPTIME_ENABLE = 1) time spent in each MLE role…
186 …uint64_t mDisabledTime; ///< Number of milliseconds device has been in OT_DEVICE_ROLE_DISABLED rol…
187 …uint64_t mDetachedTime; ///< Number of milliseconds device has been in OT_DEVICE_ROLE_DETACHED rol…
188 … uint64_t mChildTime; ///< Number of milliseconds device has been in OT_DEVICE_ROLE_CHILD role.
189 … uint64_t mRouterTime; ///< Number of milliseconds device has been in OT_DEVICE_ROLE_ROUTER role.
190 … uint64_t mLeaderTime; ///< Number of milliseconds device has been in OT_DEVICE_ROLE_LEADER role.
221 * @param[in] aContext A pointer to application-specific context.
226 * Informs the application about the result of waking a Wake-up End Device.
228 …* @param[in] aError OT_ERROR_NONE Indicates that the Wake-up End Device has been added as a n…
229 … OT_ERROR_FAILED Indicates that the Wake-up End Device has not received a wake-up…
231 * @param[in] aContext A pointer to application-specific context.
243 * @param[in] aInstance A pointer to an OpenThread instance.
244 * @param[in] aEnabled TRUE if Thread is enabled, FALSE otherwise.
263 * @param[in] aInstance A pointer to an OpenThread instance.
265 * @retval TRUE It is the only router in the network.
266 * @retval FALSE It is a child or is not a single router in the network.
273 …* @note A successful call to this function enables the rx-on-when-idle mode for the entire scan pr…
275 * @param[in] aInstance A pointer to an OpenThread instance.
276 …* @param[in] aScanChannels A bit vector indicating which channels to scan (e.g. OT_CHANN…
277 * @param[in] aPanId The PAN ID filter (set to Broadcast PAN to disable filter).
278 * @param[in] aJoiner Value of the Joiner Flag in the Discovery Request TLV.
279 * @param[in] aEnableEui64Filtering TRUE to filter responses on EUI-64, FALSE otherwise.
280 …* @param[in] aCallback A pointer to a function called on receiving an MLE Discovery …
282 * @param[in] aCallbackContext A pointer to application-specific context.
287 * @retval OT_ERROR_BUSY Thread Discovery Scan is already in progress.
298 * Determines if an MLE Thread Discovery is currently in progress.
300 * @param[in] aInstance A pointer to an OpenThread instance.
307 …* Thread Joiner Advertisement is used to allow a Joiner to advertise its own application-specific …
308 …* (such as Vendor ID, Product ID, Discriminator, etc.) via a newly-proposed Joiner Advertisement T…
311 * @param[in] aInstance A pointer to an OpenThread instance.
312 …* @param[in] aOui The Vendor IEEE OUI value that will be included in the Joiner Adver…
314 …* @param[in] aAdvData A pointer to the AdvData that will be included in the Joiner Advert…
315 * @param[in] aAdvDataLength The length of AdvData in bytes.
328 * Gets the Thread Child Timeout (in seconds) used when operating in the Child role.
330 * @param[in] aInstance A pointer to an OpenThread instance.
332 * @returns The Thread Child Timeout value in seconds.
339 * Sets the Thread Child Timeout (in seconds) used when operating in the Child role.
341 * @param[in] aInstance A pointer to an OpenThread instance.
342 * @param[in] aTimeout The timeout value in seconds.
351 * @param[in] aInstance A pointer to an OpenThread instance.
363 * call to this function invalidates the Active and Pending Operational Datasets in
364 * non-volatile memory.
366 * @param[in] aInstance A pointer to an OpenThread instance.
367 * @param[in] aExtendedPanId A pointer to the IEEE 802.15.4 Extended PAN ID.
379 * @param[in] aInstance A pointer to an OpenThread instance.
391 * @param[in] aInstance A pointer to an OpenThread instance.
402 * @param[in] aInstance A pointer to an OpenThread instance.
403 * @param[in] aConfig A pointer to the Link Mode configuration.
414 * @param[in] aInstance A pointer to an OpenThread instance.
424 * Requires the build-time feature `OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE` to be enabled.
426 * @param[in] aInstance A pointer to an OpenThread instance.
428 * @returns Reference to the Thread Network Key stored in memory.
438 * call to this function invalidates the Active and Pending Operational Datasets in
439 * non-volatile memory.
441 * @param[in] aInstance A pointer to an OpenThread instance.
442 * @param[in] aKey A pointer to a buffer containing the Thread Network Key.
455 * call to this function invalidates the Active and Pending Operational Datasets in
456 * non-volatile memory.
458 * Requires the build-time feature `OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE` to be enabled.
460 * @param[in] aInstance A pointer to an OpenThread instance.
461 * @param[in] aKeyRef Reference to the Thread Network Key.
473 * @param[in] aInstance A pointer to an OpenThread instance.
482 * @param[in] aInstance A pointer to an OpenThread instance.
491 * @param[in] aInstance A pointer to an OpenThread instance.
501 * call to this function invalidates the Active and Pending Operational Datasets in
502 * non-volatile memory.
504 * @param[in] aInstance A pointer to an OpenThread instance.
505 * @param[in] aMeshLocalPrefix A pointer to the Mesh Local Prefix.
513 * Gets the Thread link-local IPv6 address.
517 * @param[in] aInstance A pointer to an OpenThread instance.
519 * @returns A pointer to Thread link-local IPv6 address.
524 * Gets the Thread Link-Local All Thread Nodes multicast address.
526 * The address is a link-local Unicast Prefix-Based Multicast Address [RFC 3306], with:
527 * - flgs set to 3 (P = 1 and T = 1)
528 * - scop set to 2
529 * - plen set to 64
530 * - network prefix set to the Mesh Local Prefix
531 * - group ID set to 1
533 * @param[in] aInstance A pointer to an OpenThread instance.
535 * @returns A pointer to Thread Link-Local All Thread Nodes multicast address.
540 * Gets the Thread Realm-Local All Thread Nodes multicast address.
542 * The address is a realm-local Unicast Prefix-Based Multicast Address [RFC 3306], with:
543 * - flgs set to 3 (P = 1 and T = 1)
544 * - scop set to 3
545 * - plen set to 64
546 * - network prefix set to the Mesh Local Prefix
547 * - group ID set to 1
549 * @param[in] aInstance A pointer to an OpenThread instance.
551 * @returns A pointer to Thread Realm-Local All Thread Nodes multicast address.
558 * @param[in] aInstance A pointer to an OpenThread instance.
559 * @param[in] aServiceId Service ID to get ALOC for.
570 * @param[in] aInstance A pointer to an OpenThread instance.
582 * call to this function invalidates the Active and Pending Operational Datasets in
583 * non-volatile memory.
585 * @param[in] aInstance A pointer to an OpenThread instance.
586 * @param[in] aNetworkName A pointer to the Thread Network Name.
600 * @param[in] aInstance A pointer to an OpenThread instance.
613 * @param[in] aInstance A pointer to an OpenThread instance.
614 * @param[in] aDomainName A pointer to the Thread Domain Name.
630 * @param[in] aInstance A pointer to an OpenThread instance.
631 * @param[in] aIid A pointer to the Interface Identifier to set or NULL to clear.
647 * @param[in] aInstance A pointer to an OpenThread instance.
658 * @param[in] aInstance A pointer to an OpenThread instance.
670 * this API will render a production application non-compliant with the Thread Specification.
672 * @param[in] aInstance A pointer to an OpenThread instance.
673 * @param[in] aKeySequenceCounter The thrKeySequenceCounter value.
680 * Gets the thrKeySwitchGuardTime (in hours).
682 * @param[in] aInstance A pointer to an OpenThread instance.
684 * @returns The thrKeySwitchGuardTime value (in hours).
691 * Sets the thrKeySwitchGuardTime (in hours).
694 * this API will render a production application non-compliant with the Thread Specification.
696 * @param[in] aInstance A pointer to an OpenThread instance.
697 * @param[in] aKeySwitchGuardTime The thrKeySwitchGuardTime value (in hours).
706 * @param[in] aInstance A pointer to an OpenThread instance.
717 * this API will render a production application non-compliant with the Thread Specification.
719 * @param[in] aInstance A pointer to an OpenThread instance.
730 * @param[in] aInstance A pointer to an OpenThread instance.
731 * @param[in,out] aIterator A pointer to the iterator context. To get the first neighbor entry
735 * @retval OT_ERROR_NONE Successfully found the next neighbor entry in table.
736 * @retval OT_ERROR_NOT_FOUND No subsequent neighbor entry exists in the table.
744 * @param[in] aInstance A pointer to an OpenThread instance.
747 …* @retval OT_DEVICE_ROLE_DETACHED The device is not currently participating in a Thread network/p…
755 * Convert the device role to human-readable string.
757 * @param[in] aRole The device role to convert.
766 * @param[in] aInstance A pointer to an OpenThread instance.
777 * @param[in] aInstance A pointer to an OpenThread instance.
786 * @param[in] aInstance A pointer to an OpenThread instance.
795 * @param[in] aInstance A pointer to an OpenThread instance.
804 * @param[in] aInstance A pointer to an OpenThread instance.
813 * @param[in] aInstance A pointer to an OpenThread instance.
821 * @param[in] aInstance A pointer to an OpenThread instance.
829 * @param[in] aInstance A pointer to an OpenThread instance.
851 * @param[in] aInstance A pointer to an OpenThread instance.
860 * @param[in] aInstance A pointer to an OpenThread instance.
865 * Gets the time-in-queue histogram for messages in the TX queue.
869 …* Histogram of the time-in-queue of messages in the transmit queue is collected. The time-in-queue…
873 … is returned as an array of `uint32_t` values with `aNumBins` entries. The first entry in the array
874 …* (at index 0) represents the number of messages with a time-in-queue less than `aBinInterval`. Th…
875 …* represents the number of messages with a time-in-queue greater than or equal to `aBinInterval`, …
876 …* `2 * aBinInterval`. And so on. The last entry represents the number of messages with time-in-que…
877 * equal to `(aNumBins - 1) * aBinInterval`.
885 * @param[in] aInstance A pointer to an OpenThread instance.
886 * @param[out] aNumBins Pointer to return the number of bins in histogram (array length).
887 * @param[out] aBinInterval Pointer to return the histogram bin interval length in milliseconds.
894 * Gets the maximum time-in-queue for messages in the TX queue.
898 …* The time-in-queue is tracked for direct transmissions only and is measured as the duration from …
903 * @param[in] aInstance A pointer to an OpenThread instance.
905 * @returns The maximum time-in-queue in milliseconds for all messages in the TX queue (so far).
910 * Resets the TX queue time-in-queue statistics.
914 * @param[in] aInstance A pointer to an OpenThread instance.
921 * @param[in] aInstance A pointer to an OpenThread instance.
930 * @param[in] aInstance A pointer to an OpenThread instance.
941 …* Unlike the role-tracking variables in `otMleCounters`, which track the cumulative time the devic…
945 * @param[in] aInstance A pointer to an OpenThread instance.
954 * This is used in `otThreadRegisterParentResponseCallback()`.
956 * @param[in] aInfo A pointer to a location on stack holding the stats data.
957 * @param[in] aContext A pointer to callback client-specific context.
966 * @param[in] aInstance A pointer to an OpenThread instance.
967 …* @param[in] aCallback A pointer to a function that is called upon receiving an MLE Parent Respo…
968 * @param[in] aContext A pointer to callback client-specific context.
987 * @param[in] aInfo A pointer to the Discovery Request info data.
988 * @param[in] aContext A pointer to callback application-specific context.
995 * @param[in] aInstance A pointer to an OpenThread instance.
996 …* @param[in] aCallback A pointer to a function that is called upon receiving an MLE Discovery Re…
997 * @param[in] aContext A pointer to callback application-specific context.
1007 …* @param[in] aContext A pointer to an arbitrary context (provided when callback is regi…
1008 …* @param[in] aError The error when handling the request. OT_ERROR_NONE indicates succ…
1011 …* @param[in] aMeshLocalAddress A pointer to the mesh-local EID of the closest destination of the…
1013 …* @param[in] aRloc16 The RLOC16 of the destination if found, otherwise invalid RLOC16 …
1025 …* If a previous request is ongoing, a subsequent call to this function will cancel and replace the…
1027 * @param[in] aInstance A pointer to an OpenThread instance.
1028 * @param[in] aAnycastAddress The anycast address to locate. MUST NOT be NULL.
1029 * @param[in] aCallback The callback function to report the result.
1030 * @param[in] aContext An arbitrary context used with @p aCallback.
1042 * Indicates whether an anycast locate request is currently in progress.
1046 * @param[in] aInstance A pointer to an OpenThread instance.
1048 * @returns TRUE if an anycast locate request is currently in progress, FALSE otherwise.
1057 * @param[in] aInstance A pointer to an OpenThread instance.
1058 * @param[in] aDestination The destination to send the ADDR_NTF.ntf message.
1059 * @param[in] aTarget The target address of the ADDR_NTF.ntf message.
1060 * @param[in] aMlIid The ML-IID of the ADDR_NTF.ntf message.
1072 * @param[in] aInstance A pointer to an OpenThread instance.
1073 * @param[in] aTarget The target address of the PRO_BB.ntf message.
1074 * @param[in] aMlIid The ML-IID of the PRO_BB.ntf message.
1075 * @param[in] aTimeSinceLastTransaction Time since last transaction (in seconds).
1086 * Notifies other nodes in the network (if any) and then stops Thread protocol operation.
1090 * @param[in] aInstance A pointer to an OpenThread instance.
1091 * @param[in] aCallback A pointer to a function that is called upon finishing detaching.
1092 * @param[in] aContext A pointer to callback application-specific context.
1095 * @retval OT_ERROR_BUSY Detaching is already in progress.
1099 …N_STRING_SIZE 21 ///< Recommended size for string representation of `uint32_t` duration in seconds.
1102 * Converts an `uint32_t` duration (in seconds) to a human-readable string.
1109 …* If the resulting string does not fit in @p aBuffer (within its @p aSize characters), the string …
1110 * but the outputted string is always null-terminated.
1112 …* Is intended for use with `mAge` or `mConnectionTime` in `otNeighborInfo` or `otChildInfo` struct…
1114 * @param[in] aDuration A duration interval in seconds.
1116 …* @param[in] aSize The size of @p aBuffer (in bytes). Recommended to use `OT_DURATION_STRING_…
1125 …* The OpenThread stack stores the MLE and MAC security frame counter values in non-volatile storag…
1129 * @param[in] aInstance A pointer to an OpenThread instance.
1130 * @param[in] aStoreFrameCounterAhead The store frame counter ahead to set.
1139 * @param[in] aInstance A pointer to an OpenThread instance.
1146 * Attempts to wake a Wake-up End Device.
1150 * The wake-up starts with transmitting a wake-up frame sequence to the Wake-up End Device.
1151 …* During the wake-up sequence, and for a short time after the last wake-up frame is sent, the Wake…
1154 * @warning The functionality implemented by this function is still in the design phase.
1157 * @param[in] aInstance A pointer to an OpenThread instance.
1158 * @param[in] aWedAddress The extended address of the Wake-up End Device.
1159 * @param[in] aWakeupIntervalUs An interval between consecutive wake-up frames (in microseconds).
1160 * @param[in] aWakeupDurationMs Duration of the wake-up sequence (in milliseconds).
1161 …* @param[in] aCallback A pointer to function that is called when the wake-up succeeds or f…
1162 * @param[in] aCallbackContext A pointer to callback application-specific context.
1164 * @retval OT_ERROR_NONE Successfully started the wake-up.
1165 * @retval OT_ERROR_INVALID_STATE Another attachment request is still in progress.
1166 * @retval OT_ERROR_INVALID_ARGS The wake-up interval or duration are invalid.