From 659cf55a5a2d3517419da1f1b4a2fe15e1625262 Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Wed, 5 Aug 2020 21:06:15 -0700 Subject: [PATCH] [coap] reduce OT_COAP_MAX_RETRANSMIT to 20 (#5338) Also add a note to clarify the set of valid CoAP transmission parameters. --- include/openthread/coap.h | 6 +++++- include/openthread/instance.h | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/include/openthread/coap.h b/include/openthread/coap.h index f7733d946..99facfd64 100644 --- a/include/openthread/coap.h +++ b/include/openthread/coap.h @@ -60,7 +60,7 @@ extern "C" { #define OT_COAP_MAX_TOKEN_LENGTH 8 ///< Max token length as specified (RFC 7252). -#define OT_COAP_MAX_RETRANSMIT 30 ///< Max retransmit supported by OpenThread. +#define OT_COAP_MAX_RETRANSMIT 20 ///< Max retransmit supported by OpenThread. #define OT_COAP_MIN_ACK_TIMEOUT 1000 ///< Minimal ACK timeout in milliseconds supported by OpenThread. @@ -368,6 +368,10 @@ typedef struct otCoapResource /** * This structure represents the CoAP transmission parameters. * + * @note mAckTimeout * ((2 ** (mMaxRetransmit + 1)) - 1) * (mAckRandomFactorNumerator / mAckRandomFactorDenominator) + * must not exceed what can be represented by a uint32_t (0xffffffff). This limitation allows OpenThread to + * avoid 64-bit arithmetic. + * */ typedef struct otCoapTxParameters { diff --git a/include/openthread/instance.h b/include/openthread/instance.h index 9783631b6..f47b5c27e 100644 --- a/include/openthread/instance.h +++ b/include/openthread/instance.h @@ -53,7 +53,7 @@ extern "C" { * @note This number versions both OpenThread platform and user APIs. * */ -#define OPENTHREAD_API_VERSION (21) +#define OPENTHREAD_API_VERSION (22) /** * @addtogroup api-instance