config.hpp | config.hpp | |||
---|---|---|---|---|
skipping to change at line 518 | skipping to change at line 518 | |||
#else | #else | |||
#define TORRENT_USE_BOOST_DATE_TIME 1 | #define TORRENT_USE_BOOST_DATE_TIME 1 | |||
#endif | #endif | |||
#endif | #endif | |||
// for non-exception builds | // for non-exception builds | |||
#ifdef BOOST_NO_EXCEPTIONS | #ifdef BOOST_NO_EXCEPTIONS | |||
#define TORRENT_TRY if (true) | #define TORRENT_TRY if (true) | |||
#define TORRENT_CATCH(x) else if (false) | #define TORRENT_CATCH(x) else if (false) | |||
#define TORRENT_CATCH_ALL else if (false) | ||||
#define TORRENT_DECLARE_DUMMY(x, y) x y | #define TORRENT_DECLARE_DUMMY(x, y) x y | |||
#else | #else | |||
#define TORRENT_TRY try | #define TORRENT_TRY try | |||
#define TORRENT_CATCH(x) catch(x) | #define TORRENT_CATCH(x) catch(x) | |||
#define TORRENT_CATCH_ALL catch(...) | ||||
#define TORRENT_DECLARE_DUMMY(x, y) | #define TORRENT_DECLARE_DUMMY(x, y) | |||
#endif // BOOST_NO_EXCEPTIONS | #endif // BOOST_NO_EXCEPTIONS | |||
#endif // TORRENT_CONFIG_HPP_INCLUDED | #endif // TORRENT_CONFIG_HPP_INCLUDED | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 2 lines changed or added | |||
i2p_stream.hpp | i2p_stream.hpp | |||
---|---|---|---|---|
skipping to change at line 197 | skipping to change at line 197 | |||
private: | private: | |||
void on_sam_connect(error_code const& ec, i2p_stream::handler_type c onst& h | void on_sam_connect(error_code const& ec, i2p_stream::handler_type c onst& h | |||
, boost::shared_ptr<i2p_stream>); | , boost::shared_ptr<i2p_stream>); | |||
void do_name_lookup(std::string const& name | void do_name_lookup(std::string const& name | |||
, name_lookup_handler const& h); | , name_lookup_handler const& h); | |||
void on_name_lookup(error_code const& ec | void on_name_lookup(error_code const& ec | |||
, name_lookup_handler handler | , name_lookup_handler handler | |||
, boost::shared_ptr<i2p_stream>); | , boost::shared_ptr<i2p_stream>); | |||
void set_local_endpoint(error_code const& ec, char const* dest); | void set_local_endpoint(error_code const& ec, char const* dest | |||
, i2p_stream::handler_type const& h); | ||||
// to talk to i2p SAM bridge | // to talk to i2p SAM bridge | |||
boost::shared_ptr<i2p_stream> m_sam_socket; | boost::shared_ptr<i2p_stream> m_sam_socket; | |||
proxy_settings m_sam_router; | proxy_settings m_sam_router; | |||
// our i2p endpoint key | // our i2p endpoint key | |||
std::string m_i2p_local_endpoint; | std::string m_i2p_local_endpoint; | |||
std::string m_session_id; | std::string m_session_id; | |||
std::list<std::pair<std::string, name_lookup_handler> > m_name_looku p; | std::list<std::pair<std::string, name_lookup_handler> > m_name_looku p; | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
invariant_check.hpp | invariant_check.hpp | |||
---|---|---|---|---|
// Copyright Daniel Wallin 2004. Use, modification and distribution is | // Copyright Daniel Wallin 2004. Use, modification and distribution is | |||
// subject to the Boost Software License, Version 1.0. (See accompanying | // subject to the Boost Software License, Version 1.0. (See accompanying | |||
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |||
#ifndef TORRENT_INVARIANT_ACCESS_HPP_INCLUDED | #ifndef TORRENT_INVARIANT_ACCESS_HPP_INCLUDED | |||
#define TORRENT_INVARIANT_ACCESS_HPP_INCLUDED | #define TORRENT_INVARIANT_ACCESS_HPP_INCLUDED | |||
#include "libtorrent/assert.hpp" | #include "libtorrent/assert.hpp" | |||
#include "libtorrent/config.hpp" | ||||
namespace libtorrent | namespace libtorrent | |||
{ | { | |||
class invariant_access | class invariant_access | |||
{ | { | |||
public: | public: | |||
template<class T> | template<class T> | |||
static void check_invariant(T const& self) | static void check_invariant(T const& self) | |||
{ | { | |||
skipping to change at line 37 | skipping to change at line 38 | |||
} | } | |||
struct invariant_checker {}; | struct invariant_checker {}; | |||
template<class T> | template<class T> | |||
struct invariant_checker_impl : invariant_checker | struct invariant_checker_impl : invariant_checker | |||
{ | { | |||
invariant_checker_impl(T const& self_) | invariant_checker_impl(T const& self_) | |||
: self(self_) | : self(self_) | |||
{ | { | |||
try | TORRENT_TRY | |||
{ | { | |||
check_invariant(self); | check_invariant(self); | |||
} | } | |||
catch (...) | TORRENT_CATCH_ALL | |||
{ | { | |||
TORRENT_ASSERT(false); | TORRENT_ASSERT(false); | |||
} | } | |||
} | } | |||
~invariant_checker_impl() | ~invariant_checker_impl() | |||
{ | { | |||
try | TORRENT_TRY | |||
{ | { | |||
check_invariant(self); | check_invariant(self); | |||
} | } | |||
catch (...) | TORRENT_CATCH_ALL | |||
{ | { | |||
TORRENT_ASSERT(false); | TORRENT_ASSERT(false); | |||
} | } | |||
} | } | |||
T const& self; | T const& self; | |||
}; | }; | |||
template<class T> | template<class T> | |||
invariant_checker_impl<T> make_invariant_checker(T const& x) | invariant_checker_impl<T> make_invariant_checker(T const& x) | |||
End of changes. 5 change blocks. | ||||
4 lines changed or deleted | 5 lines changed or added | |||
peer_connection.hpp | peer_connection.hpp | |||
---|---|---|---|---|
skipping to change at line 424 | skipping to change at line 424 | |||
bool ignore_unchoke_slots() const; | bool ignore_unchoke_slots() const; | |||
void ignore_unchoke_slots(bool i) | void ignore_unchoke_slots(bool i) | |||
{ m_ignore_unchoke_slots = i; } | { m_ignore_unchoke_slots = i; } | |||
bool failed() const { return m_failed; } | bool failed() const { return m_failed; } | |||
int desired_queue_size() const | int desired_queue_size() const | |||
{ | { | |||
// this peer is in end-game mode we only want | // this peer is in end-game mode we only want | |||
// one outstanding request | // one outstanding request | |||
return m_endgame_mode ? 1: m_desired_queue_size; | return (m_endgame_mode || m_snubbed) ? 1: m_desired_ queue_size; | |||
} | } | |||
bool bittyrant_unchoke_compare( | bool bittyrant_unchoke_compare( | |||
boost::intrusive_ptr<peer_connection const> const& p ) const; | boost::intrusive_ptr<peer_connection const> const& p ) const; | |||
// compares this connection against the given connection | // compares this connection against the given connection | |||
// for which one is more eligible for an unchoke. | // for which one is more eligible for an unchoke. | |||
// returns true if this is more eligible | // returns true if this is more eligible | |||
bool unchoke_compare(boost::intrusive_ptr<peer_connection co nst> const& p) const; | bool unchoke_compare(boost::intrusive_ptr<peer_connection co nst> const& p) const; | |||
bool upload_rate_compare(peer_connection const* p) const; | bool upload_rate_compare(peer_connection const* p) const; | |||
skipping to change at line 1048 | skipping to change at line 1048 | |||
// we need to send to this peer for it to unchoke | // we need to send to this peer for it to unchoke | |||
// us | // us | |||
int m_est_reciprocation_rate; | int m_est_reciprocation_rate; | |||
// estimated round trip time to this peer | // estimated round trip time to this peer | |||
// based on the time from when async_connect | // based on the time from when async_connect | |||
// was called to when on_connection_complete | // was called to when on_connection_complete | |||
// was called. The rtt is specified in milliseconds | // was called. The rtt is specified in milliseconds | |||
boost::uint16_t m_rtt; | boost::uint16_t m_rtt; | |||
// the number of request we should queue up | ||||
// at the remote end. | ||||
boost::uint16_t m_desired_queue_size; | ||||
// if set to non-zero, this peer will always prefer | // if set to non-zero, this peer will always prefer | |||
// to request entire n pieces, rather than blocks. | // to request entire n pieces, rather than blocks. | |||
// where n is the value of this variable. | // where n is the value of this variable. | |||
// if it is 0, the download rate limit setting | // if it is 0, the download rate limit setting | |||
// will be used to determine if whole pieces | // will be used to determine if whole pieces | |||
// are preferred. | // are preferred. | |||
boost::uint8_t m_prefer_whole_pieces; | boost::uint8_t m_prefer_whole_pieces; | |||
// the number of request we should queue up | ||||
// at the remote end. | ||||
boost::uint8_t m_desired_queue_size; | ||||
// the number of piece requests we have rejected | // the number of piece requests we have rejected | |||
// in a row because the peer is choked. This is | // in a row because the peer is choked. This is | |||
// used to re-send the choked message in case the | // used to re-send the choked message in case the | |||
// other end keeps requesting pieces while being | // other end keeps requesting pieces while being | |||
// choked, and eventuelly disconnect if it keeps | // choked, and eventuelly disconnect if it keeps | |||
// requesting too many pieces while being choked | // requesting too many pieces while being choked | |||
boost::uint8_t m_choke_rejects; | boost::uint8_t m_choke_rejects; | |||
// if this is true, the disconnection | // if this is true, the disconnection | |||
// timestamp is not updated when the connection | // timestamp is not updated when the connection | |||
End of changes. 3 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||
udp_socket.hpp | udp_socket.hpp | |||
---|---|---|---|---|
skipping to change at line 151 | skipping to change at line 151 | |||
callback_t m_callback; | callback_t m_callback; | |||
// callback for proxied incoming packets with a domain | // callback for proxied incoming packets with a domain | |||
// name as source | // name as source | |||
callback2_t m_callback2; | callback2_t m_callback2; | |||
void on_read(udp::socket* sock, error_code const& e, std::si ze_t bytes_transferred); | void on_read(udp::socket* sock, error_code const& e, std::si ze_t bytes_transferred); | |||
void on_name_lookup(error_code const& e, tcp::resolver::iter ator i); | void on_name_lookup(error_code const& e, tcp::resolver::iter ator i); | |||
void on_timeout(); | void on_timeout(); | |||
void on_connect(int ticket); | void on_connect(int ticket); | |||
void on_connected(error_code const& ec); | void on_connected(error_code const& ec, int ticket); | |||
void handshake1(error_code const& e); | void handshake1(error_code const& e); | |||
void handshake2(error_code const& e); | void handshake2(error_code const& e); | |||
void handshake3(error_code const& e); | void handshake3(error_code const& e); | |||
void handshake4(error_code const& e); | void handshake4(error_code const& e); | |||
void socks_forward_udp(); | void socks_forward_udp(); | |||
void connect1(error_code const& e); | void connect1(error_code const& e); | |||
void connect2(error_code const& e); | void connect2(error_code const& e); | |||
void hung_up(error_code const& e); | void hung_up(error_code const& e); | |||
void drain_queue(); | void drain_queue(); | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
version.hpp | version.hpp | |||
---|---|---|---|---|
skipping to change at line 38 | skipping to change at line 38 | |||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | |||
POSSIBILITY OF SUCH DAMAGE. | POSSIBILITY OF SUCH DAMAGE. | |||
*/ | */ | |||
#ifndef TORRENT_VERSION_HPP_INCLUDED | #ifndef TORRENT_VERSION_HPP_INCLUDED | |||
#define TORRENT_VERSION_HPP_INCLUDED | #define TORRENT_VERSION_HPP_INCLUDED | |||
#define LIBTORRENT_VERSION_MAJOR 0 | #define LIBTORRENT_VERSION_MAJOR 0 | |||
#define LIBTORRENT_VERSION_MINOR 16 | #define LIBTORRENT_VERSION_MINOR 16 | |||
#define LIBTORRENT_VERSION_TINY 17 | #define LIBTORRENT_VERSION_TINY 18 | |||
// the format of this version is: MMmmtt | // the format of this version is: MMmmtt | |||
// M = Major version, m = minor version, t = tiny version | // M = Major version, m = minor version, t = tiny version | |||
#define LIBTORRENT_VERSION_NUM ((LIBTORRENT_VERSION_MAJOR * 10000) + (LIBTO RRENT_VERSION_MINOR * 100) + LIBTORRENT_VERSION_TINY) | #define LIBTORRENT_VERSION_NUM ((LIBTORRENT_VERSION_MAJOR * 10000) + (LIBTO RRENT_VERSION_MINOR * 100) + LIBTORRENT_VERSION_TINY) | |||
#define LIBTORRENT_VERSION "0.16.17.0" | #define LIBTORRENT_VERSION "0.16.18.0" | |||
#define LIBTORRENT_REVISION "$Rev: 10007 $" | #define LIBTORRENT_REVISION "$Rev: 10283 $" | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||