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

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/