MCPcopy Create free account
hub / github.com/ddnet/ddnet / AddToken

Method AddToken

src/engine/shared/network.cpp:548–577  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

546}
547
548void CNetTokenCache::AddToken(const NETADDR *pAddr, TOKEN Token)
549{
550 if(Token == NET_TOKEN_NONE)
551 return;
552
553 NETADDR NullAddr = NETADDR_ZEROED;
554 NullAddr.port = pAddr->port;
555 NullAddr.type = (pAddr->type & ~(NETTYPE_WEBSOCKET_IPV4 | NETTYPE_WEBSOCKET_IPV6)) | NETTYPE_LINK_BROADCAST;
556
557 for(auto Iter = m_ConnlessPackets.begin(); Iter != m_ConnlessPackets.end();)
558 {
559 if(Iter->m_Addr == NullAddr)
560 {
561 CNetBase::SendPacketConnlessWithToken7(m_Socket, &Iter->m_Addr, Iter->m_aData, Iter->m_DataSize, Token, GenerateToken());
562
563 Iter = m_ConnlessPackets.erase(Iter);
564 }
565 else
566 {
567 Iter++;
568 }
569 }
570
571 CAddressInfo Info;
572 Info.m_Addr = *pAddr,
573 Info.m_Token = Token,
574 Info.m_Expiry = time_get() + (time_freq() * NET_TOKENCACHE_ADDRESSEXPIRY);
575
576 m_TokenCache.push_back(Info);
577}
578
579TOKEN CNetTokenCache::GetToken(const NETADDR *pAddr)
580{

Callers 1

RecvMethod · 0.80

Calls 4

time_getFunction · 0.85
time_freqFunction · 0.85
beginMethod · 0.80
endMethod · 0.80

Tested by

no test coverage detected