mirror of
https://github.com/espressif/openthread.git
synced 2026-08-06 10:47:46 +00:00
Make Network Diagnostic optional for MTD. (#1686)
* make network diagnostic optional for mtd
This commit is contained in:
@@ -568,6 +568,38 @@ AC_SUBST(OPENTHREAD_ENABLE_BORDER_AGENT_PROXY)
|
||||
AM_CONDITIONAL([OPENTHREAD_ENABLE_BORDER_AGENT_PROXY], [test "${enable_border_agent_proxy}" = "yes"])
|
||||
AC_DEFINE_UNQUOTED([OPENTHREAD_ENABLE_BORDER_AGENT_PROXY],[${OPENTHREAD_ENABLE_BORDER_AGENT_PROXY}],[Define to 1 to enable the border agent proxy 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.])
|
||||
|
||||
#
|
||||
# Thread Commissioner
|
||||
#
|
||||
@@ -1303,6 +1335,7 @@ AC_MSG_NOTICE([
|
||||
OpenThread NCP-MTD support : ${enable_ncp_app_mtd}
|
||||
OpenThread NCP-FTD support : ${enable_ncp_app_ftd}
|
||||
OpenThread NCP-BUS Configuration : ${with_ncp_bus}
|
||||
OpenThread MTD Network Diagnostic support : ${enable_mtd_network_diagnostic}
|
||||
OpenThread builtin mbedtls support : ${enable_builtin_mbedtls}
|
||||
OpenThread Border Agent Proxy support : ${enable_border_agent_proxy}
|
||||
OpenThread Commissioner support : ${enable_commissioner}
|
||||
|
||||
+21
-20
@@ -81,26 +81,27 @@ TargetTuple = $(shell ${AbsTopSourceDir}/third_party/nlbuild
|
||||
# If the user has asserted COVERAGE, alter the configuration options
|
||||
# accordingly.
|
||||
|
||||
configure_OPTIONS = \
|
||||
--enable-cli-app=all \
|
||||
--enable-ncp-app=all \
|
||||
--with-ncp-bus=uart \
|
||||
--enable-diag \
|
||||
--enable-default-logging \
|
||||
--enable-raw-link-api=yes \
|
||||
--with-examples=posix \
|
||||
--with-platform-info=POSIX \
|
||||
--enable-application-coap \
|
||||
--enable-border-agent-proxy \
|
||||
--enable-cert-log \
|
||||
--enable-commissioner \
|
||||
--enable-dhcp6-client \
|
||||
--enable-dhcp6-server \
|
||||
--enable-dns-client \
|
||||
--enable-jam-detection \
|
||||
--enable-joiner \
|
||||
--enable-legacy \
|
||||
--enable-mac-whitelist \
|
||||
configure_OPTIONS = \
|
||||
--enable-cli-app=all \
|
||||
--enable-ncp-app=all \
|
||||
--with-ncp-bus=uart \
|
||||
--enable-diag \
|
||||
--enable-default-logging \
|
||||
--enable-raw-link-api=yes \
|
||||
--with-examples=posix \
|
||||
--with-platform-info=POSIX \
|
||||
--enable-application-coap \
|
||||
--enable-border-agent-proxy \
|
||||
--enable-cert-log \
|
||||
--enable-commissioner \
|
||||
--enable-dhcp6-client \
|
||||
--enable-dhcp6-server \
|
||||
--enable-dns-client \
|
||||
--enable-jam-detection \
|
||||
--enable-joiner \
|
||||
--enable-legacy \
|
||||
--enable-mac-whitelist \
|
||||
--enable-mtd-network-diagnostic \
|
||||
$(NULL)
|
||||
|
||||
ifeq ($(COVERAGE),1)
|
||||
|
||||
@@ -151,7 +151,9 @@ const struct Command Interpreter::sCommands[] =
|
||||
{ "masterkey", &Interpreter::ProcessMasterKey },
|
||||
{ "mode", &Interpreter::ProcessMode },
|
||||
{ "netdataregister", &Interpreter::ProcessNetworkDataRegister },
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
{ "networkdiagnostic", &Interpreter::ProcessNetworkDiagnostic },
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
#if OPENTHREAD_FTD
|
||||
{ "networkidtimeout", &Interpreter::ProcessNetworkIdTimeout },
|
||||
#endif
|
||||
@@ -238,7 +240,9 @@ Interpreter::Interpreter(otInstance *aInstance):
|
||||
#else
|
||||
memset(mSlaacAddresses, 0, sizeof(mSlaacAddresses));
|
||||
otSetStateChangedCallback(mInstance, &Interpreter::s_HandleNetifStateChanged, this);
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
otThreadSetReceiveDiagnosticGetCallback(mInstance, &Interpreter::s_HandleDiagnosticGetResponse, this);
|
||||
#endif
|
||||
|
||||
mIcmpHandler.mReceiveCallback = Interpreter::s_HandleIcmpReceive;
|
||||
mIcmpHandler.mContext = this;
|
||||
@@ -3030,6 +3034,7 @@ exit:
|
||||
return;
|
||||
}
|
||||
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
void Interpreter::ProcessNetworkDiagnostic(int argc, char *argv[])
|
||||
{
|
||||
ThreadError error = kThreadError_None;
|
||||
@@ -3068,6 +3073,7 @@ void Interpreter::ProcessNetworkDiagnostic(int argc, char *argv[])
|
||||
exit:
|
||||
AppendResult(error);
|
||||
}
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
|
||||
#ifndef OTDLL
|
||||
void Interpreter::s_HandleDiagnosticGetResponse(otMessage *aMessage, const otMessageInfo *aMessageInfo,
|
||||
|
||||
@@ -226,7 +226,9 @@ private:
|
||||
void ProcessMasterKey(int argc, char *argv[]);
|
||||
void ProcessMode(int argc, char *argv[]);
|
||||
void ProcessNetworkDataRegister(int argc, char *argv[]);
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
void ProcessNetworkDiagnostic(int argc, char *argv[]);
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
#if OPENTHREAD_FTD
|
||||
void ProcessNetworkIdTimeout(int argc, char *argv[]);
|
||||
#endif
|
||||
|
||||
@@ -434,6 +434,7 @@ const char *otGetVersionString(void)
|
||||
return sVersion;
|
||||
}
|
||||
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
void otThreadSetReceiveDiagnosticGetCallback(otInstance *aInstance, otReceiveDiagnosticGetCallback aCallback,
|
||||
void *aCallbackContext)
|
||||
{
|
||||
@@ -457,6 +458,7 @@ ThreadError otThreadSendDiagnosticReset(otInstance *aInstance, const otIp6Addres
|
||||
aTlvTypes,
|
||||
aCount);
|
||||
}
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
|
||||
ThreadError otThreadSetEnabled(otInstance *aInstance, bool aEnabled)
|
||||
{
|
||||
|
||||
@@ -59,7 +59,7 @@ extern "C" {
|
||||
void otPbkdf2Cmac(
|
||||
const uint8_t *aPassword, uint16_t aPasswordLen,
|
||||
const uint8_t *aSalt, uint16_t aSaltLen,
|
||||
uint32_t aIterationCounter , uint16_t aKeyLen,
|
||||
uint32_t aIterationCounter, uint16_t aKeyLen,
|
||||
uint8_t *aKey);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -58,6 +58,8 @@
|
||||
|
||||
using ot::Encoding::BigEndian::HostSwap16;
|
||||
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
|
||||
namespace ot {
|
||||
|
||||
namespace NetworkDiagnostic {
|
||||
@@ -642,3 +644,5 @@ exit:
|
||||
} // namespace NetworkDiagnostic
|
||||
|
||||
} // namespace ot
|
||||
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
|
||||
@@ -82,7 +82,9 @@ ThreadNetif::ThreadNetif(Ip6::Ip6 &aIp6):
|
||||
mMleRouter(*this),
|
||||
mNetworkDataLocal(*this),
|
||||
mNetworkDataLeader(*this),
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
mNetworkDiagnostic(*this),
|
||||
#endif
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER && OPENTHREAD_FTD
|
||||
mSecureCoapServer(*this, OPENTHREAD_CONFIG_JOINER_UDP_PORT),
|
||||
mCommissioner(*this),
|
||||
|
||||
@@ -161,6 +161,7 @@ public:
|
||||
*/
|
||||
virtual ThreadError RouteLookup(const Ip6::Address &aSource, const Ip6::Address &aDestination, uint8_t *aPrefixMatch);
|
||||
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
/**
|
||||
* This method returns a reference to the network diagnostic object.
|
||||
*
|
||||
@@ -168,6 +169,7 @@ public:
|
||||
*
|
||||
*/
|
||||
NetworkDiagnostic::NetworkDiagnostic &GetNetworkDiagnostic(void) { return mNetworkDiagnostic; }
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
|
||||
#if OPENTHREAD_ENABLE_DHCP6_CLIENT
|
||||
/**
|
||||
@@ -427,7 +429,9 @@ private:
|
||||
Mle::MleRouter mMleRouter;
|
||||
NetworkData::Local mNetworkDataLocal;
|
||||
NetworkData::Leader mNetworkDataLeader;
|
||||
#if OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
NetworkDiagnostic::NetworkDiagnostic mNetworkDiagnostic;
|
||||
#endif // OPENTHREAD_FTD || OPENTHREAD_ENABLE_MTD_NETWORK_DIAGNOSTIC
|
||||
bool mIsUp;
|
||||
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER && OPENTHREAD_FTD
|
||||
|
||||
Reference in New Issue
Block a user