forked from premiere/premiere-libtorrent
added option to set peers in a state where it doesn't download
This commit is contained in:
parent
19c66a1826
commit
3412c0f709
|
@ -198,6 +198,9 @@ namespace libtorrent
|
||||||
void request_large_blocks(bool b)
|
void request_large_blocks(bool b)
|
||||||
{ m_request_large_blocks = b; }
|
{ m_request_large_blocks = b; }
|
||||||
|
|
||||||
|
bool no_download() const { return m_no_download; }
|
||||||
|
void no_download(bool b) { m_no_download = b; }
|
||||||
|
|
||||||
void set_priority(int p)
|
void set_priority(int p)
|
||||||
{ m_priority = p; }
|
{ m_priority = p; }
|
||||||
|
|
||||||
|
@ -318,6 +321,8 @@ namespace libtorrent
|
||||||
bool on_local_network() const;
|
bool on_local_network() const;
|
||||||
bool ignore_bandwidth_limits() const
|
bool ignore_bandwidth_limits() const
|
||||||
{ return m_ignore_bandwidth_limits; }
|
{ return m_ignore_bandwidth_limits; }
|
||||||
|
void ignore_bandwidth_limits(bool i)
|
||||||
|
{ m_ignore_bandwidth_limits = i; }
|
||||||
|
|
||||||
bool failed() const { return m_failed; }
|
bool failed() const { return m_failed; }
|
||||||
|
|
||||||
|
@ -661,7 +666,7 @@ namespace libtorrent
|
||||||
|
|
||||||
// this is the torrent this connection is
|
// this is the torrent this connection is
|
||||||
// associated with. If the connection is an
|
// associated with. If the connection is an
|
||||||
// incoming conncetion, this is set to zero
|
// incoming connection, this is set to zero
|
||||||
// until the info_hash is received. Then it's
|
// until the info_hash is received. Then it's
|
||||||
// set to the torrent it belongs to.
|
// set to the torrent it belongs to.
|
||||||
boost::weak_ptr<torrent> m_torrent;
|
boost::weak_ptr<torrent> m_torrent;
|
||||||
|
@ -870,6 +875,10 @@ namespace libtorrent
|
||||||
// this is set to true once the bitfield is received
|
// this is set to true once the bitfield is received
|
||||||
bool m_bitfield_received:1;
|
bool m_bitfield_received:1;
|
||||||
|
|
||||||
|
// if this is set to true, the client will not
|
||||||
|
// pick any pieces from this peer
|
||||||
|
bool m_no_download:1;
|
||||||
|
|
||||||
#ifndef NDEBUG
|
#ifndef NDEBUG
|
||||||
public:
|
public:
|
||||||
bool m_in_constructor:1;
|
bool m_in_constructor:1;
|
||||||
|
|
|
@ -130,6 +130,7 @@ namespace libtorrent
|
||||||
, m_upload_only(false)
|
, m_upload_only(false)
|
||||||
, m_snubbed(false)
|
, m_snubbed(false)
|
||||||
, m_bitfield_received(false)
|
, m_bitfield_received(false)
|
||||||
|
, m_no_download(false)
|
||||||
#ifndef NDEBUG
|
#ifndef NDEBUG
|
||||||
, m_in_constructor(true)
|
, m_in_constructor(true)
|
||||||
, m_disconnect_started(false)
|
, m_disconnect_started(false)
|
||||||
|
@ -237,6 +238,7 @@ namespace libtorrent
|
||||||
, m_upload_only(false)
|
, m_upload_only(false)
|
||||||
, m_snubbed(false)
|
, m_snubbed(false)
|
||||||
, m_bitfield_received(false)
|
, m_bitfield_received(false)
|
||||||
|
, m_no_download(false)
|
||||||
#ifndef NDEBUG
|
#ifndef NDEBUG
|
||||||
, m_in_constructor(true)
|
, m_in_constructor(true)
|
||||||
, m_disconnect_started(false)
|
, m_disconnect_started(false)
|
||||||
|
|
|
@ -179,6 +179,7 @@ namespace libtorrent
|
||||||
void request_a_block(torrent& t, peer_connection& c)
|
void request_a_block(torrent& t, peer_connection& c)
|
||||||
{
|
{
|
||||||
if (t.is_seed()) return;
|
if (t.is_seed()) return;
|
||||||
|
if (c.no_download()) return;
|
||||||
|
|
||||||
TORRENT_ASSERT(t.valid_metadata());
|
TORRENT_ASSERT(t.valid_metadata());
|
||||||
TORRENT_ASSERT(c.peer_info_struct() != 0 || !dynamic_cast<bt_peer_connection*>(&c));
|
TORRENT_ASSERT(c.peer_info_struct() != 0 || !dynamic_cast<bt_peer_connection*>(&c));
|
||||||
|
|
Loading…
Reference in New Issue