From c57198decd63564cceee677c21b49dccdf2df56e Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Tue, 5 Dec 2017 17:49:20 -0500 Subject: [PATCH] Add remoteTraceLevel to controller. --- controller/EmbeddedNetworkController.cpp | 4 ++++ controller/EmbeddedNetworkController.hpp | 2 ++ 2 files changed, 6 insertions(+) diff --git a/controller/EmbeddedNetworkController.cpp b/controller/EmbeddedNetworkController.cpp index 018f22158..596179eaa 100644 --- a/controller/EmbeddedNetworkController.cpp +++ b/controller/EmbeddedNetworkController.cpp @@ -662,6 +662,7 @@ unsigned int EmbeddedNetworkController::handleControlPlaneHttpPOST( member["remoteTraceTarget"] = json(); } } + if (b.count("remoteTraceLevel")) member["remoteTraceLevel"] = OSUtils::jsonInt(b["remoteTraceLevel"],0ULL); if (b.count("authorized")) { const bool newAuth = OSUtils::jsonBool(b["authorized"],false); @@ -784,6 +785,7 @@ unsigned int EmbeddedNetworkController::handleControlPlaneHttpPOST( network["remoteTraceTarget"] = json(); } } + if (b.count("remoteTraceLevel")) network["remoteTraceLevel"] = OSUtils::jsonInt(b["remoteTraceLevel"],0ULL); if (b.count("v4AssignMode")) { json nv4m; @@ -1322,6 +1324,7 @@ void EmbeddedNetworkController::_request( std::string rtt(OSUtils::jsonString(member["remoteTraceTarget"],"")); if (rtt.length() == 10) { nc->remoteTraceTarget = Address(Utils::hexStrToU64(rtt.c_str())); + nc->remoteTraceLevel = (Trace::Level)OSUtils::jsonInt(member["remoteTraceLevel"],0ULL); } else { rtt = OSUtils::jsonString(network["remoteTraceTarget"],""); if (rtt.length() == 10) { @@ -1329,6 +1332,7 @@ void EmbeddedNetworkController::_request( } else { nc->remoteTraceTarget.zero(); } + nc->remoteTraceLevel = (Trace::Level)OSUtils::jsonInt(network["remoteTraceLevel"],0ULL); } for(std::vector
::const_iterator ab(ns.activeBridges.begin());ab!=ns.activeBridges.end();++ab) diff --git a/controller/EmbeddedNetworkController.hpp b/controller/EmbeddedNetworkController.hpp index b04a44c9b..31b5b2b52 100644 --- a/controller/EmbeddedNetworkController.hpp +++ b/controller/EmbeddedNetworkController.hpp @@ -125,6 +125,7 @@ private: if (!member.count("vRev")) member["vRev"] = -1; if (!member.count("vProto")) member["vProto"] = -1; if (!member.count("remoteTraceTarget")) member["remoteTraceTarget"] = nlohmann::json(); + if (!member.count("removeTraceLevel")) member["remoteTraceLevel"] = 0; member["objtype"] = "member"; } inline void _initNetwork(nlohmann::json &network) @@ -143,6 +144,7 @@ private: if (!network.count("ipAssignmentPools")) network["ipAssignmentPools"] = nlohmann::json::array(); if (!network.count("mtu")) network["mtu"] = ZT_DEFAULT_MTU; if (!network.count("remoteTraceTarget")) network["remoteTraceTarget"] = nlohmann::json(); + if (!network.count("removeTraceLevel")) network["remoteTraceLevel"] = 0; if (!network.count("rules")) { // If unspecified, rules are set to allow anything and behave like a flat L2 segment network["rules"] = {{