Browse Source

allow ipv6 adresses for UDP server tunnels

pull/1687/head
orignal 3 years ago
parent
commit
d124d4cace
  1. 10
      libi2pd_client/ClientContext.cpp

10
libi2pd_client/ClientContext.cpp

@ -720,9 +720,15 @@ namespace client
{ {
// udp server tunnel // udp server tunnel
// TODO: hostnames // TODO: hostnames
if (address.empty ()) address = "127.0.0.1";
auto localAddress = boost::asio::ip::address::from_string(address);
boost::asio::ip::udp::endpoint endpoint(boost::asio::ip::address::from_string(host), port); boost::asio::ip::udp::endpoint endpoint(boost::asio::ip::address::from_string(host), port);
if (address.empty ())
{
if (!endpoint.address ().is_unspecified () && endpoint.address ().is_v6 ())
address = "::1";
else
address = "127.0.0.1";
}
auto localAddress = boost::asio::ip::address::from_string(address);
auto serverTunnel = std::make_shared<I2PUDPServerTunnel>(name, localDestination, localAddress, endpoint, port, gzip); auto serverTunnel = std::make_shared<I2PUDPServerTunnel>(name, localDestination, localAddress, endpoint, port, gzip);
if(!isUniqueLocal) if(!isUniqueLocal)
{ {

Loading…
Cancel
Save