Skip to content

Commit 136bdb6

Browse files
authored
[dua] remove OPENTHREAD_CONFIG_DUA_ENABLE build feature (openthread#13165)
This commit completely removes the local Domain Unicast Address (DUA) registration feature flag (OPENTHREAD_CONFIG_DUA_ENABLE) and all of its associated implementation, public APIs, CLI commands, Spinel property handlers, and certification tests. Thread 1.2 FTD Border Router/Router DUA proxying features for MTD children (OPENTHREAD_CONFIG_TMF_PROXY_DUA_ENABLE) are preserved and updated to only compile/instantiate components when proxy DUA features are active. Detailed Changes: - Remove default definition of OPENTHREAD_CONFIG_DUA_ENABLE from misc.h. - Remove OT_DUA and openthread_config_dua_enable from CMake/GN configs. - Remove otThreadSetFixedDuaInterfaceIdentifier and otThreadGetFixedDuaInterfaceIdentifier from include/openthread/thread.h and implementation src/core/api/thread_api.cpp. - Remove CLI DUA interpreter from src/cli/cli.cpp. - Remove SPINEL_CAP_DUA capability and SPINEL_PROP_THREAD_DUA_ID Spinel property handlers and dispatchers from NCP. - Strip local DUA management features (conflict checking, SLAAC DUA interface identifiers, and dad info settings) from DuaManager, MLE, Address Resolver, and settings. - Clean up Notifier, TimeTicker, and TMF dispatcher guards. - Clean up -DOT_DUA=ON compilation flags across build/test scripts. - Delete obsolete DUA certification tests: - v1_2_test_domain_unicast_address - v1_2_test_domain_unicast_address_registration - v1_2_test_dua_handle_address_error
1 parent 6751625 commit 136bdb6

36 files changed

Lines changed: 25 additions & 1601 deletions

etc/cmake/options.cmake

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,6 @@ ot_option(OT_DNS_DSO OPENTHREAD_CONFIG_DNS_DSO_ENABLE "DNS Stateful Operations (
210210
ot_option(OT_DNS_UPSTREAM_QUERY OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE "Allow sending DNS queries to upstream")
211211
ot_option(OT_DNSSD_DISCOVERY_PROXY OPENTHREAD_CONFIG_DNSSD_DISCOVERY_PROXY_ENABLE "DNS-SD discovery proxy")
212212
ot_option(OT_DNSSD_SERVER OPENTHREAD_CONFIG_DNSSD_SERVER_ENABLE "DNS-SD server")
213-
ot_option(OT_DUA OPENTHREAD_CONFIG_DUA_ENABLE "Domain Unicast Address (DUA)")
214213
ot_option(OT_DYNAMIC_STORE_FRAME_AHEAD_COUNTER OPENTHREAD_CONFIG_DYNAMIC_STORE_FRAME_AHEAD_COUNTER_ENABLE "dynamic store frame ahead counter")
215214
ot_option(OT_ECDSA OPENTHREAD_CONFIG_ECDSA_ENABLE "ECDSA")
216215
ot_option(OT_EXTERNAL_HEAP OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE "external heap")

etc/gn/openthread.gni

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,6 @@ if (openthread_enable_core_config_args) {
138138
# Enable ECDSA support
139139
openthread_config_ecdsa_enable = false
140140

141-
# Enable Domain Unicast Address feature for Thread 1.2
142-
openthread_config_dua_enable = false
143-
144141
# Enable Multicast Listener Registration feature for Thread 1.2
145142
openthread_config_mlr_enable = false
146143

examples/config/ot-core-config-check-size-br.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@
6060
#define OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE 1
6161
#define OPENTHREAD_CONFIG_DNS_DSO_ENABLE 1
6262
#define OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE 1
63-
#define OPENTHREAD_CONFIG_DUA_ENABLE 1
6463
#define OPENTHREAD_CONFIG_ECDSA_ENABLE 1
6564
#define OPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE 1
6665
#define OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE 1

examples/config/ot-core-config-check-size-ftd.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@
5959
#define OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE 1
6060
#define OPENTHREAD_CONFIG_DNS_DSO_ENABLE 0
6161
#define OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE 0
62-
#define OPENTHREAD_CONFIG_DUA_ENABLE 1
6362
#define OPENTHREAD_CONFIG_ECDSA_ENABLE 1
6463
#define OPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE 0
6564
#define OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE 0

examples/config/ot-core-config-check-size-mtd.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@
5959
#define OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE 1
6060
#define OPENTHREAD_CONFIG_DNS_DSO_ENABLE 0
6161
#define OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE 0
62-
#define OPENTHREAD_CONFIG_DUA_ENABLE 1
6362
#define OPENTHREAD_CONFIG_ECDSA_ENABLE 1
6463
#define OPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE 0
6564
#define OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE 0

include/openthread/instance.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ extern "C" {
5252
*
5353
* @note This number versions both OpenThread platform and user APIs.
5454
*/
55-
#define OPENTHREAD_API_VERSION (601)
55+
#define OPENTHREAD_API_VERSION (602)
5656

5757
/**
5858
* @addtogroup api-instance

include/openthread/thread.h

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -628,38 +628,6 @@ const char *otThreadGetDomainName(otInstance *aInstance);
628628
*/
629629
otError otThreadSetDomainName(otInstance *aInstance, const char *aDomainName);
630630

631-
/**
632-
* Sets or clears the Interface Identifier manually specified for the Thread Domain Unicast Address.
633-
*
634-
* Available when `OPENTHREAD_CONFIG_DUA_ENABLE` is enabled.
635-
*
636-
* @note Only available since Thread 1.2.
637-
*
638-
* @param[in] aInstance A pointer to an OpenThread instance.
639-
* @param[in] aIid A pointer to the Interface Identifier to set or NULL to clear.
640-
*
641-
* @retval OT_ERROR_NONE Successfully set/cleared the Interface Identifier.
642-
* @retval OT_ERROR_INVALID_ARGS The specified Interface Identifier is reserved.
643-
*
644-
* @sa otThreadGetFixedDuaInterfaceIdentifier
645-
*/
646-
otError otThreadSetFixedDuaInterfaceIdentifier(otInstance *aInstance, const otIp6InterfaceIdentifier *aIid);
647-
648-
/**
649-
* Gets the Interface Identifier manually specified for the Thread Domain Unicast Address.
650-
*
651-
* Available when `OPENTHREAD_CONFIG_DUA_ENABLE` is enabled.
652-
*
653-
* @note Only available since Thread 1.2.
654-
*
655-
* @param[in] aInstance A pointer to an OpenThread instance.
656-
*
657-
* @returns A pointer to the Interface Identifier which was set manually, or NULL if none was set.
658-
*
659-
* @sa otThreadSetFixedDuaInterfaceIdentifier
660-
*/
661-
const otIp6InterfaceIdentifier *otThreadGetFixedDuaInterfaceIdentifier(otInstance *aInstance);
662-
663631
/**
664632
* Gets the thrKeySequenceCounter.
665633
*

script/check-arm-build

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ build_nrf52840()
5454
"-DOT_DIAGNOSTIC=ON"
5555
"-DOT_DNSSD_SERVER=ON"
5656
"-DOT_DNS_CLIENT=ON"
57-
"-DOT_DUA=ON"
5857
"-DOT_ECDSA=ON"
5958
"-DOT_FULL_LOGS=ON"
6059
"-DOT_JAM_DETECTION=ON"

script/check-simulation-build-cmake

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -158,23 +158,23 @@ build_all_features()
158158
# Build Thread 1.4 with full features
159159
reset_source
160160
CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \
161-
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON
161+
"$(dirname "$0")"/cmake-build simulation "${options[@]}"
162162

163163
# Build Thread 1.4 with external heap and msg pool using heap
164164
reset_source
165165
CFLAGS="${cppflags[*]} ${CFLAGS} -DOPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE=1" \
166166
CXXFLAGS="${cppflags[*]} ${CXXFLAGS} -DOPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE=1" \
167-
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON
167+
"$(dirname "$0")"/cmake-build simulation "${options[@]}"
168168

169169
# Build Thread 1.4 with full features and no log
170170
reset_source
171171
CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \
172-
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON -DOT_LOG_OUTPUT=NONE
172+
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_LOG_OUTPUT=NONE
173173

174174
# Build Thread 1.4 with full features and full logs
175175
reset_source
176176
CFLAGS="${cppflags[*]} ${CFLAGS}" CXXFLAGS="${cppflags[*]} ${CXXFLAGS}" \
177-
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON -DOT_FULL_LOGS=ON
177+
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_FULL_LOGS=ON
178178

179179
# Build with Vendor Extension
180180
reset_source
@@ -188,7 +188,7 @@ build_all_features()
188188

189189
# Build Thread 1.4 with full features and OT_ASSERT=OFF
190190
reset_source
191-
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_DUA=ON -DOT_ASSERT=OFF
191+
"$(dirname "$0")"/cmake-build simulation "${options[@]}" -DOT_ASSERT=OFF
192192

193193
# Build with RAM settings
194194
reset_source

script/make-pretty

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,6 @@ OT_CLANG_TIDY_BUILD_OPTS=(
112112
'-DOT_DNS_UPSTREAM_QUERY=ON'
113113
"-DOT_DNSSD_DISCOVERY_PROXY=ON"
114114
'-DOT_DNSSD_SERVER=ON'
115-
'-DOT_DUA=ON'
116115
'-DOT_MLR=ON'
117116
'-DOT_ECDSA=ON'
118117
'-DOT_HISTORY_TRACKER=ON'

0 commit comments

Comments
 (0)