mirror of
https://github.com/g4klx/DMRGateway
synced 2025-12-23 23:05:38 +08:00
Remove annoying and incorrect error messages.
This commit is contained in:
@@ -281,87 +281,85 @@ void CMMDVMNetworkOld::clock(unsigned int ms)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
if (!CUDPSocket::match(m_rptAddr, address)) {
|
if (!CUDPSocket::match(m_rptAddr, address)) {
|
||||||
LogMessage("%s Network, packet received from an invalid source", m_name);
|
LogMessage("%s Network, packet received from an invalid source", m_name);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_debug && length > 0)
|
if (m_debug)
|
||||||
CUtils::dump(1U, "Network Received", m_buffer, length);
|
CUtils::dump(1U, "Network Received", m_buffer, length);
|
||||||
|
|
||||||
if (length > 0) {
|
if (::memcmp(m_buffer, "DMRD", 4U) == 0) {
|
||||||
if (::memcmp(m_buffer, "DMRD", 4U) == 0) {
|
unsigned char len = length;
|
||||||
if (m_debug)
|
m_rxData.addData(&len, 1U);
|
||||||
CUtils::dump(1U, "Network Received", m_buffer, length);
|
m_rxData.addData(m_buffer, len);
|
||||||
|
} else if (::memcmp(m_buffer, "DMRG", 4U) == 0) {
|
||||||
|
::memcpy(m_radioPositionData, m_buffer, length);
|
||||||
|
m_radioPositionLen = length;
|
||||||
|
} else if (::memcmp(m_buffer, "DMRA", 4U) == 0) {
|
||||||
|
::memcpy(m_talkerAliasData, m_buffer, length);
|
||||||
|
m_talkerAliasLen = length;
|
||||||
|
} else if (::memcmp(m_buffer, "RPTG", 4U) == 0) {
|
||||||
|
} else if (::memcmp(m_buffer, "RPTL", 4U) == 0) {
|
||||||
|
m_id = (m_buffer[4U] << 24) | (m_buffer[5U] << 16) | (m_buffer[6U] << 8) | (m_buffer[7U] << 0);
|
||||||
|
::memcpy(m_netId, m_buffer + 4U, 4U);
|
||||||
|
|
||||||
unsigned char len = length;
|
unsigned char ack[10U];
|
||||||
m_rxData.addData(&len, 1U);
|
::memcpy(ack + 0U, "RPTACK", 6U);
|
||||||
m_rxData.addData(m_buffer, len);
|
|
||||||
} else if (::memcmp(m_buffer, "DMRG", 4U) == 0) {
|
|
||||||
::memcpy(m_radioPositionData, m_buffer, length);
|
|
||||||
m_radioPositionLen = length;
|
|
||||||
} else if (::memcmp(m_buffer, "DMRA", 4U) == 0) {
|
|
||||||
::memcpy(m_talkerAliasData, m_buffer, length);
|
|
||||||
m_talkerAliasLen = length;
|
|
||||||
} else if (::memcmp(m_buffer, "RPTG", 4U) == 0) {
|
|
||||||
} else if (::memcmp(m_buffer, "RPTL", 4U) == 0) {
|
|
||||||
m_id = (m_buffer[4U] << 24) | (m_buffer[5U] << 16) | (m_buffer[6U] << 8) | (m_buffer[7U] << 0);
|
|
||||||
::memcpy(m_netId, m_buffer + 4U, 4U);
|
|
||||||
|
|
||||||
unsigned char ack[10U];
|
uint32_t salt = 1U;
|
||||||
::memcpy(ack + 0U, "RPTACK", 6U);
|
::memcpy(ack + 6U, &salt, sizeof(uint32_t));
|
||||||
|
|
||||||
uint32_t salt = 1U;
|
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
||||||
::memcpy(ack + 6U, &salt, sizeof(uint32_t));
|
} else if (::memcmp(m_buffer, "RPTK", 4U) == 0) {
|
||||||
|
unsigned char ack[10U];
|
||||||
|
::memcpy(ack + 0U, "RPTACK", 6U);
|
||||||
|
::memcpy(ack + 6U, m_netId, 4U);
|
||||||
|
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
||||||
|
} else if (::memcmp(m_buffer, "RPTCL", 5U) == 0) {
|
||||||
|
::LogMessage("%s Network, the connected MMDVM is closing down", m_name);
|
||||||
|
} else if (::memcmp(m_buffer, "RPTC", 4U) == 0) {
|
||||||
|
m_configLen = 111U;
|
||||||
|
m_configData = new unsigned char[m_configLen];
|
||||||
|
|
||||||
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
// Convert the old style config data to the new style
|
||||||
} else if (::memcmp(m_buffer, "RPTK", 4U) == 0) {
|
const unsigned char* p = m_buffer;
|
||||||
unsigned char ack[10U];
|
|
||||||
::memcpy(ack + 0U, "RPTACK", 6U);
|
|
||||||
::memcpy(ack + 6U, m_netId, 4U);
|
|
||||||
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
|
||||||
} else if (::memcmp(m_buffer, "RPTCL", 5U) == 0) {
|
|
||||||
::LogMessage("%s Network, the connected MMDVM is closing down", m_name);
|
|
||||||
} else if (::memcmp(m_buffer, "RPTC", 4U) == 0) {
|
|
||||||
m_configLen = 111U;
|
|
||||||
m_configData = new unsigned char[m_configLen];
|
|
||||||
|
|
||||||
// Convert the old style config data to the new style
|
p += 4U + 4U; // Skip the opcode and id fields
|
||||||
const unsigned char* p = m_buffer;
|
|
||||||
|
|
||||||
p += 4U + 4U; // Skip the opcode and id fields
|
// First the callsign, frequencies, power, and color code.
|
||||||
|
::memcpy(m_configData + 0U, p, 8U + 9U + 9U + 2U + 2U);
|
||||||
|
p += 8U + 9U + 9U + 2U + 2U;
|
||||||
|
|
||||||
// First the callsign, frequencies, power, and color code.
|
p += 8U + 9U + 3U + 20U + 19U; // Skip the latutude, longitude, height, location and description.
|
||||||
::memcpy(m_configData + 0U, p, 8U + 9U + 9U + 2U + 2U);
|
|
||||||
p += 8U + 9U + 9U + 2U + 2U;
|
|
||||||
|
|
||||||
p += 8U + 9U + 3U + 20U + 19U; // Skip the latutude, longitude, height, location and description.
|
// Next the slots.
|
||||||
|
::memcpy(m_configData + 30U, p, 1U);
|
||||||
|
p += 1U;
|
||||||
|
|
||||||
// Next the slots.
|
p += 124U; // Skip the URL
|
||||||
::memcpy(m_configData + 30U, p, 1U);
|
|
||||||
p += 1U;
|
|
||||||
|
|
||||||
p += 124U; // Skip the URL
|
// Finally the version and software.
|
||||||
|
::memcpy(m_configData + 31U, p, 40U + 40U);
|
||||||
|
|
||||||
// Finally the version and software.
|
unsigned char ack[10U];
|
||||||
::memcpy(m_configData + 31U, p, 40U + 40U);
|
::memcpy(ack + 0U, "RPTACK", 6U);
|
||||||
|
::memcpy(ack + 6U, m_netId, 4U);
|
||||||
unsigned char ack[10U];
|
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
||||||
::memcpy(ack + 0U, "RPTACK", 6U);
|
} else if (::memcmp(m_buffer, "RPTO", 4U) == 0) {
|
||||||
::memcpy(ack + 6U, m_netId, 4U);
|
unsigned char ack[10U];
|
||||||
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
::memcpy(ack + 0U, "RPTACK", 6U);
|
||||||
} else if (::memcmp(m_buffer, "RPTO", 4U) == 0) {
|
::memcpy(ack + 6U, m_netId, 4U);
|
||||||
unsigned char ack[10U];
|
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
||||||
::memcpy(ack + 0U, "RPTACK", 6U);
|
} else if (::memcmp(m_buffer, "RPTPING", 7U) == 0) {
|
||||||
::memcpy(ack + 6U, m_netId, 4U);
|
unsigned char pong[11U];
|
||||||
m_socket.write(ack, 10U, m_rptAddr, m_rptAddrLen);
|
::memcpy(pong + 0U, "MSTPONG", 7U);
|
||||||
} else if (::memcmp(m_buffer, "RPTPING", 7U) == 0) {
|
::memcpy(pong + 7U, m_netId, 4U);
|
||||||
unsigned char pong[11U];
|
m_socket.write(pong, 11U, m_rptAddr, m_rptAddrLen);
|
||||||
::memcpy(pong + 0U, "MSTPONG", 7U);
|
} else {
|
||||||
::memcpy(pong + 7U, m_netId, 4U);
|
CUtils::dump("Unknown packet from the master", m_buffer, length);
|
||||||
m_socket.write(pong, 11U, m_rptAddr, m_rptAddrLen);
|
|
||||||
} else {
|
|
||||||
CUtils::dump("Unknown packet from the master", m_buffer, length);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user