mirror of
https://github.com/g4klx/MMDVMHost.git
synced 2026-04-05 06:25:24 +00:00
replace SSRC source from IPv4 address to random number
Previous implementation uses SSRC as IPv4 address that is same behaviour of Kenwood's NXDN repeater. RFC 3350 RTP protocol recommends SSRC uses random number. So I use MT19937 random number generator instead of IP address. And if this is no problem, I will do two changes. - replace rand() in DMRNetwork.cpp and DStarNetwork.cpp to MT19937 - remove getLocalAddress() in UDPSocket.cpp
This commit is contained in:
parent
974251485d
commit
79b3eaa57a
2 changed files with 9 additions and 2 deletions
|
|
@ -56,7 +56,8 @@ m_rtcpTimer(1000U, 0U, 200U),
|
|||
m_hangTimer(1000U, 5U),
|
||||
m_hangType(0U),
|
||||
m_hangSrc(0U),
|
||||
m_hangDst(0U)
|
||||
m_hangDst(0U),
|
||||
m_random()
|
||||
{
|
||||
assert(localPort > 0U);
|
||||
assert(!gwyAddress.empty());
|
||||
|
|
@ -65,6 +66,10 @@ m_hangDst(0U)
|
|||
m_sacch = new unsigned char[10U];
|
||||
|
||||
m_address = CUDPSocket::lookup(gwyAddress);
|
||||
|
||||
std::random_device rd;
|
||||
std::mt19937 mt(rd());
|
||||
m_random = mt;
|
||||
}
|
||||
|
||||
CNXDNKenwoodNetwork::~CNXDNKenwoodNetwork()
|
||||
|
|
@ -87,7 +92,7 @@ bool CNXDNKenwoodNetwork::open()
|
|||
return false;
|
||||
}
|
||||
|
||||
m_ssrc = m_rtpSocket.getLocalAddress();
|
||||
m_ssrc = m_random();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue