Commit Graph

264 Commits

Author SHA1 Message Date
Arvid Norberg 7bbfb3bd4b added a userdata parameter to add_torrent that is passed in to plugins 2007-09-14 00:11:33 +00:00
Arvid Norberg 57a76f9db6 fixed debug assert on linux 2007-09-10 06:12:41 +00:00
Arvid Norberg ee5ce50502 made max half open connections default to 8 on windows and added query function for that limit on session. 2007-09-10 01:57:40 +00:00
Arvid Norberg c8088459a0 made torrent_info reference counted and held by a boost::intrusive_ptr 2007-09-01 03:00:31 +00:00
Arvid Norberg 744d96796b made it possible to start torrents in paused state. updated documentation 2007-08-22 05:31:42 +00:00
Arvid Norberg 4ac1ac8a1f removed allocate_resources. switched to a global unchoker and connection distribution 2007-08-16 12:41:46 +00:00
Arvid Norberg 3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +00:00
Arvid Norberg 6447a074eb fixes to allow-multiple-connections-per-ip and a unit test that run a swarm of 3 local peers 2007-06-08 23:02:31 +00:00
Arvid Norberg 273f8bd921 merged back encryption branch to trunk 2007-06-06 00:41:20 +00:00
Arvid Norberg d0412a2244 added port filter for outgoing connections 2007-06-01 01:05:57 +00:00
Arvid Norberg 31247c046a supports turning on and off upnp, natpmp and lsd. All ofthem are now off by default 2007-05-31 00:21:54 +00:00
Arvid Norberg 49bd69cad4 introduced a proper half open TCP connection limit. Also exposed the connection queue to let clients use the same connection limiter as libtorrent. UPnP connections and tracker connection are now also limited as well as peer connections and web seeds 2007-05-05 00:29:33 +00:00
Arvid Norberg 00948e9fc4 first attempt to implement SOCKS5 and proper HTTP proxy support. fixes #22 2007-04-25 18:26:35 +00:00
Arvid Norberg 094dc1065c some boost 1.34 preprocessor conditions and fixed assert in piece_picker 2007-04-23 17:14:40 +00:00
Arvid Norberg d88ffcc0e4 removed some more unecessary boost.date_time dependencies 2007-04-10 07:52:58 +00:00
Arvid Norberg 8957b64c04 prepared for precompiled headers support. fixed issue where storage didn't lock the session properly. fixed typo in natpmp.cpp 2007-03-17 17:15:16 +00:00
Arvid Norberg 029953c5ae made the storage into a customization point. it is now interchangable for a custom implementation 2007-03-16 05:29:23 +00:00
Daniel Wallin 39b977973f Added accessor functions for upload_rate_limit and download_rate_limit 2007-01-01 23:51:24 +00:00
Arvid Norberg 0f3874028b added btgdaemon to identify client and applied wojci's patch to add num_connections() and num_uploads() to session 2007-01-01 21:04:30 +00:00
Arvid Norberg d58c6d2e31 fixed so that both session constructors initializes boost.filesystem. Fixed the case where the file check throws exceptions, the torrent is no longer removed, but paused 2006-12-30 23:02:21 +00:00
Arvid Norberg e35fc5c4be refactored extensions and added a plugin interface. fixed file.cpp for windows 2006-11-14 00:08:16 +00:00
Arvid Norberg c8fbd5db21 split session and session_impl into separate compilation units 2006-10-11 20:57:54 +00:00
Arvid Norberg f0519e86e8 separated session from session_impl and made a real pimpl-class of it. Introduced the possibility to destruct the sessions async. 2006-10-11 14:02:21 +00:00
Arvid Norberg 910733f29e added proper support for dht router nodes (which are automatically used to bootstrap from, and won't get added to the routing table) 2006-09-27 17:20:18 +00:00
Arvid Norberg 80dc56d388 fixed crashing bug when removing torrents while checking 2006-09-24 11:22:25 +00:00
Arvid Norberg a42189af62 removed out dated comments 2006-09-23 21:23:24 +00:00
Arvid Norberg dc2e25141c changed sequencial download threshold api, it is now per torrent 2006-09-04 23:22:21 +00:00
Arvid Norberg 191fd76b42 made sequenced_download_threshold a per torrent setting. Updated the project page layout. Removed incorrect invariant checks in piece picker. 2006-09-04 17:17:45 +00:00
Arvid Norberg 7bc1214749 fixed strange User-Agent encoding in HTTP requests. Fixed bug in sequenced_download_threshold code 2006-09-03 22:59:54 +00:00
Arvid Norberg bdf1bbc8f4 changed the file format for storing the DHT routing table to support IPv6. Changed the address used to be IPv4-IPv6 independent (ip_filter still onlt works with IPv4). Added default boost-build features to the building documentation. Completed the jamfile's support for building without DHT support. Updated documentation with these changes. 2006-09-01 03:06:00 +00:00
Arvid Norberg b1411fcdf7 the DHT can now change listen port runtime, and the same listen interface will be used for the DHT as is used for the torrent listen port. The DHT buckets are refreshed slightly more evenly distributed over time. 2006-08-30 00:09:58 +00:00
Arvid Norberg d0a38c50c6 fixed crash bug occuring when removing a torrent while it announces on the DHT. Fixed the mainloop not to quit when an uncought exception is thrown. 2006-08-29 01:15:24 +00:00
Arvid Norberg 4f2d147e07 the dht node will now add nodes who sends announce_peer with correct write token. Fixed bug in session where nodes from a .torrent were added to the node even though if it wasn't running. 2006-08-06 18:42:04 +00:00
Arvid Norberg 5ef57265bf first version with DHT support. Limited pipelining used by url-seeds. Fixed one configuration problem on FreeBSD. 2006-08-01 15:27:08 +00:00
Arvid Norberg eef4ffa18c preliminary http proxy support for web seeds, bumped version number 2006-07-27 18:07:51 +00:00
Arvid Norberg 00df2b5bc3 added build notes for vs.net 2005, removed old code from ip_filter.cpp, fixed problem where the stats could become incorrect in case of very high cpu load, added asserts in storage::read() to make sure one is not trying to read out of bounds. 2006-07-26 10:21:25 +00:00
Arvid Norberg 3763b600e4 added integer version defines, fixed a bug which appeared when session was closing, removed an old member function declaration from torrent_handle 2006-07-18 16:29:35 +00:00
Arvid Norberg 8d31bf442a fixed incorrect sorting of pieces in piece_picker 2006-07-16 00:08:50 +00:00
Arvid Norberg 8c6869b4f2 fixed the issue with the timer waiting for tracker requests when quitting, reported by Tianhao Qiu 2006-07-12 22:55:06 +00:00
Arvid Norberg d3ba5edd6d fixed a long standing (quite rare) bug, thanks to Massaroddel. Made the tests clean up their temporary files. 2006-06-24 22:30:59 +00:00
Arvid Norberg 94628fa78d fixed race condition in peer_connection, fixed assert in torrent destructor, updated tests 2006-05-28 19:03:54 +00:00
Arvid Norberg e6bb265d94 replaced http_settings with session_settings and introduced more settings 2006-05-20 23:24:19 +00:00
Arvid Norberg 262e97f21d updated to latest version of asio. fixed a problem with low resolution timers in the second_tick code found by Massaroddel. 2006-05-20 15:30:40 +00:00
Arvid Norberg 3cac133e51 fixed typo that made debug code to be called in release mode (caused a compile error) 2006-05-15 21:19:19 +00:00
Arvid Norberg 0b529e8f96 added a setting for max outstanding requests, and a limit for BitComet since it's known to have a very low limit, also added an extension header to specify it. Fixed another unnecessary delay spotted by Tianhao Qiu. Cleaned up the logging class a bit. Fixed a bug that would cause an assert when removing a torrent queued for checking. 2006-05-14 22:30:05 +00:00
Arvid Norberg 73b1c5c9b8 cleaned up comments, added some asserts, added setup_send() as proposed by Tianhao Qiu to speed up connection attempts 2006-05-01 23:34:37 +00:00
Arvid Norberg d63ceac56c fixed a bug in client_test. fixed some problems related to the previous buffer bug fix. all tests pass now. 2006-04-30 10:28:45 +00:00
Arvid Norberg 41810b1166 merged back the asio development branch 2006-04-25 21:04:48 +00:00
Arvid Norberg e810ebaf1f fixed some bind-statements to build on vc7 2006-01-06 21:36:17 +00:00
Arvid Norberg 564ae78012 fixed bug caused when sockets were bound to non-local interface 2006-01-06 20:20:20 +00:00
Arvid Norberg 477d5ec238 merged in differences from release branch 2005-11-18 01:12:21 +00:00
Arvid Norberg d4f85cb8e2 more asserts in order to catch an error I can't reproduce 2005-11-09 12:40:07 +00:00
Arvid Norberg 7d5285610c wrapped a line that was too long 2005-11-08 00:55:33 +00:00
Arvid Norberg 75dafc5d1b peers that throw in the connection attempt are now removed from the policy's list. added more asserts to session. disabled SIGPIPE on darwin 2005-11-07 02:18:39 +00:00
Arvid Norberg b065130762 fixed calls to process_connection_queue() that were missing 2005-11-05 16:03:16 +00:00
Arvid Norberg 8c281cdb17 fixed bug found by Massaroddel. Some code was accidentily put inside a condition depending on the alert level 2005-11-05 11:37:51 +00:00
Arvid Norberg 822ac4a283 fixed some bugs in session.cpp where it removed peers from the selector prematurely. made the num_peers in the torrent_status only count connected peers, and updated the docs accordingly 2005-11-05 10:56:47 +00:00
Arvid Norberg ec7eb0ebd6 more asserts in peer_connection 2005-11-04 00:14:55 +00:00
Arvid Norberg c71a5a9435 makes it build with logging 2005-11-02 20:59:36 +00:00
Arvid Norberg 3f38e4c38d removed debug output that was left in by mistake in last check in 2005-11-02 19:11:30 +00:00
Arvid Norberg bcbe165aee added the ability to limit the number of half-open tcp connections 2005-11-02 16:28:39 +00:00
Arvid Norberg d3996ccfb9 added metadata_failed_alert and allcoating torrent state 2005-10-17 13:45:53 +00:00
Arvid Norberg 6db55b87ab fixed problem when aborting checking torrents 2005-10-16 21:14:08 +00:00
Arvid Norberg f63702c964 optimized session::add_torrent() by putting more info in torrent_info, to make it possible to reproduce the exact info section from an torrent_info object. The result is that the .torrent file is only parsed once. 2005-10-16 16:58:41 +00:00
Arvid Norberg f770d1438d fixed bug introduced in latest storage changes (triggered when using metadata extension). improved commandline switches to client_test 2005-10-16 09:15:46 +00:00
Arvid Norberg 032f4c715b *** empty log message *** 2005-10-15 23:16:39 +00:00
Arvid Norberg 189a8756ee big change in the way storage is checked. The checker thread can now check the fastresume data of a new torrent without waiting for a currently checking one 2005-10-13 07:59:05 +00:00
Arvid Norberg 82c0ca5675 Changed the way libtorrent find out if a peer supports its extensions to make it compatible with Mainline beta. 2005-09-18 10:18:23 +00:00
Arvid Norberg a15f589341 fixed problem in piece_picker with filtered files, also optimzed it somewhat. Added more logging and added one test to the piece_picker test 2005-09-01 21:04:21 +00:00
Arvid Norberg 52e9eadb4e rollback 2005-08-25 13:11:39 +00:00
spyhole 67527bec0b rename http_settings class as http_proxy class 2005-08-24 23:08:26 +00:00
Arvid Norberg 1934171431 bugfixes, fixes for boost 1.33, made the piece picker pick whole pieces from fast peers 2005-08-14 22:04:58 +00:00
Arvid Norberg 300e839fab *** empty log message *** 2005-07-16 00:56:50 +00:00
Arvid Norberg 080da58903 *** empty log message *** 2005-07-10 10:42:00 +00:00
Arvid Norberg e003bb8ad5 added ip filters and fixed torrent_info::create_torrent() 2005-07-06 00:58:23 +00:00
Arvid Norberg aa57fde0db *** empty log message *** 2005-07-04 16:27:14 +00:00
Arvid Norberg 9a92b08be0 *** empty log message *** 2005-06-20 22:54:17 +00:00
Arvid Norberg a59a3e62f7 *** empty log message *** 2005-06-20 21:30:39 +00:00
Arvid Norberg 0320e097d6 *** empty log message *** 2005-06-16 15:41:04 +00:00
Arvid Norberg cf8d7beb23 *** empty log message *** 2005-06-13 10:58:00 +00:00
Arvid Norberg 2d4c01ec65 *** empty log message *** 2005-06-06 10:33:44 +00:00
Arvid Norberg fbffae1981 *** empty log message *** 2005-05-30 17:43:03 +00:00
Arvid Norberg 2fabb2bf80 experimental support for filtering pieces (filter from downloading that is) 2005-05-25 10:01:01 +00:00
Arvid Norberg 9707b6aeb0 added support for non-compact storage layout. i.e. all the files are allocated on disk before downloading starts 2005-05-13 00:39:39 +00:00
Arvid Norberg 7814b03370 fixed issue with creating torrents with a single file in a directory and some security issues with paths in torrents 2005-05-11 23:03:12 +00:00
Arvid Norberg 1f87a19d1c *** empty log message *** 2005-04-24 00:50:52 +00:00
Arvid Norberg 5751af2e6a *** empty log message *** 2005-03-20 10:55:33 +00:00
Arvid Norberg 6ff7e76ab2 *** empty log message *** 2005-03-19 12:22:40 +00:00
Arvid Norberg a5c91f683a *** empty log message *** 2005-03-05 14:17:17 +00:00
Arvid Norberg 999754ee23 *** empty log message *** 2005-03-04 23:45:16 +00:00
Arvid Norberg d32f0ba755 fixed bug where tracker authentication was not sent to the tracker 2005-02-23 09:13:42 +00:00
Arvid Norberg 782a3cfdc6 added the ability to get scrape data from the tracker announce reply 2005-02-21 13:59:24 +00:00
Arvid Norberg 5a25be2825 *** empty log message *** 2005-01-08 21:12:19 +00:00
Arvid Norberg b55a1a6766 *** empty log message *** 2004-12-21 12:30:09 +00:00
Arvid Norberg bc774ff491 *** empty log message *** 2004-11-30 11:17:32 +00:00
Arvid Norberg 705e40fda6 *** empty log message *** 2004-11-21 10:49:02 +00:00
Arvid Norberg b29e378f22 *** empty log message *** 2004-11-18 22:33:50 +00:00
Arvid Norberg df281f81ae *** empty log message *** 2004-10-31 23:16:08 +00:00
Arvid Norberg a34130b446 *** empty log message *** 2004-10-29 13:21:09 +00:00
Arvid Norberg a326bc4391 *** empty log message *** 2004-10-18 10:46:55 +00:00