|
|
@ -1959,8 +1959,12 @@ namespace transport |
|
|
|
eSSU2RelayResponseCodeBobRelayTagNotFound, nonce, 0, false); |
|
|
|
eSSU2RelayResponseCodeBobRelayTagNotFound, nonce, 0, false); |
|
|
|
packet->payloadSize += CreatePaddingBlock (packet->payload + packet->payloadSize, m_MaxPayloadSize - packet->payloadSize); |
|
|
|
packet->payloadSize += CreatePaddingBlock (packet->payload + packet->payloadSize, m_MaxPayloadSize - packet->payloadSize); |
|
|
|
uint32_t packetNum = SendData (packet->payload, packet->payloadSize); |
|
|
|
uint32_t packetNum = SendData (packet->payload, packet->payloadSize); |
|
|
|
|
|
|
|
if (m_RemoteVersion >= SSU2_MIN_RELAY_RESPONSE_RESEND_VERSION) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
// sometimes Alice doesn't ack this RelayResponse in older versions
|
|
|
|
packet->sendTime = mts; |
|
|
|
packet->sendTime = mts; |
|
|
|
session->m_SentPackets.emplace (packetNum, packet); |
|
|
|
m_SentPackets.emplace (packetNum, packet); |
|
|
|
|
|
|
|
} |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
if (session->m_RelaySessions.emplace (nonce, std::make_pair (shared_from_this (), mts/1000)).second) |
|
|
|
if (session->m_RelaySessions.emplace (nonce, std::make_pair (shared_from_this (), mts/1000)).second) |
|
|
|