carve out peer_list_entry into also being deprecated (it was only used by deprecated functions and some tests)

This commit is contained in:
arvidn 2017-07-16 12:25:07 -07:00 committed by Arvid Norberg
parent b1c3e12cd0
commit 73942de97a
7 changed files with 32 additions and 17 deletions

View File

@ -421,6 +421,7 @@ namespace libtorrent {
}; };
#ifndef TORRENT_NO_DEPRECATE
// internal // internal
struct TORRENT_EXTRA_EXPORT peer_list_entry struct TORRENT_EXTRA_EXPORT peer_list_entry
{ {
@ -439,6 +440,7 @@ namespace libtorrent {
// internal // internal
std::uint8_t source; std::uint8_t source;
}; };
#endif
} }

View File

@ -679,7 +679,9 @@ namespace libtorrent {
peer_iterator begin() { return m_connections.begin(); } peer_iterator begin() { return m_connections.begin(); }
peer_iterator end() { return m_connections.end(); } peer_iterator end() { return m_connections.end(); }
#ifndef TORRENT_NO_DEPRECATE
void get_full_peer_list(std::vector<peer_list_entry>* v) const; void get_full_peer_list(std::vector<peer_list_entry>* v) const;
#endif
void get_peer_info(std::vector<peer_info>* v); void get_peer_info(std::vector<peer_info>* v);
void get_download_queue(std::vector<partial_piece_info>* queue) const; void get_download_queue(std::vector<partial_piece_info>* queue) const;

View File

@ -66,7 +66,9 @@ namespace libtorrent { namespace aux {
class torrent_info; class torrent_info;
struct torrent_plugin; struct torrent_plugin;
struct peer_info; struct peer_info;
#ifndef TORRENT_NO_DEPRECATE
struct peer_list_entry; struct peer_list_entry;
#endif
struct torrent_status; struct torrent_status;
struct torrent_handle; struct torrent_handle;
struct storage_interface; struct storage_interface;

View File

@ -6237,6 +6237,7 @@ namespace libtorrent {
} }
} }
#ifndef TORRENT_NO_DEPRECATE
void torrent::get_full_peer_list(std::vector<peer_list_entry>* v) const void torrent::get_full_peer_list(std::vector<peer_list_entry>* v) const
{ {
v->clear(); v->clear();
@ -6253,6 +6254,7 @@ namespace libtorrent {
v->push_back(e); v->push_back(e);
} }
} }
#endif
void torrent::get_peer_info(std::vector<peer_info>* v) void torrent::get_peer_info(std::vector<peer_info>* v)
{ {

View File

@ -49,7 +49,7 @@ POSSIBILITY OF SUCH DAMAGE.
#include "libtorrent/announce_entry.hpp" #include "libtorrent/announce_entry.hpp"
#include "libtorrent/write_resume_data.hpp" #include "libtorrent/write_resume_data.hpp"
#if TORRENT_COMPLETE_TYPES_REQUIRED #ifndef TORRENT_NO_DEPRECATE
#include "libtorrent/peer_info.hpp" // for peer_list_entry #include "libtorrent/peer_info.hpp" // for peer_list_entry
#endif #endif

View File

@ -244,9 +244,13 @@ TORRENT_TEST(added_peers)
torrent_handle h = ses.add_torrent(std::move(p)); torrent_handle h = ses.add_torrent(std::move(p));
std::vector<peer_list_entry> v; h.save_resume_data();
h.native_handle()->get_full_peer_list(&v); alert const* a = wait_for_alert(ses, save_resume_data_alert::alert_type);
TEST_EQUAL(v.size(), 2);
TEST_CHECK(a);
save_resume_data_alert const* ra = alert_cast<save_resume_data_alert>(a);
TEST_CHECK(ra);
if (ra) TEST_EQUAL(ra->params.peers.size(), 2);
} }
TORRENT_TEST(torrent) TORRENT_TEST(torrent)

View File

@ -467,21 +467,24 @@ TORRENT_TEST(http_peers)
// we expect to have certain peers in our peer list now // we expect to have certain peers in our peer list now
// these peers are hard coded in web_server.py // these peers are hard coded in web_server.py
std::vector<peer_list_entry> peers; h.save_resume_data();
h.native_handle()->get_full_peer_list(&peers); alert const* a = wait_for_alert(*s, save_resume_data_alert::alert_type);
std::set<tcp::endpoint> expected_peers; TEST_CHECK(a);
expected_peers.insert(ep("65.65.65.65", 16962)); save_resume_data_alert const* ra = alert_cast<save_resume_data_alert>(a);
expected_peers.insert(ep("67.67.67.67", 17476)); TEST_CHECK(ra);
#if TORRENT_USE_IPV6 if (ra)
expected_peers.insert(ep("4545:4545:4545:4545:4545:4545:4545:4545", 17990));
#endif
TEST_EQUAL(peers.size(), expected_peers.size());
for (std::vector<peer_list_entry>::iterator i = peers.begin()
, end(peers.end()); i != end; ++i)
{ {
TEST_EQUAL(expected_peers.count(i->ip), 1); std::set<tcp::endpoint> expected_peers;
expected_peers.insert(ep("65.65.65.65", 16962));
expected_peers.insert(ep("67.67.67.67", 17476));
#if TORRENT_USE_IPV6
expected_peers.insert(ep("4545:4545:4545:4545:4545:4545:4545:4545", 17990));
#endif
for (auto const& ip : ra->params.peers)
{
TEST_EQUAL(expected_peers.count(ip), 1);
}
} }
std::printf("destructing session\n"); std::printf("destructing session\n");