| bt_peer_connection.hpp | | bt_peer_connection.hpp | |
| | | | |
| skipping to change at line 107 | | skipping to change at line 107 | |
| // with this constructor we have been contacted and we still
don't | | // with this constructor we have been contacted and we still
don't | |
| // know which torrent the connection belongs to | | // know which torrent the connection belongs to | |
| bt_peer_connection( | | bt_peer_connection( | |
| aux::session_impl& ses | | aux::session_impl& ses | |
| , boost::shared_ptr<socket_type> s | | , boost::shared_ptr<socket_type> s | |
| , tcp::endpoint const& remote | | , tcp::endpoint const& remote | |
| , policy::peer* peerinfo); | | , policy::peer* peerinfo); | |
| | | | |
| void start(); | | void start(); | |
| | | | |
|
| enum { upload_only_msg = 2 }; | | enum { | |
| | | upload_only_msg = 2, | |
| | | dont_have_msg = 5 | |
| | | }; | |
| | | | |
| ~bt_peer_connection(); | | ~bt_peer_connection(); | |
| | | | |
| #ifndef TORRENT_DISABLE_ENCRYPTION | | #ifndef TORRENT_DISABLE_ENCRYPTION | |
| bool supports_encryption() const | | bool supports_encryption() const | |
| { return m_encrypted; } | | { return m_encrypted; } | |
| #endif | | #endif | |
| | | | |
| enum message_type | | enum message_type | |
| { | | { | |
| | | | |
| skipping to change at line 375 | | skipping to change at line 378 | |
| }; | | }; | |
| static bool range_below_zero(const range& r) | | static bool range_below_zero(const range& r) | |
| { return r.start < 0; } | | { return r.start < 0; } | |
| std::vector<range> m_payloads; | | std::vector<range> m_payloads; | |
| | | | |
| #ifndef TORRENT_DISABLE_EXTENSIONS | | #ifndef TORRENT_DISABLE_EXTENSIONS | |
| // the message ID for upload only message | | // the message ID for upload only message | |
| // 0 if not supported | | // 0 if not supported | |
| int m_upload_only_id; | | int m_upload_only_id; | |
| | | | |
|
| | | // the message ID for don't-have message | |
| | | boost::uint8_t m_dont_have_id; | |
| | | | |
| char m_reserved_bits[8]; | | char m_reserved_bits[8]; | |
| // this is set to true if the handshake from | | // this is set to true if the handshake from | |
| // the peer indicated that it supports the | | // the peer indicated that it supports the | |
| // extension protocol | | // extension protocol | |
| bool m_supports_extensions:1; | | bool m_supports_extensions:1; | |
| #endif | | #endif | |
| bool m_supports_dht_port:1; | | bool m_supports_dht_port:1; | |
| bool m_supports_fast:1; | | bool m_supports_fast:1; | |
| | | | |
| #ifndef TORRENT_DISABLE_ENCRYPTION | | #ifndef TORRENT_DISABLE_ENCRYPTION | |
| | | | |
End of changes. 2 change blocks. |
| 1 lines changed or deleted | | 7 lines changed or added | |
|
| config.hpp | | config.hpp | |
| | | | |
| skipping to change at line 39 | | skipping to change at line 39 | |
| POSSIBILITY OF SUCH DAMAGE. | | POSSIBILITY OF SUCH DAMAGE. | |
| | | | |
| */ | | */ | |
| | | | |
| #ifndef TORRENT_CONFIG_HPP_INCLUDED | | #ifndef TORRENT_CONFIG_HPP_INCLUDED | |
| #define TORRENT_CONFIG_HPP_INCLUDED | | #define TORRENT_CONFIG_HPP_INCLUDED | |
| | | | |
| #include <boost/config.hpp> | | #include <boost/config.hpp> | |
| #include <boost/version.hpp> | | #include <boost/version.hpp> | |
| #include <stdio.h> // for snprintf | | #include <stdio.h> // for snprintf | |
|
| | | #include <limits.h> // for IOV_MAX | |
| | | | |
| #ifndef WIN32 | | #ifndef WIN32 | |
| #define __STDC_FORMAT_MACROS | | #define __STDC_FORMAT_MACROS | |
| #include <inttypes.h> | | #include <inttypes.h> | |
| #endif | | #endif | |
| | | | |
| #ifndef PRId64 | | #ifndef PRId64 | |
| // MinGW uses microsofts runtime | | // MinGW uses microsofts runtime | |
| #if defined _MSC_VER || defined __MINGW32__ | | #if defined _MSC_VER || defined __MINGW32__ | |
| #define PRId64 "I64d" | | #define PRId64 "I64d" | |
| | | | |
| skipping to change at line 158 | | skipping to change at line 159 | |
| #else | | #else | |
| #define TORRENT_USE_RLIMIT 0 | | #define TORRENT_USE_RLIMIT 0 | |
| #endif | | #endif | |
| | | | |
| #ifndef TORRENT_HAS_FALLOCATE | | #ifndef TORRENT_HAS_FALLOCATE | |
| #define TORRENT_HAS_FALLOCATE 1 | | #define TORRENT_HAS_FALLOCATE 1 | |
| #endif | | #endif | |
| | | | |
| // should wpath or path be used? | | // should wpath or path be used? | |
| #if defined UNICODE && !defined BOOST_FILESYSTEM_NARROW_ONLY \ | | #if defined UNICODE && !defined BOOST_FILESYSTEM_NARROW_ONLY \ | |
|
| && BOOST_VERSION >= 103400 && !defined __APPLE__ && !defined TORRENT | | && BOOST_VERSION >= 103400 && !defined __APPLE__ \ | |
| _MINGW | | && !defined TORRENT_MINGW \ | |
| | | && !defined TORRENT_SOLARIS | |
| #define TORRENT_USE_WPATH 1 | | #define TORRENT_USE_WPATH 1 | |
| #else | | #else | |
| #define TORRENT_USE_WPATH 0 | | #define TORRENT_USE_WPATH 0 | |
| #endif | | #endif | |
| | | | |
| // set this to 1 to disable all floating point operations | | // set this to 1 to disable all floating point operations | |
| // (disables some float-dependent APIs) | | // (disables some float-dependent APIs) | |
| #define TORRENT_NO_FPU 0 | | #define TORRENT_NO_FPU 0 | |
| | | | |
| // make sure NAME_MAX is defined | | // make sure NAME_MAX is defined | |
| | | | |
| skipping to change at line 213 | | skipping to change at line 216 | |
| #define TORRENT_UPNP_LOGGING | | #define TORRENT_UPNP_LOGGING | |
| #endif | | #endif | |
| | | | |
| #if !TORRENT_USE_WPATH && (defined TORRENT_LINUX || defined TORRENT_MINGW) | | #if !TORRENT_USE_WPATH && (defined TORRENT_LINUX || defined TORRENT_MINGW) | |
| // libiconv presence, not implemented yet | | // libiconv presence, not implemented yet | |
| #define TORRENT_USE_LOCALE_FILENAMES 1 | | #define TORRENT_USE_LOCALE_FILENAMES 1 | |
| #else | | #else | |
| #define TORRENT_USE_LOCALE_FILENAMES 0 | | #define TORRENT_USE_LOCALE_FILENAMES 0 | |
| #endif | | #endif | |
| | | | |
|
| | | #if !defined TORRENT_IOV_MAX | |
| | | #ifdef IOV_MAX | |
| | | #define TORRENT_IOV_MAX IOV_MAX | |
| | | #else | |
| | | #define TORRENT_IOV_MAX INT_MAX | |
| | | #endif | |
| | | #endif | |
| | | | |
| #if !defined(TORRENT_READ_HANDLER_MAX_SIZE) | | #if !defined(TORRENT_READ_HANDLER_MAX_SIZE) | |
| # define TORRENT_READ_HANDLER_MAX_SIZE 256 | | # define TORRENT_READ_HANDLER_MAX_SIZE 256 | |
| #endif | | #endif | |
| | | | |
| #if !defined(TORRENT_WRITE_HANDLER_MAX_SIZE) | | #if !defined(TORRENT_WRITE_HANDLER_MAX_SIZE) | |
| # define TORRENT_WRITE_HANDLER_MAX_SIZE 256 | | # define TORRENT_WRITE_HANDLER_MAX_SIZE 256 | |
| #endif | | #endif | |
| | | | |
| #ifndef TORRENT_ICONV_ARG | | #ifndef TORRENT_ICONV_ARG | |
| #define TORRENT_ICONV_ARG (char**) | | #define TORRENT_ICONV_ARG (char**) | |
| | | | |
End of changes. 3 change blocks. |
| 2 lines changed or deleted | | 12 lines changed or added | |
|
| extensions.hpp | | extensions.hpp | |
| | | | |
| skipping to change at line 134 | | skipping to change at line 134 | |
| | | | |
| virtual bool on_interested() | | virtual bool on_interested() | |
| { return false; } | | { return false; } | |
| | | | |
| virtual bool on_not_interested() | | virtual bool on_not_interested() | |
| { return false; } | | { return false; } | |
| | | | |
| virtual bool on_have(int index) | | virtual bool on_have(int index) | |
| { return false; } | | { return false; } | |
| | | | |
|
| | | virtual bool on_dont_have(int index) | |
| | | { return false; } | |
| | | | |
| virtual bool on_bitfield(bitfield const& bitfield) | | virtual bool on_bitfield(bitfield const& bitfield) | |
| { return false; } | | { return false; } | |
| | | | |
| virtual bool on_have_all() | | virtual bool on_have_all() | |
| { return false; } | | { return false; } | |
| | | | |
| virtual bool on_have_none() | | virtual bool on_have_none() | |
| { return false; } | | { return false; } | |
| | | | |
| virtual bool on_allowed_fast(int index) | | virtual bool on_allowed_fast(int index) | |
| | | | |
End of changes. 1 change blocks. |
| 0 lines changed or deleted | | 3 lines changed or added | |
|
| peer_connection.hpp | | peer_connection.hpp | |
| | | | |
| skipping to change at line 416 | | skipping to change at line 416 | |
| // received, then it will no longer | | // received, then it will no longer | |
| // be called. i.e. most handlers need | | // be called. i.e. most handlers need | |
| // to check how much of the packet they | | // to check how much of the packet they | |
| // have received before any processing | | // have received before any processing | |
| void incoming_keepalive(); | | void incoming_keepalive(); | |
| void incoming_choke(); | | void incoming_choke(); | |
| void incoming_unchoke(); | | void incoming_unchoke(); | |
| void incoming_interested(); | | void incoming_interested(); | |
| void incoming_not_interested(); | | void incoming_not_interested(); | |
| void incoming_have(int piece_index); | | void incoming_have(int piece_index); | |
|
| | | void incoming_dont_have(int piece_index); | |
| void incoming_bitfield(bitfield const& bits); | | void incoming_bitfield(bitfield const& bits); | |
| void incoming_request(peer_request const& r); | | void incoming_request(peer_request const& r); | |
| void incoming_piece(peer_request const& p, disk_buffer_holde
r& data); | | void incoming_piece(peer_request const& p, disk_buffer_holde
r& data); | |
| void incoming_piece(peer_request const& p, char const* data)
; | | void incoming_piece(peer_request const& p, char const* data)
; | |
| void incoming_piece_fragment(int bytes); | | void incoming_piece_fragment(int bytes); | |
| void start_receive_piece(peer_request const& r); | | void start_receive_piece(peer_request const& r); | |
| void incoming_cancel(peer_request const& r); | | void incoming_cancel(peer_request const& r); | |
| | | | |
| void incoming_dht_port(int listen_port); | | void incoming_dht_port(int listen_port); | |
| | | | |
| | | | |
End of changes. 1 change blocks. |
| 0 lines changed or deleted | | 1 lines changed or added | |
|
| session_impl.hpp | | session_impl.hpp | |
| | | | |
| skipping to change at line 318 | | skipping to change at line 318 | |
| { return m_peer_proxy; } | | { return m_peer_proxy; } | |
| proxy_settings const& web_seed_proxy() const | | proxy_settings const& web_seed_proxy() const | |
| { return m_web_seed_proxy; } | | { return m_web_seed_proxy; } | |
| proxy_settings const& tracker_proxy() const | | proxy_settings const& tracker_proxy() const | |
| { return m_tracker_proxy; } | | { return m_tracker_proxy; } | |
| | | | |
| #ifndef TORRENT_DISABLE_DHT | | #ifndef TORRENT_DISABLE_DHT | |
| void set_dht_proxy(proxy_settings const& s) | | void set_dht_proxy(proxy_settings const& s) | |
| { | | { | |
| m_dht_proxy = s; | | m_dht_proxy = s; | |
|
| m_dht_socket.set_proxy_settings(s); | | m_dht_socket->set_proxy_settings(s); | |
| } | | } | |
| proxy_settings const& dht_proxy() const | | proxy_settings const& dht_proxy() const | |
| { return m_dht_proxy; } | | { return m_dht_proxy; } | |
| #endif | | #endif | |
| | | | |
| #ifndef TORRENT_DISABLE_GEO_IP | | #ifndef TORRENT_DISABLE_GEO_IP | |
| std::string as_name_for_ip(address const& a); | | std::string as_name_for_ip(address const& a); | |
| int as_for_ip(address const& a); | | int as_for_ip(address const& a); | |
| std::pair<const int, int>* lookup_as(int as); | | std::pair<const int, int>* lookup_as(int as); | |
| bool load_asnum_db(char const* file); | | bool load_asnum_db(char const* file); | |
| | | | |
| skipping to change at line 666 | | skipping to change at line 666 | |
| // if this is set to true, the dht listen port | | // if this is set to true, the dht listen port | |
| // will be set to the same as the tcp listen port | | // will be set to the same as the tcp listen port | |
| // and will be synchronlized with it as it changes | | // and will be synchronlized with it as it changes | |
| // it defaults to true | | // it defaults to true | |
| bool m_dht_same_port; | | bool m_dht_same_port; | |
| | | | |
| // see m_external_listen_port. This is the same | | // see m_external_listen_port. This is the same | |
| // but for the udp port used by the DHT. | | // but for the udp port used by the DHT. | |
| int m_external_udp_port; | | int m_external_udp_port; | |
| | | | |
|
| rate_limited_udp_socket m_dht_socket; | | boost::intrusive_ptr<rate_limited_udp_socket> m_dht_
socket; | |
| | | | |
| // these are used when starting the DHT | | // these are used when starting the DHT | |
| // (and bootstrapping it), and then erased | | // (and bootstrapping it), and then erased | |
| std::list<udp::endpoint> m_dht_router_nodes; | | std::list<udp::endpoint> m_dht_router_nodes; | |
| | | | |
| void on_receive_udp(error_code const& e | | void on_receive_udp(error_code const& e | |
| , udp::endpoint const& ep, char const* buf,
int len); | | , udp::endpoint const& ep, char const* buf,
int len); | |
| #endif | | #endif | |
| | | | |
| #ifndef TORRENT_DISABLE_ENCRYPTION | | #ifndef TORRENT_DISABLE_ENCRYPTION | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 2 lines changed or added | |
|
| torrent.hpp | | torrent.hpp | |
| | | | |
| skipping to change at line 284 | | skipping to change at line 284 | |
| void prioritize_pieces(std::vector<int> const& pieces); | | void prioritize_pieces(std::vector<int> const& pieces); | |
| void piece_priorities(std::vector<int>&) const; | | void piece_priorities(std::vector<int>&) const; | |
| | | | |
| void set_file_priority(int index, int priority); | | void set_file_priority(int index, int priority); | |
| int file_priority(int index) const; | | int file_priority(int index) const; | |
| | | | |
| void prioritize_files(std::vector<int> const& files); | | void prioritize_files(std::vector<int> const& files); | |
| void file_priorities(std::vector<int>&) const; | | void file_priorities(std::vector<int>&) const; | |
| | | | |
| void set_piece_deadline(int piece, int t, int flags); | | void set_piece_deadline(int piece, int t, int flags); | |
|
| | | void reset_piece_deadline(int piece); | |
| void update_piece_priorities(); | | void update_piece_priorities(); | |
| | | | |
| torrent_status status() const; | | torrent_status status() const; | |
| | | | |
| void file_progress(std::vector<size_type>& fp, int flags = 0
) const; | | void file_progress(std::vector<size_type>& fp, int flags = 0
) const; | |
| | | | |
| void use_interface(const char* net_interface); | | void use_interface(const char* net_interface); | |
| tcp::endpoint const& get_interface() const { return m_net_in
terface; } | | tcp::endpoint const& get_interface() const { return m_net_in
terface; } | |
| | | | |
| void connect_to_url_seed(web_seed_entry const& url); | | void connect_to_url_seed(web_seed_entry const& url); | |
| | | | |
End of changes. 1 change blocks. |
| 0 lines changed or deleted | | 1 lines changed or added | |
|
| torrent_handle.hpp | | torrent_handle.hpp | |
| | | | |
| skipping to change at line 399 | | skipping to change at line 399 | |
| void add_piece(int piece, char const* data, int flags = 0) c
onst; | | void add_piece(int piece, char const* data, int flags = 0) c
onst; | |
| void read_piece(int piece) const; | | void read_piece(int piece) const; | |
| | | | |
| void get_full_peer_list(std::vector<peer_list_entry>& v) con
st; | | void get_full_peer_list(std::vector<peer_list_entry>& v) con
st; | |
| void get_peer_info(std::vector<peer_info>& v) const; | | void get_peer_info(std::vector<peer_info>& v) const; | |
| torrent_status status() const; | | torrent_status status() const; | |
| void get_download_queue(std::vector<partial_piece_info>& que
ue) const; | | void get_download_queue(std::vector<partial_piece_info>& que
ue) const; | |
| | | | |
| enum deadline_flags { alert_when_available = 1 }; | | enum deadline_flags { alert_when_available = 1 }; | |
| void set_piece_deadline(int index, int deadline, int flags =
0) const; | | void set_piece_deadline(int index, int deadline, int flags =
0) const; | |
|
| | | void reset_piece_deadline(int index) const; | |
| | | | |
| void set_priority(int prio) const; | | void set_priority(int prio) const; | |
| | | | |
| #ifndef TORRENT_NO_DEPRECATE | | #ifndef TORRENT_NO_DEPRECATE | |
| #if !TORRENT_NO_FPU | | #if !TORRENT_NO_FPU | |
| // fills the specified vector with the download progress [0,
1] | | // fills the specified vector with the download progress [0,
1] | |
| // of each file in the torrent. The files are ordered as in | | // of each file in the torrent. The files are ordered as in | |
| // the torrent_info. | | // the torrent_info. | |
| TORRENT_DEPRECATED_PREFIX | | TORRENT_DEPRECATED_PREFIX | |
| void file_progress(std::vector<float>& progress) const TORRE
NT_DEPRECATED; | | void file_progress(std::vector<float>& progress) const TORRE
NT_DEPRECATED; | |
| | | | |
End of changes. 1 change blocks. |
| 0 lines changed or deleted | | 1 lines changed or added | |
|
| udp_socket.hpp | | udp_socket.hpp | |
| | | | |
| skipping to change at line 39 | | skipping to change at line 39 | |
| POSSIBILITY OF SUCH DAMAGE. | | POSSIBILITY OF SUCH DAMAGE. | |
| | | | |
| */ | | */ | |
| | | | |
| #ifndef TORRENT_UDP_SOCKET_HPP_INCLUDED | | #ifndef TORRENT_UDP_SOCKET_HPP_INCLUDED | |
| #define TORRENT_UDP_SOCKET_HPP_INCLUDED | | #define TORRENT_UDP_SOCKET_HPP_INCLUDED | |
| | | | |
| #include "libtorrent/socket.hpp" | | #include "libtorrent/socket.hpp" | |
| #include "libtorrent/session_settings.hpp" | | #include "libtorrent/session_settings.hpp" | |
| #include "libtorrent/buffer.hpp" | | #include "libtorrent/buffer.hpp" | |
|
| | | #include "libtorrent/intrusive_ptr_base.hpp" | |
| | | | |
| #include <deque> | | #include <deque> | |
| #include <boost/function.hpp> | | #include <boost/function.hpp> | |
| #include <boost/thread/mutex.hpp> | | #include <boost/thread/mutex.hpp> | |
| | | | |
| namespace libtorrent | | namespace libtorrent | |
| { | | { | |
| class connection_queue; | | class connection_queue; | |
| | | | |
|
| class udp_socket | | class udp_socket : public intrusive_ptr_base<udp_socket> | |
| { | | { | |
| public: | | public: | |
| typedef boost::function<void(error_code const& ec | | typedef boost::function<void(error_code const& ec | |
| , udp::endpoint const&, char const* buf, int size)>
callback_t; | | , udp::endpoint const&, char const* buf, int size)>
callback_t; | |
| | | | |
| udp_socket(io_service& ios, callback_t const& c, connection_
queue& cc); | | udp_socket(io_service& ios, callback_t const& c, connection_
queue& cc); | |
|
| ~udp_socket(); | | virtual ~udp_socket(); | |
| | | | |
| bool is_open() const | | bool is_open() const | |
| { | | { | |
| return m_ipv4_sock.is_open() | | return m_ipv4_sock.is_open() | |
| #if TORRENT_USE_IPV6 | | #if TORRENT_USE_IPV6 | |
| || m_ipv6_sock.is_open() | | || m_ipv6_sock.is_open() | |
| #endif | | #endif | |
| ; | | ; | |
| } | | } | |
| io_service& get_io_service() { return m_ipv4_sock.get_io_ser
vice(); } | | io_service& get_io_service() { return m_ipv4_sock.get_io_ser
vice(); } | |
| | | | |
End of changes. 3 change blocks. |
| 2 lines changed or deleted | | 3 lines changed or added | |
|
| udp_tracker_connection.hpp | | udp_tracker_connection.hpp | |
| | | | |
| skipping to change at line 115 | | skipping to change at line 115 | |
| | | | |
| void send_udp_connect(); | | void send_udp_connect(); | |
| void send_udp_announce(); | | void send_udp_announce(); | |
| void send_udp_scrape(); | | void send_udp_scrape(); | |
| | | | |
| virtual void on_timeout(error_code const& ec); | | virtual void on_timeout(error_code const& ec); | |
| | | | |
| tracker_manager& m_man; | | tracker_manager& m_man; | |
| | | | |
| udp::resolver m_name_lookup; | | udp::resolver m_name_lookup; | |
|
| udp_socket m_socket; | | boost::intrusive_ptr<udp_socket> m_socket; | |
| udp::endpoint m_target; | | udp::endpoint m_target; | |
| std::list<udp::endpoint> m_endpoints; | | std::list<udp::endpoint> m_endpoints; | |
| | | | |
| int m_transaction_id; | | int m_transaction_id; | |
| aux::session_impl const& m_ses; | | aux::session_impl const& m_ses; | |
| int m_attempts; | | int m_attempts; | |
| | | | |
| struct connection_cache_entry | | struct connection_cache_entry | |
| { | | { | |
| boost::int64_t connection_id; | | boost::int64_t connection_id; | |
| | | | |
End of changes. 1 change blocks. |
| 1 lines changed or deleted | | 1 lines changed or added | |
|
| variant_stream.hpp | | variant_stream.hpp | |
| | | | |
| skipping to change at line 772 | | skipping to change at line 772 | |
| ); | | ); | |
| } | | } | |
| | | | |
| io_service& get_io_service() | | io_service& get_io_service() | |
| { | | { | |
| return m_io_service; | | return m_io_service; | |
| } | | } | |
| | | | |
| lowest_layer_type& lowest_layer() | | lowest_layer_type& lowest_layer() | |
| { | | { | |
|
| TORRENT_ASSERT(instantiated()); | | // this is called by the ssl_socket to get the io_service, which | |
| | | // is ok even when it's not instantiated | |
| | | // TORRENT_ASSERT(instantiated()); | |
| return boost::apply_visitor( | | return boost::apply_visitor( | |
| aux::lowest_layer_visitor<lowest_layer_type>(), m_variant | | aux::lowest_layer_visitor<lowest_layer_type>(), m_variant | |
| ); | | ); | |
| } | | } | |
| | | | |
| private: | | private: | |
| io_service& m_io_service; | | io_service& m_io_service; | |
| variant_type m_variant; | | variant_type m_variant; | |
| }; | | }; | |
| | | | |
| | | | |
End of changes. 1 change blocks. |
| 1 lines changed or deleted | | 3 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 15 | | #define LIBTORRENT_VERSION_MINOR 15 | |
|
| #define LIBTORRENT_VERSION_TINY 7 | | #define LIBTORRENT_VERSION_TINY 8 | |
| | | | |
|
| #define LIBTORRENT_VERSION "0.15.7.0" | | #define LIBTORRENT_VERSION "0.15.8.0" | |
| #define LIBTORRENT_REVISION "$Rev: 5839 $" | | #define LIBTORRENT_REVISION "$Rev: 6001 $" | |
| | | | |
| #endif | | #endif | |
| | | | |
End of changes. 2 change blocks. |
| 3 lines changed or deleted | | 3 lines changed or added | |
|