From bf8938766eee0e231152a2f40c58d4830c34059d Mon Sep 17 00:00:00 2001 From: Bryan Biedenkapp Date: Fri, 11 Oct 2024 20:21:27 -0400 Subject: [PATCH] port newer changes for RPTC JSON message handling from dvmhost to other apps; --- src/bridge/network/PeerNetwork.cpp | 4 ++-- src/sysview/network/PeerNetwork.cpp | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/bridge/network/PeerNetwork.cpp b/src/bridge/network/PeerNetwork.cpp index 36158a72..9e782161 100644 --- a/src/bridge/network/PeerNetwork.cpp +++ b/src/bridge/network/PeerNetwork.cpp @@ -196,13 +196,13 @@ bool PeerNetwork::writeConfig() char* buffer = __buffer.get(); ::memcpy(buffer + 0U, TAG_REPEATER_CONFIG, 4U); - ::sprintf(buffer + 8U, "%s", json.c_str()); + ::snprintf(buffer + 8U, json.length() + 1U, "%s", json.c_str()); if (m_debug) { Utils::dump(1U, "Network Message, Configuration", (uint8_t*)buffer, json.length() + 8U); } - return writeMaster({ NET_FUNC::RPTC, NET_SUBFUNC::NOP }, (uint8_t*)buffer, json.length() + 8U, pktSeq(), m_loginStreamId); + return writeMaster({ NET_FUNC::RPTC, NET_SUBFUNC::NOP }, (uint8_t*)buffer, json.length() + 8U, RTP_END_OF_CALL_SEQ, m_loginStreamId); } // --------------------------------------------------------------------------- diff --git a/src/sysview/network/PeerNetwork.cpp b/src/sysview/network/PeerNetwork.cpp index 5933a5c2..55c4ce89 100644 --- a/src/sysview/network/PeerNetwork.cpp +++ b/src/sysview/network/PeerNetwork.cpp @@ -152,14 +152,15 @@ bool PeerNetwork::writeConfig() json::value v = json::value(config); std::string json = v.serialize(); - char buffer[json.length() + 8U]; + CharArray __buffer = std::make_unique(json.length() + 9U); + char* buffer = __buffer.get(); ::memcpy(buffer + 0U, TAG_REPEATER_CONFIG, 4U); - ::sprintf(buffer + 8U, "%s", json.c_str()); + ::snprintf(buffer + 8U, json.length() + 1U, "%s", json.c_str()); if (m_debug) { Utils::dump(1U, "Network Message, Configuration", (uint8_t*)buffer, json.length() + 8U); } - return writeMaster({ NET_FUNC::RPTC, NET_SUBFUNC::NOP }, (uint8_t*)buffer, json.length() + 8U, pktSeq(), m_loginStreamId); + return writeMaster({ NET_FUNC::RPTC, NET_SUBFUNC::NOP }, (uint8_t*)buffer, json.length() + 8U, RTP_END_OF_CALL_SEQ, m_loginStreamId); }