[config] tmf (#4020)

This commit is contained in:
Jonathan Hui
2019-07-31 14:16:30 -07:00
parent 926b9e8661
commit 149640da49
41 changed files with 293 additions and 281 deletions
+5 -8
View File
@@ -72,7 +72,9 @@ python --version || die
-DOPENTHREAD_CONFIG_LINK_RAW_ENABLE=1 \
-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1 \
-DOPENTHREAD_CONFIG_NCP_UART_ENABLE=1 \
-DOPENTHREAD_CONFIG_SNTP_CLIENT_ENABLE=1"
-DOPENTHREAD_CONFIG_SNTP_CLIENT_ENABLE=1 \
-DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1 \
-DOPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1"
scan-build ./configure \
--enable-builtin-mbedtls=no \
@@ -84,10 +86,8 @@ python --version || die
--enable-jam-detection \
--enable-legacy \
--enable-mtd \
--enable-mtd-network-diagnostic \
--enable-ncp \
--enable-radio-only \
--enable-service \
--enable-udp-forward \
--with-examples=posix || die
@@ -104,10 +104,8 @@ python --version || die
--enable-jam-detection \
--enable-legacy \
--enable-mtd \
--enable-mtd-network-diagnostic \
--enable-ncp \
--enable-radio-only \
--enable-service \
--enable-udp-forward \
--with-examples=posix || die
@@ -354,7 +352,8 @@ build_samr21() {
-DOPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE=1 \
-DOPENTHREAD_CONFIG_DIAG_ENABLE=1 \
-DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1 \
-DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1"
-DOPENTHREAD_CONFIG_NCP_SPI_ENABLE=1 \
-DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1"
git checkout -- . || die
git clean -xfd || die
@@ -366,7 +365,6 @@ build_samr21() {
--with-examples=posix \
--enable-jam-detection \
--enable-legacy \
--enable-service \
--disable-docs \
--disable-tests \
--with-vendor-extension=./src/core/common/extension_example.cpp || die
@@ -380,7 +378,6 @@ build_samr21() {
--enable-mtd \
--with-examples=posix \
--enable-legacy \
--enable-service \
--disable-docs \
--disable-tests || die
make -j 8 || die
+1 -1
View File
@@ -58,7 +58,7 @@ OPENTHREAD_COMMON_FLAGS += \
-DOPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE=1 \
-DOPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE=1 \
-DOPENTHREAD_CONFIG_DNS_CLIENT_ENABLE=1 \
-DOPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC=1 \
-DOPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1 \
-DOPENTHREAD_ENABLE_REFERENCE_DEVICE=0 \
$(NULL)
endif
-1
View File
@@ -38,7 +38,6 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \
--enable-mtd \
--enable-ncp \
--enable-radio-only \
--enable-service \
--with-examples=posix \
$(NULL)
-64
View File
@@ -764,38 +764,6 @@ AC_SUBST(OPENTHREAD_ENABLE_UDP_FORWARD)
AM_CONDITIONAL([OPENTHREAD_ENABLE_UDP_FORWARD], [test "${enable_udp_forward}" = "yes"])
AC_DEFINE_UNQUOTED([OPENTHREAD_ENABLE_UDP_FORWARD], [${OPENTHREAD_ENABLE_UDP_FORWARD}], [Define to 1 to enable the UDP forward feature.])
#
# Thread Network Diagnostic for MTD
#
AC_ARG_ENABLE(mtd_network_diagnostic,
[AS_HELP_STRING([--enable-mtd-network-diagnostic],[Enable network diagnostic support for MTD @<:@default=no@:>@.])],
[
case "${enableval}" in
no|yes)
enable_mtd_network_diagnostic=${enableval}
;;
*)
AC_MSG_ERROR([Invalid value ${enable_mtd_network_diagnostic} for --enable-mtd-network-diagnostic])
;;
esac
],
[enable_mtd_network_diagnostic=no])
if test "$enable_mtd_network_diagnostic" = "yes"; then
OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC=1
else
OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC=0
fi
AC_MSG_CHECKING([whether to enable the network diagnostic for MTD])
AC_MSG_RESULT(${enable_mtd_network_diagnostic})
AC_SUBST(OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC)
AM_CONDITIONAL([OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC], [test "${enable_mtd_network_diagnostic}" = "yes"])
AC_DEFINE_UNQUOTED([OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC],[${OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC}],[Define to 1 to enable network diagnostic for MTD.])
#
# Jam Detection
#
@@ -946,36 +914,6 @@ AC_SUBST(OPENTHREAD_NCP_SPINEL_ENCRYPTER_LIBS)
AC_DEFINE_UNQUOTED([OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER],[${OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER}],[Define to 1 if using NCP Spinel Encrypter])
AM_CONDITIONAL([OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER], [test "${OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER}" = "1"])
#
# Service
#
AC_ARG_ENABLE(service,
[AS_HELP_STRING([--enable-service],[Enable Service @<:@default=no@:>@.])],
[
case "${enableval}" in
no|yes)
enable_service=${enableval}
;;
*)
AC_MSG_ERROR([Invalid value ${enable_service} for --enable-service])
;;
esac
],
[enable_service=no])
if test "$enable_service" = "yes"; then
OPENTHREAD_ENABLE_SERVICE=1
else
OPENTHREAD_ENABLE_SERVICE=0
fi
AC_SUBST(OPENTHREAD_ENABLE_SERVICE)
AM_CONDITIONAL([OPENTHREAD_ENABLE_SERVICE], [test "${enable_service}" = "yes"])
AC_DEFINE_UNQUOTED([OPENTHREAD_ENABLE_SERVICE],[${OPENTHREAD_ENABLE_SERVICE}],[Define to 1 if you want to enable Service])
#
# Linker Map Output
#
@@ -1431,12 +1369,10 @@ AC_MSG_NOTICE([
OpenThread NCP Spinel Encrypter : ${with_ncp_spinel_encrypter_libs}
OpenThread Vendor Extension Source : ${with_vendor_extension}
OpenThread Multiple Instances support : ${enable_multiple_instances}
OpenThread MTD Network Diagnostic support : ${enable_mtd_network_diagnostic}
OpenThread builtin mbedtls support : ${enable_builtin_mbedtls}
OpenThread UDP forward support : ${enable_udp_forward}
OpenThread Jam Detection support : ${enable_jam_detection}
OpenThread Legacy network support : ${enable_legacy}
OpenThread Service support : ${enable_service}
OpenThread ECDSA support : ${enable_ecdsa}
OpenThread Examples : ${with_examples}
OpenThread POSIX Application : ${enable_posix_app}
+2 -2
View File
@@ -151,7 +151,7 @@ COMMONCFLAGS += -DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1
endif
ifeq ($(MTD_NETDIAG),1)
configure_OPTIONS += --enable-mtd-network-diagnostic
COMMONCFLAGS += -DOPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1
endif
ifeq ($(PLATFORM_UDP),1)
@@ -165,7 +165,7 @@ COMMONCFLAGS += -DOPENTHREAD_ENABLE_REFERENCE_DEVICE=1
endif
ifeq ($(SERVICE),1)
configure_OPTIONS += --enable-service
COMMONCFLAGS += -DOPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE=1
endif
ifeq ($(SLAAC),1)
@@ -91,13 +91,13 @@
#endif
/**
* @def OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
*
* The number of EID-to-RLOC cache entries.
*
*/
#ifndef OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
#define OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES 20
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
#define OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES 20
#endif
/**
@@ -113,13 +113,13 @@
#endif
/**
* @def OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
*
* The number of EID-to-RLOC cache entries.
*
*/
#ifndef OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
#define OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES 32
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
#define OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES 32
#endif
/**
+1 -1
View File
@@ -60,7 +60,7 @@
#define OPENTHREAD_PLATFORM_POSIX_APP 1
/* Define to 1 if you want to enable Service */
#define OPENTHREAD_ENABLE_SERVICE 1
#define OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE 1
/* Define to 1 to enable the UDP forward feature. */
#define OPENTHREAD_ENABLE_UDP_FORWARD 1
+12 -12
View File
@@ -55,7 +55,7 @@
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE
#include <openthread/border_router.h>
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
#include <openthread/server.h>
#endif
@@ -160,15 +160,15 @@ const struct Command Interpreter::sCommands[] = {
#if OPENTHREAD_FTD
{"neighbor", &Interpreter::ProcessNeighbor},
#endif
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
{"netdataregister", &Interpreter::ProcessNetworkDataRegister},
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
{"netdatashow", &Interpreter::ProcessNetworkDataShow},
#endif
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
{"networkdiagnostic", &Interpreter::ProcessNetworkDiagnostic},
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#endif // OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
#if OPENTHREAD_FTD
{"networkidtimeout", &Interpreter::ProcessNetworkIdTimeout},
#endif
@@ -204,7 +204,7 @@ const struct Command Interpreter::sCommands[] = {
{"routerupgradethreshold", &Interpreter::ProcessRouterUpgradeThreshold},
#endif
{"scan", &Interpreter::ProcessScan},
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
{"service", &Interpreter::ProcessService},
#endif
{"singleton", &Interpreter::ProcessSingleton},
@@ -245,7 +245,7 @@ Interpreter::Interpreter(Instance *aInstance)
#endif
, mInstance(aInstance)
{
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
otThreadSetReceiveDiagnosticGetCallback(mInstance, &Interpreter::HandleDiagnosticGetResponse, this);
#endif
@@ -1627,7 +1627,7 @@ exit:
}
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void Interpreter::ProcessNetworkDataShow(int argc, char *argv[])
{
OT_UNUSED_VARIABLE(argc);
@@ -1699,7 +1699,7 @@ exit:
}
#endif
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void Interpreter::ProcessNetworkDataRegister(int argc, char *argv[])
{
OT_UNUSED_VARIABLE(argc);
@@ -1715,7 +1715,7 @@ void Interpreter::ProcessNetworkDataRegister(int argc, char *argv[])
exit:
AppendResult(error);
}
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
#if OPENTHREAD_FTD
void Interpreter::ProcessNetworkIdTimeout(int argc, char *argv[])
@@ -3472,7 +3472,7 @@ exit:
return;
}
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
void Interpreter::ProcessNetworkDiagnostic(int argc, char *argv[])
{
otError error = OT_ERROR_NONE;
@@ -3516,7 +3516,7 @@ exit:
AppendResult(error);
}
}
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#endif // OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
void Interpreter::HandleDiagnosticGetResponse(otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext)
{
+4 -4
View File
@@ -263,16 +263,16 @@ private:
#if OPENTHREAD_FTD
void ProcessNeighbor(int argc, char *argv[]);
#endif
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void ProcessNetworkDataRegister(int argc, char *argv[]);
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void ProcessNetworkDataShow(int argc, char *argv[]);
void ProcessService(int argc, char *argv[]);
#endif
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
void ProcessNetworkDiagnostic(int argc, char *argv[]);
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#endif // OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
#if OPENTHREAD_FTD
void ProcessNetworkIdTimeout(int argc, char *argv[]);
#endif
+1
View File
@@ -342,6 +342,7 @@ HEADERS_COMMON = \
config/platform.h \
config/sntp_client.h \
config/time_sync.h \
config/tmf.h \
crypto/aes_ccm.hpp \
crypto/aes_ecb.hpp \
crypto/ecdsa.hpp \
+3 -3
View File
@@ -31,9 +31,9 @@
* This file implements the OpenThread Server API.
*/
#include <openthread/config.h>
#include "openthread-core-config.h"
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
#include <openthread/server.h>
@@ -108,4 +108,4 @@ otError otServerRegister(otInstance *aInstance)
return instance.Get<NetworkData::Local>().SendServerDataNotification();
}
#endif // OPENTHREAD_ENABLE_SERVICE
#endif // OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
+2 -2
View File
@@ -365,7 +365,7 @@ exit:
return error;
}
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
void otThreadSetReceiveDiagnosticGetCallback(otInstance * aInstance,
otReceiveDiagnosticGetCallback aCallback,
void * aCallbackContext)
@@ -396,7 +396,7 @@ otError otThreadSendDiagnosticReset(otInstance * aInstance,
return instance.Get<NetworkDiagnostic::NetworkDiagnostic>().SendDiagnosticReset(
*static_cast<const Ip6::Address *>(aDestination), aTlvTypes, aCount);
}
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#endif // OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
otError otThreadSetEnabled(otInstance *aInstance, bool aEnabled)
{
+2 -2
View File
@@ -514,7 +514,7 @@ template <> inline PanIdQueryServer &Instance::Get(void)
return mThreadNetif.mPanIdQuery;
}
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
template <> inline NetworkData::Local &Instance::Get(void)
{
return mThreadNetif.mNetworkDataLocal;
@@ -591,7 +591,7 @@ template <> inline Dns::Client &Instance::Get(void)
}
#endif
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
template <> inline NetworkDiagnostic::NetworkDiagnostic &Instance::Get(void)
{
return mThreadNetif.mNetworkDiagnostic;
@@ -58,7 +58,7 @@
#endif
#ifdef OPENTHREAD_CONFIG_MAX_SERVER_ALOCS
#error "OPENTHREAD_CONFIG_MAX_SERVER_ALOCS was replaced by OPENTHREAD_CONFIG_MAX_SERVICE_ALOCS."
#error "OPENTHREAD_CONFIG_MAX_SERVER_ALOCS was replaced by OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_MAX_ALOCS."
#endif
#ifdef OPENTHREAD_CONFIG_ENABLE_AUTO_START_SUPPORT
@@ -121,62 +121,6 @@
#define OPENTHREAD_CONFIG_DROP_MESSAGE_ON_FRAGMENT_TX_FAILURE 1
#endif
/**
* @def OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
*
* The number of EID-to-RLOC cache entries.
*
*/
#ifndef OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
#define OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES 10
#endif
/**
* @def OPENTHREAD_CONFIG_ADDRESS_QUERY_TIMEOUT
*
* The timeout value (in seconds) waiting for a address notification response after sending an address query.
*
* Default: 3 seconds
*
*/
#ifndef OPENTHREAD_CONFIG_ADDRESS_QUERY_TIMEOUT
#define OPENTHREAD_CONFIG_ADDRESS_QUERY_TIMEOUT 3
#endif
/**
* @def OPENTHREAD_CONFIG_ADDRESS_QUERY_INITIAL_RETRY_DELAY
*
* Initial retry delay for address query (in seconds).
*
* Default: 15 seconds
*
*/
#ifndef OPENTHREAD_CONFIG_ADDRESS_QUERY_INITIAL_RETRY_DELAY
#define OPENTHREAD_CONFIG_ADDRESS_QUERY_INITIAL_RETRY_DELAY 15
#endif
/**
* @def OPENTHREAD_CONFIG_ADDRESS_QUERY_MAX_RETRY_DELAY
*
* Maximum retry delay for address query (in seconds).
*
* Default: 28800 seconds (480 minutes or 8 hours)
*
*/
#ifndef OPENTHREAD_CONFIG_ADDRESS_QUERY_MAX_RETRY_DELAY
#define OPENTHREAD_CONFIG_ADDRESS_QUERY_MAX_RETRY_DELAY 28800
#endif
/**
* @def OPENTHREAD_CONFIG_MAX_SERVICE_ALOCS
*
* The maximum number of supported Service ALOCs registrations for this device.
*
*/
#ifndef OPENTHREAD_CONFIG_MAX_SERVICE_ALOCS
#define OPENTHREAD_CONFIG_MAX_SERVICE_ALOCS 1
#endif
/**
* @def OPENTHREAD_CONFIG_6LOWPAN_REASSEMBLY_TIMEOUT
*
@@ -197,16 +141,6 @@
#define OPENTHREAD_CONFIG_JOINER_UDP_PORT 1000
#endif
/**
* @def OPENTHREAD_CONFIG_MAX_ENERGY_RESULTS
*
* The maximum number of Energy List entries.
*
*/
#ifndef OPENTHREAD_CONFIG_MAX_ENERGY_RESULTS
#define OPENTHREAD_CONFIG_MAX_ENERGY_RESULTS 64
#endif
/**
* @def OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
*
@@ -227,32 +161,6 @@
#define OPENTHREAD_CONFIG_STORE_FRAME_COUNTER_AHEAD 1000
#endif
/**
* @def OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_MINIMUM_DELAY
*
* Minimum Delay Timer value for a Pending Operational Dataset (in ms).
*
* Thread specification defines this value as 30,000 ms. Changing from the specified value should be done for testing
* only.
*
*/
#ifndef OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_MINIMUM_DELAY
#define OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_MINIMUM_DELAY 30000
#endif
/**
* @def OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_DEFAULT_DELAY
*
* Default Delay Timer value for a Pending Operational Dataset (in ms).
*
* Thread specification defines this value as 300,000 ms. Changing from the specified value should be done for testing
* only.
*
*/
#ifndef OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_DEFAULT_DELAY
#define OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_DEFAULT_DELAY 300000
#endif
/**
* @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
*
+163
View File
@@ -0,0 +1,163 @@
/*
* Copyright (c) 2019, The OpenThread Authors.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holder nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
/**
* @file
* This file includes compile-time configurations for the Thread Management Framework service.
*
*/
#ifndef CONFIG_TMF_H_
#define CONFIG_TMF_H_
/**
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
*
* The number of EID-to-RLOC cache entries.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
#define OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES 10
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT
*
* The timeout value (in seconds) waiting for a address notification response after sending an address query.
*
* Default: 3 seconds
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT 3
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY
*
* Initial retry delay for address query (in seconds).
*
* Default: 15 seconds
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY 15
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
*
* Maximum retry delay for address query (in seconds).
*
* Default: 28800 seconds (480 minutes or 8 hours)
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY 28800
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_PENDING_DATASET_MINIMUM_DELAY
*
* Minimum Delay Timer value for a Pending Operational Dataset (in ms).
*
* Thread specification defines this value as 30,000 ms. Changing from the specified value should be done for testing
* only.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_PENDING_DATASET_MINIMUM_DELAY
#define OPENTHREAD_CONFIG_TMF_PENDING_DATASET_MINIMUM_DELAY 30000
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_PENDING_DATASET_DEFAULT_DELAY
*
* Default Delay Timer value for a Pending Operational Dataset (in ms).
*
* Thread specification defines this value as 300,000 ms. Changing from the specified value should be done for testing
* only.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_PENDING_DATASET_DEFAULT_DELAY
#define OPENTHREAD_CONFIG_TMF_PENDING_DATASET_DEFAULT_DELAY 300000
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_ENERGY_SCAN_MAX_RESULTS
*
* The maximum number of Energy List entries.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_ENERGY_SCAN_MAX_RESULTS
#define OPENTHREAD_CONFIG_TMF_ENERGY_SCAN_MAX_RESULTS 64
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
*
* Define to 1 to support injecting Service entries into the Thread Network Data.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
#define OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE 0
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_MAX_ALOCS
*
* The maximum number of supported Service ALOCs registrations for this device.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_MAX_ALOCS
#define OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_MAX_ALOCS 1
#endif
/**
* @def OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
*
* Define to 1 to enable TMF network diagnostics on MTDs.
*
*/
#ifndef OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
#define OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE 0
#endif
/**
* @def OPENTHREAD_CONFIG_INFORM_PREVIOUS_PARENT_ON_REATTACH
*
* Define as 1 for a child to inform its previous parent when it attaches to a new parent.
*
* If this feature is enabled, when a device attaches to a new parent, it will send an IP message (with empty payload
* and mesh-local IP address as the source address) to its previous parent.
*
*/
#ifndef OPENTHREAD_CONFIG_INFORM_PREVIOUS_PARENT_ON_REATTACH
#define OPENTHREAD_CONFIG_INFORM_PREVIOUS_PARENT_ON_REATTACH 0
#endif
#endif // CONFIG_TMF_H_
+1 -1
View File
@@ -137,7 +137,7 @@ void EnergyScanClient::HandleReport(Coap::Message &aMessage, const Ip6::MessageI
struct
{
MeshCoP::EnergyListTlv tlv;
uint8_t list[OPENTHREAD_CONFIG_MAX_ENERGY_RESULTS];
uint8_t list[OPENTHREAD_CONFIG_TMF_ENERGY_SCAN_MAX_RESULTS];
} OT_TOOL_PACKED_END energyList;
VerifyOrExit(aMessage.GetType() == OT_COAP_TYPE_CONFIRMABLE && aMessage.GetCode() == OT_COAP_CODE_POST);
+2 -2
View File
@@ -1395,13 +1395,13 @@ public:
* Minimum Delay Timer value for a Pending Operational Dataset (ms)
*
*/
kDelayTimerMinimal = OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_MINIMUM_DELAY,
kDelayTimerMinimal = OPENTHREAD_CONFIG_TMF_PENDING_DATASET_MINIMUM_DELAY,
/**
* Default Delay Timer value for a Pending Operational Dataset (ms)
*
*/
kDelayTimerDefault = OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_DEFAULT_DELAY,
kDelayTimerDefault = OPENTHREAD_CONFIG_TMF_PENDING_DATASET_DEFAULT_DELAY,
};
private:
+1
View File
@@ -66,6 +66,7 @@
#include "config/platform.h"
#include "config/sntp_client.h"
#include "config/time_sync.h"
#include "config/tmf.h"
#if OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE || OPENTHREAD_CONFIG_BORDER_AGENT_ENABLE || \
OPENTHREAD_CONFIG_COMMISSIONER_ENABLE || OPENTHREAD_CONFIG_JOINER_ENABLE
+4 -4
View File
@@ -128,7 +128,7 @@ public:
private:
enum
{
kCacheEntries = OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES,
kCacheEntries = OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES,
kStateUpdatePeriod = 1000u, ///< State update period in milliseconds.
};
@@ -138,9 +138,9 @@ private:
*/
enum
{
kAddressQueryTimeout = OPENTHREAD_CONFIG_ADDRESS_QUERY_TIMEOUT, // in seconds
kAddressQueryInitialRetryDelay = OPENTHREAD_CONFIG_ADDRESS_QUERY_INITIAL_RETRY_DELAY, // in seconds
kAddressQueryMaxRetryDelay = OPENTHREAD_CONFIG_ADDRESS_QUERY_MAX_RETRY_DELAY, // in seconds
kAddressQueryTimeout = OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT, // in seconds
kAddressQueryInitialRetryDelay = OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY, // in seconds
kAddressQueryMaxRetryDelay = OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY, // in seconds
};
enum
+1 -1
View File
@@ -88,7 +88,7 @@ private:
uint8_t mCount;
bool mActive;
int8_t mScanResults[OPENTHREAD_CONFIG_MAX_ENERGY_RESULTS];
int8_t mScanResults[OPENTHREAD_CONFIG_TMF_ENERGY_SCAN_MAX_RESULTS];
uint8_t mScanResultsLength;
TimerMilli mTimer;
+3 -3
View File
@@ -420,7 +420,7 @@ otError MeshForwarder::UpdateIp6RouteFtd(Ip6::Header &ip6Header)
}
#endif // OPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE || OPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
else if ((aloc16 >= Mle::kAloc16ServiceStart) && (aloc16 <= Mle::kAloc16ServiceEnd))
{
SuccessOrExit(error = GetDestinationRlocByServiceAloc(aloc16, mMeshDest));
@@ -756,7 +756,7 @@ exit:
return error;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError MeshForwarder::GetDestinationRlocByServiceAloc(uint16_t aServiceAloc, uint16_t &aMeshDest)
{
otError error = OT_ERROR_NONE;
@@ -814,7 +814,7 @@ otError MeshForwarder::GetDestinationRlocByServiceAloc(uint16_t aServiceAloc, ui
exit:
return error;
}
#endif // OPENTHREAD_ENABLE_SERVICE
#endif // OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
// LCOV_EXCL_START
+7 -7
View File
@@ -142,7 +142,7 @@ Mle::Mle(Instance &aInstance)
mLeaderAloc.mScopeOverride = Ip6::Address::kRealmLocalScope;
mLeaderAloc.mScopeOverrideValid = true;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
// Service Alocs
for (size_t i = 0; i < OT_ARRAY_LENGTH(mServiceAlocs); i++)
@@ -760,7 +760,7 @@ void Mle::SetStateChild(uint16_t aRloc16)
Get<MleRouter>().HandleChildStart(mParentRequestMode);
}
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
Get<NetworkData::Local>().ClearResubmitDelayTimer();
#endif
Get<Ip6::Ip6>().SetForwardingEnabled(false);
@@ -900,7 +900,7 @@ exit:
void Mle::ApplyMeshLocalPrefix(void)
{
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
for (uint8_t i = 0; i < OT_ARRAY_LENGTH(mServiceAlocs); i++)
{
@@ -1010,7 +1010,7 @@ exit:
return error;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError Mle::GetServiceAloc(uint8_t aServiceId, Ip6::Address &aAddress) const
{
otError error = OT_ERROR_NONE;
@@ -1548,9 +1548,9 @@ void Mle::HandleStateChanged(otChangedFlags aFlags)
ScheduleMessageTransmissionTimer();
}
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
Get<NetworkData::Local>().SendServerDataNotification();
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
this->UpdateServiceAlocs();
#endif
#endif
@@ -1585,7 +1585,7 @@ exit:
return;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void Mle::UpdateServiceAlocs(void)
{
uint16_t rloc = GetRloc16();
+4 -4
View File
@@ -880,7 +880,7 @@ public:
return GetAlocAddress(aAddress, GetCommissionerAloc16FromId(aSessionId));
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method retrieves the Service ALOC for given Service ID.
*
@@ -1729,7 +1729,7 @@ private:
void ResetParentCandidate(void);
otError GetAlocAddress(Ip6::Address &aAddress, uint16_t aAloc16) const;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method scans for network data from the leader and updates IP addresses assigned to this
* interface to make sure that all Service ALOCs (0xfc10-0xfc1f) are properly set.
@@ -1810,8 +1810,8 @@ private:
Ip6::NetifUnicastAddress mLeaderAloc;
#if OPENTHREAD_ENABLE_SERVICE
Ip6::NetifUnicastAddress mServiceAlocs[OPENTHREAD_CONFIG_MAX_SERVICE_ALOCS];
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
Ip6::NetifUnicastAddress mServiceAlocs[OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_MAX_ALOCS];
#endif
otMleCounters mCounters;
+1 -1
View File
@@ -1405,7 +1405,7 @@ otError MleRouter::HandleAdvertisement(const Message &aMessage, const Ip6::Messa
UpdateRoutes(route, routerId);
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
Get<NetworkData::Local>().SendServerDataNotification();
#endif
+6 -6
View File
@@ -232,7 +232,7 @@ exit:
return error;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError NetworkData::GetNextService(otNetworkDataIterator *aIterator, otServiceConfig *aConfig)
{
return GetNextService(aIterator, Mac::kShortAddrBroadcast, aConfig);
@@ -436,7 +436,7 @@ exit:
return rval;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
bool NetworkData::ContainsServices(NetworkData &aCompare, uint16_t aRloc16)
{
otNetworkDataIterator outerIterator = OT_NETWORK_DATA_ITERATOR_INIT;
@@ -530,7 +530,7 @@ void NetworkData::RemoveTemporaryData(uint8_t *aData, uint8_t &aDataLength)
NetworkDataTlv *cur = reinterpret_cast<NetworkDataTlv *>(aData);
NetworkDataTlv *end;
PrefixTlv * prefix;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
ServiceTlv *service;
#endif
uint8_t length;
@@ -567,7 +567,7 @@ void NetworkData::RemoveTemporaryData(uint8_t *aData, uint8_t &aDataLength)
break;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case NetworkDataTlv::kTypeService:
{
@@ -705,7 +705,7 @@ void NetworkData::RemoveTemporaryData(uint8_t *aData, uint8_t &aDataLength, Pref
}
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void NetworkData::RemoveTemporaryData(uint8_t *aData, uint8_t &aDataLength, ServiceTlv &aService)
{
NetworkDataTlv *cur = aService.GetSubTlvs();
@@ -932,7 +932,7 @@ int8_t NetworkData::PrefixMatch(const uint8_t *a, const uint8_t *b, uint8_t aLen
return (rval >= aLength) ? rval : -1;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
ServiceTlv *NetworkData::FindService(uint32_t aEnterpriseNumber,
const uint8_t *aServiceData,
uint8_t aServiceDataLength)
+4 -4
View File
@@ -184,7 +184,7 @@ public:
*/
otError GetNextExternalRoute(otNetworkDataIterator *aIterator, uint16_t aRloc16, otExternalRouteConfig *aConfig);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method provides the next service in the Thread Network Data.
*
@@ -250,7 +250,7 @@ public:
*/
bool ContainsExternalRoutes(NetworkData &aCompare, uint16_t aRloc16);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method indicates whether or not the Thread Network Data contains all of the service information
* in @p aCompare associated with @p aRloc16.
@@ -361,7 +361,7 @@ protected:
*/
PrefixTlv *FindPrefix(const uint8_t *aPrefix, uint8_t aPrefixLength, uint8_t *aTlvs, uint8_t aTlvsLength);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method returns a pointer to a matching Service TLV.
*
@@ -432,7 +432,7 @@ protected:
*/
void RemoveTemporaryData(uint8_t *aData, uint8_t &aDataLength, PrefixTlv &aPrefix);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method strips non-stable Sub-TLVs from a Service TLV.
*
+11 -11
View File
@@ -440,7 +440,7 @@ otError Leader::RlocLookup(uint16_t aRloc16,
HasRouteTlv * hasRoute;
BorderRouterEntry *borderRouterEntry;
HasRouteEntry * hasRouteEntry;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
ServiceTlv *service;
ServerTlv * server;
#endif
@@ -529,7 +529,7 @@ otError Leader::RlocLookup(uint16_t aRloc16,
}
break;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case NetworkDataTlv::kTypeService:
{
@@ -600,7 +600,7 @@ bool Leader::IsStableUpdated(uint8_t *aTlvs, uint8_t aTlvsLength, uint8_t *aTlvs
bool rval = false;
NetworkDataTlv *cur = reinterpret_cast<NetworkDataTlv *>(aTlvs);
NetworkDataTlv *end = reinterpret_cast<NetworkDataTlv *>(aTlvs + aTlvsLength);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
ServiceTlv *service;
#endif
@@ -653,7 +653,7 @@ bool Leader::IsStableUpdated(uint8_t *aTlvs, uint8_t aTlvsLength, uint8_t *aTlvs
break;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case NetworkDataTlv::kTypeService:
service = static_cast<ServiceTlv *>(cur);
@@ -794,7 +794,7 @@ exit:
otError Leader::AddNetworkData(uint8_t *aTlvs, uint8_t aTlvsLength, uint8_t *aOldTlvs, uint8_t aOldTlvsLength)
{
#if !OPENTHREAD_ENABLE_SERVICE
#if !OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
OT_UNUSED_VARIABLE(aOldTlvs);
OT_UNUSED_VARIABLE(aOldTlvsLength);
#endif
@@ -814,7 +814,7 @@ otError Leader::AddNetworkData(uint8_t *aTlvs, uint8_t aTlvsLength, uint8_t *aOl
otDumpDebgNetData("add prefix done", mTlvs, mLength);
break;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case NetworkDataTlv::kTypeService:
SuccessOrExit(error = AddService(*static_cast<ServiceTlv *>(cur), aOldTlvs, aOldTlvsLength));
@@ -870,7 +870,7 @@ exit:
return error;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError Leader::AddService(ServiceTlv &aService, uint8_t *aOldTlvs, uint8_t aOldTlvsLength)
{
otError error = OT_ERROR_NONE;
@@ -965,7 +965,7 @@ exit:
return error;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError Leader::AddServer(ServiceTlv &aService, ServerTlv &aServer, uint8_t *aOldTlvs, uint8_t aOldTlvsLength)
{
otError error = OT_ERROR_NONE;
@@ -1236,7 +1236,7 @@ void Leader::RemoveRloc(uint16_t aRloc16, MatchMode aMatchMode)
NetworkDataTlv *cur = reinterpret_cast<NetworkDataTlv *>(mTlvs);
NetworkDataTlv *end;
PrefixTlv * prefix;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
ServiceTlv *service;
#endif
@@ -1266,7 +1266,7 @@ void Leader::RemoveRloc(uint16_t aRloc16, MatchMode aMatchMode)
break;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case NetworkDataTlv::kTypeService:
{
@@ -1361,7 +1361,7 @@ void Leader::RemoveRloc(PrefixTlv &aPrefix, uint16_t aRloc16, MatchMode aMatchMo
}
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void Leader::RemoveRloc(ServiceTlv &aService, uint16_t aRloc16, MatchMode aMatchMode)
{
NetworkDataTlv *cur = aService.GetSubTlvs();
+3 -3
View File
@@ -159,7 +159,7 @@ public:
*/
void UpdateContextsAfterReset(void);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method scans network data for given service ID and returns pointer to the respective TLV, if present.
*
@@ -183,7 +183,7 @@ private:
otError AddBorderRouter(PrefixTlv &aPrefix, BorderRouterTlv &aBorderRouter);
otError AddNetworkData(uint8_t *aTlvs, uint8_t aTlvsLength, uint8_t *aOldTlvs, uint8_t aOldTlvsLength);
otError AddPrefix(PrefixTlv &aPrefix);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError AddServer(ServiceTlv &aService, ServerTlv &aServer, uint8_t *aOldTlvs, uint8_t aOldTlvsLength);
otError AddService(ServiceTlv &aService, uint8_t *aOldTlvs, uint8_t aOldTlvsLength);
#endif
@@ -200,7 +200,7 @@ private:
void RemoveRloc(uint16_t aRloc16, MatchMode aMatchMode);
void RemoveRloc(PrefixTlv &aPrefix, uint16_t aRloc16, MatchMode aMatchMode);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void RemoveRloc(ServiceTlv &aService, uint16_t aRloc16, MatchMode aMatchMode);
#endif
void RemoveRloc(PrefixTlv &aPrefix, HasRouteTlv &aHasRoute, uint16_t aRloc16, MatchMode aMatchMode);
+7 -7
View File
@@ -41,7 +41,7 @@
#include "mac/mac_frame.hpp"
#include "thread/thread_netif.hpp"
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
namespace ot {
namespace NetworkData {
@@ -175,7 +175,7 @@ exit:
return error;
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
otError Local::AddService(uint32_t aEnterpriseNumber,
const uint8_t *aServiceData,
uint8_t aServiceDataLength,
@@ -253,7 +253,7 @@ void Local::UpdateRloc(void)
UpdateRloc(*static_cast<PrefixTlv *>(cur));
break;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case NetworkDataTlv::kTypeService:
UpdateRloc(*static_cast<ServiceTlv *>(cur));
@@ -302,7 +302,7 @@ void Local::UpdateRloc(BorderRouterTlv &aBorderRouter)
entry->SetRloc(Get<Mle::MleRouter>().GetRloc16());
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void Local::UpdateRloc(ServiceTlv &aService)
{
for (NetworkDataTlv *cur = aService.GetSubTlvs(); cur < aService.GetNext(); cur = cur->GetNext())
@@ -338,7 +338,7 @@ bool Local::IsExternalRouteConsistent(void)
ContainsExternalRoutes(Get<Leader>(), Get<Mle::MleRouter>().GetRloc16()));
}
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
bool Local::IsServiceConsistent(void)
{
return (Get<Leader>().ContainsServices(*this, Get<Mle::MleRouter>().GetRloc16()) &&
@@ -365,7 +365,7 @@ otError Local::SendServerDataNotification(void)
UpdateRloc();
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
VerifyOrExit(!IsOnMeshPrefixConsistent() || !IsExternalRouteConsistent() || !IsServiceConsistent(),
ClearResubmitDelayTimer());
#else
@@ -387,4 +387,4 @@ exit:
} // namespace NetworkData
} // namespace ot
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
+3 -3
View File
@@ -120,7 +120,7 @@ public:
*/
otError RemoveHasRoutePrefix(const uint8_t *aPrefix, uint8_t aPrefixLength);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
/**
* This method adds a Service entry to the Thread Network local data.
*
@@ -170,14 +170,14 @@ private:
void UpdateRloc(PrefixTlv &aPrefix);
void UpdateRloc(HasRouteTlv &aHasRoute);
void UpdateRloc(BorderRouterTlv &aBorderRouter);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
void UpdateRloc(ServiceTlv &aService);
void UpdateRloc(ServerTlv &aServer);
#endif
bool IsOnMeshPrefixConsistent(void);
bool IsExternalRouteConsistent(void);
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
bool IsServiceConsistent(void);
#endif
+2 -2
View File
@@ -49,7 +49,7 @@
#include "thread/thread_tlvs.hpp"
#include "thread/thread_uri_paths.hpp"
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
namespace ot {
@@ -695,4 +695,4 @@ exit:
} // namespace ot
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#endif // OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
+2 -2
View File
@@ -72,11 +72,11 @@ ThreadNetif::ThreadNetif(Instance &aInstance)
, mMac(aInstance)
, mMeshForwarder(aInstance)
, mMleRouter(aInstance)
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
, mNetworkDataLocal(aInstance)
#endif
, mNetworkDataLeader(aInstance)
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
, mNetworkDiagnostic(aInstance)
#endif
, mIsUp(false)
+4 -4
View File
@@ -187,13 +187,13 @@ private:
Mac::Mac mMac;
MeshForwarder mMeshForwarder;
Mle::MleRouter mMleRouter;
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
NetworkData::Local mNetworkDataLocal;
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_ENABLE_SERVICE
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE || OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
NetworkData::Leader mNetworkDataLeader;
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#if OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
NetworkDiagnostic::NetworkDiagnostic mNetworkDiagnostic;
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
#endif // OPENTHREAD_FTD || OPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE
bool mIsUp;
#if OPENTHREAD_CONFIG_BORDER_AGENT_ENABLE
+2 -2
View File
@@ -228,7 +228,7 @@ NcpBase::NcpBase(Instance *aInstance)
, mPcapEnabled(false)
, mDisableStreamWrite(false)
, mShouldEmitChildTableUpdate(false)
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
, mAllowLocalServerDataChange(false)
#endif
#if OPENTHREAD_FTD
@@ -1823,7 +1823,7 @@ template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_CAPS>(void)
SuccessOrExit(error = mEncoder.WriteUintPacked(SPINEL_CAP_THREAD_UDP_FORWARD));
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
SuccessOrExit(error = mEncoder.WriteUintPacked(SPINEL_CAP_THREAD_SERVICE));
#endif
+1 -1
View File
@@ -555,7 +555,7 @@ protected:
bool mPcapEnabled;
bool mDisableStreamWrite;
bool mShouldEmitChildTableUpdate;
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
bool mAllowLocalServerDataChange;
#endif
+4 -4
View File
@@ -519,7 +519,7 @@ NcpBase::PropertyHandler NcpBase::FindGetPropertyHandler(spinel_prop_key_t aKey)
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_SLAAC_ENABLED>;
break;
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case SPINEL_PROP_SERVER_ALLOW_LOCAL_DATA_CHANGE:
handler = &NcpBase::HandlePropertyGet<SPINEL_PROP_SERVER_ALLOW_LOCAL_DATA_CHANGE>;
break;
@@ -869,7 +869,7 @@ NcpBase::PropertyHandler NcpBase::FindSetPropertyHandler(spinel_prop_key_t aKey)
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_SLAAC_ENABLED>;
break;
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case SPINEL_PROP_SERVER_ALLOW_LOCAL_DATA_CHANGE:
handler = &NcpBase::HandlePropertySet<SPINEL_PROP_SERVER_ALLOW_LOCAL_DATA_CHANGE>;
break;
@@ -1057,7 +1057,7 @@ NcpBase::PropertyHandler NcpBase::FindInsertPropertyHandler(spinel_prop_key_t aK
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_MAC_FIXED_RSS>;
break;
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case SPINEL_PROP_SERVER_SERVICES:
handler = &NcpBase::HandlePropertyInsert<SPINEL_PROP_SERVER_SERVICES>;
break;
@@ -1142,7 +1142,7 @@ NcpBase::PropertyHandler NcpBase::FindRemovePropertyHandler(spinel_prop_key_t aK
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_MAC_FIXED_RSS>;
break;
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
case SPINEL_PROP_SERVER_SERVICES:
handler = &NcpBase::HandlePropertyRemove<SPINEL_PROP_SERVER_SERVICES>;
break;
+3 -3
View File
@@ -57,7 +57,7 @@
#if OPENTHREAD_FTD
#include <openthread/thread_ftd.h>
#endif
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
#include <openthread/server.h>
#endif
@@ -826,7 +826,7 @@ exit:
}
#endif // OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE
#if OPENTHREAD_ENABLE_SERVICE
#if OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_SERVER_ALLOW_LOCAL_DATA_CHANGE>(void)
{
@@ -958,7 +958,7 @@ exit:
return error;
}
#endif // OPENTHREAD_ENABLE_SERVICE
#endif // OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
template <> otError NcpBase::HandlePropertyGet<SPINEL_PROP_THREAD_DISCOVERY_SCAN_JOINER_FLAG>(void)
{
-1
View File
@@ -82,7 +82,6 @@ configure_options=" \
--enable-jam-detection \
--enable-legacy \
--enable-ncp \
--enable-service \
"
cppflags_config='-DOPENTHREAD_PROJECT_CORE_CONFIG_FILE=\"../tests/toranj/openthread-core-toranj-config.h\"'
+14 -6
View File
@@ -80,6 +80,14 @@
*/
#define OPENTHREAD_CONFIG_JOINER_ENABLE 1
/**
* @def OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE
*
* Define to 1 to support injecting Service entries into the Thread Network Data.
*
*/
#define OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE 1
/**
* @def OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
*
@@ -89,22 +97,22 @@
#define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 256
/**
* @def OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES
*
* The number of EID-to-RLOC cache entries.
*
*/
#define OPENTHREAD_CONFIG_ADDRESS_CACHE_ENTRIES 32
#define OPENTHREAD_CONFIG_TMF_ADDRESS_CACHE_ENTRIES 32
/**
* @def OPENTHREAD_CONFIG_ADDRESS_QUERY_MAX_RETRY_DELAY
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
*
* Maximum retry delay for address query (in seconds).
*
* Default: 28800 seconds (480 minutes or 8 hours)
*
*/
#define OPENTHREAD_CONFIG_ADDRESS_QUERY_MAX_RETRY_DELAY 120
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY 120
/**
* @def OPENTHREAD_CONFIG_MLE_MAX_CHILDREN
@@ -330,7 +338,7 @@
#define OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE 1
/**
* @def OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_MINIMUM_DELAY
* @def OPENTHREAD_CONFIG_TMF_PENDING_DATASET_MINIMUM_DELAY
*
* Minimum Delay Timer value for a Pending Operational Dataset (in ms).
*
@@ -339,7 +347,7 @@
* For `toranj` test script the value is decreased so that the tests can be run faster.
*
*/
#define OPENTHREAD_CONFIG_MESHCOP_PENDING_DATASET_MINIMUM_DELAY 1000
#define OPENTHREAD_CONFIG_TMF_PENDING_DATASET_MINIMUM_DELAY 1000
/**
* @def OPENTHREAD_CONFIG_NCP_ENABLE_MCU_POWER_STATE_CONTROL