forked from premiere/premiere-libtorrent
remove the last use of session_impl get_ipv6_interface and get_ipv4_interface
This commit is contained in:
parent
1290e6f5af
commit
e92cbf502c
|
@ -321,9 +321,6 @@ namespace aux {
|
||||||
// need the initial push to connect peers
|
// need the initial push to connect peers
|
||||||
void prioritize_connections(std::weak_ptr<torrent> t) override;
|
void prioritize_connections(std::weak_ptr<torrent> t) override;
|
||||||
|
|
||||||
tcp::endpoint get_ipv6_interface() const override;
|
|
||||||
tcp::endpoint get_ipv4_interface() const override;
|
|
||||||
|
|
||||||
void async_accept(std::shared_ptr<tcp::acceptor> const& listener, transport ssl);
|
void async_accept(std::shared_ptr<tcp::acceptor> const& listener, transport ssl);
|
||||||
void on_accept_connection(std::shared_ptr<socket_type> const& s
|
void on_accept_connection(std::shared_ptr<socket_type> const& s
|
||||||
, std::weak_ptr<tcp::acceptor> listener, error_code const& e, transport ssl);
|
, std::weak_ptr<tcp::acceptor> listener, error_code const& e, transport ssl);
|
||||||
|
|
|
@ -222,9 +222,6 @@ namespace libtorrent { namespace aux {
|
||||||
|
|
||||||
virtual void prioritize_connections(std::weak_ptr<torrent> t) = 0;
|
virtual void prioritize_connections(std::weak_ptr<torrent> t) = 0;
|
||||||
|
|
||||||
virtual tcp::endpoint get_ipv4_interface() const = 0;
|
|
||||||
virtual tcp::endpoint get_ipv6_interface() const = 0;
|
|
||||||
|
|
||||||
virtual void trigger_auto_manage() = 0;
|
virtual void trigger_auto_manage() = 0;
|
||||||
|
|
||||||
virtual void apply_settings_pack(std::shared_ptr<settings_pack> pack) = 0;
|
virtual void apply_settings_pack(std::shared_ptr<settings_pack> pack) = 0;
|
||||||
|
|
|
@ -149,7 +149,7 @@ namespace libtorrent {
|
||||||
std::uint32_t key;
|
std::uint32_t key;
|
||||||
int num_want;
|
int num_want;
|
||||||
#if TORRENT_USE_IPV6
|
#if TORRENT_USE_IPV6
|
||||||
address_v6 ipv6;
|
std::vector<address_v6> ipv6;
|
||||||
#endif
|
#endif
|
||||||
sha1_hash info_hash;
|
sha1_hash info_hash;
|
||||||
peer_id pid;
|
peer_id pid;
|
||||||
|
|
|
@ -181,12 +181,13 @@ namespace libtorrent {
|
||||||
}
|
}
|
||||||
|
|
||||||
#if TORRENT_USE_IPV6
|
#if TORRENT_USE_IPV6
|
||||||
if (tracker_req().ipv6 != address_v6() && !i2p)
|
if (!tracker_req().ipv6.empty() && !i2p)
|
||||||
{
|
{
|
||||||
error_code err;
|
for (auto const& v6 : tracker_req().ipv6)
|
||||||
std::string const ip = tracker_req().ipv6.to_string(err);
|
|
||||||
if (!err)
|
|
||||||
{
|
{
|
||||||
|
error_code err;
|
||||||
|
std::string const ip = v6.to_string(err);
|
||||||
|
if (err) continue;
|
||||||
url += "&ipv6=";
|
url += "&ipv6=";
|
||||||
url += escape_string(ip);
|
url += escape_string(ip);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1444,31 +1444,6 @@ namespace {
|
||||||
reopen_outgoing_sockets();
|
reopen_outgoing_sockets();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: 3 try to remove these functions. They are misleading and not very
|
|
||||||
// useful. Anything using these should probably be fixed to do something more
|
|
||||||
// multi-homed friendly
|
|
||||||
tcp::endpoint session_impl::get_ipv6_interface() const
|
|
||||||
{
|
|
||||||
#if TORRENT_USE_IPV6
|
|
||||||
for (auto const& i : m_listen_sockets)
|
|
||||||
{
|
|
||||||
if (!i->local_endpoint.address().is_v6()) continue;
|
|
||||||
return tcp::endpoint(i->local_endpoint.address(), std::uint16_t(i->tcp_external_port));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
return tcp::endpoint();
|
|
||||||
}
|
|
||||||
|
|
||||||
tcp::endpoint session_impl::get_ipv4_interface() const
|
|
||||||
{
|
|
||||||
for (auto const& i : m_listen_sockets)
|
|
||||||
{
|
|
||||||
if (!i->local_endpoint.address().is_v4()) continue;
|
|
||||||
return tcp::endpoint(i->local_endpoint.address(), std::uint16_t(i->tcp_external_port));
|
|
||||||
}
|
|
||||||
return tcp::endpoint();
|
|
||||||
}
|
|
||||||
|
|
||||||
std::shared_ptr<listen_socket_t> session_impl::setup_listener(std::string const& device
|
std::shared_ptr<listen_socket_t> session_impl::setup_listener(std::string const& device
|
||||||
, tcp::endpoint bind_ep, transport const ssl, error_code& ec)
|
, tcp::endpoint bind_ep, transport const ssl, error_code& ec)
|
||||||
{
|
{
|
||||||
|
|
|
@ -2744,9 +2744,15 @@ namespace libtorrent {
|
||||||
&& m_torrent_file
|
&& m_torrent_file
|
||||||
&& m_torrent_file->priv())
|
&& m_torrent_file->priv())
|
||||||
{
|
{
|
||||||
tcp::endpoint ep;
|
|
||||||
ep = m_ses.get_ipv6_interface();
|
m_ses.for_each_listen_socket([&](aux::listen_socket_handle const& s)
|
||||||
if (ep != tcp::endpoint()) req.ipv6 = ep.address().to_v6();
|
{
|
||||||
|
if (s.is_ssl() != is_ssl_torrent())
|
||||||
|
return;
|
||||||
|
if (!s.get_local_endpoint().address().is_v6())
|
||||||
|
return;
|
||||||
|
req.ipv6.push_back(s.get_local_endpoint().address().to_v6());
|
||||||
|
});
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue