diff --git a/DMRNetwork.cpp b/DMRNetwork.cpp index 8e96acd..cf110c6 100644 --- a/DMRNetwork.cpp +++ b/DMRNetwork.cpp @@ -252,6 +252,9 @@ bool CDMRNetwork::writeRadioPosition(const unsigned char* data, unsigned int len if (!m_location) return false; + if (length < 4U || length > 50U) + return false; + unsigned char buffer[50U]; ::memcpy(buffer + 0U, "DMRG", 4U); @@ -268,6 +271,9 @@ bool CDMRNetwork::writeTalkerAlias(const unsigned char* data, unsigned int lengt if (m_status != STATUS::RUNNING) return false; + if (length < 4U || length > 50U) + return false; + unsigned char buffer[50U]; ::memcpy(buffer + 0U, "DMRA", 4U);