reconnect to proxy if receive error

This commit is contained in:
orignal 2022-11-08 10:37:34 -05:00
parent 7f98a8b972
commit c88638afe4

View File

@ -277,10 +277,20 @@ namespace transport
if (ecode != boost::asio::error::operation_aborted) if (ecode != boost::asio::error::operation_aborted)
{ {
LogPrint (eLogError, "SSU2: Receive error: code ", ecode.value(), ": ", ecode.message ()); LogPrint (eLogError, "SSU2: Receive error: code ", ecode.value(), ": ", ecode.message ());
auto ep = socket.local_endpoint (); if (m_IsThroughProxy)
socket.close (); {
OpenSocket (ep); m_UDPAssociateSocket.reset (nullptr);
Receive (socket); m_ProxyRelayEndpoint.reset (nullptr);
m_SocketV4.close ();
ConnectToProxy ();
}
else
{
auto ep = socket.local_endpoint ();
socket.close ();
OpenSocket (ep);
Receive (socket);
}
} }
} }
} }