Commit Graph

316 Commits

Author SHA1 Message Date
Arvid Norberg ecb538b4b2 added alert for torrent state changes. Fixes #360 2008-07-03 10:05:51 +00:00
Arvid Norberg 9c84908bb9 switched resume data parsing over to use lazy_bdecode. Improves memory allocation performance, especially noticable when heap allocations are expensive. Makes it more practical to run with malloc debug. Changed resume data interface to take a vector as opposed to a parsed structure 2008-06-30 23:14:31 +00:00
Arvid Norberg e1bedea35d fix warning in client_test 2008-06-30 08:45:44 +00:00
Arvid Norberg d396ab7b17 added pause and resume to the session. Fixes #349 2008-06-29 19:08:30 +00:00
Arvid Norberg 2ac5c13e6f introduced a stricter timeout on piece requests and snubbing. exposed some more data about this through the peer_info. Fixes #40 2008-06-29 09:50:42 +00:00
Arvid Norberg 2ee95f9143 exception changes to client_test 2008-06-29 05:34:22 +00:00
Arvid Norberg ca0f17ee95 won't save resume data for torrents without a complete state (checking or queued for checking torrents) 2008-06-24 12:48:28 +00:00
Arvid Norberg 9780d378ed made examples use the new more efficient torrent_info constructor 2008-06-24 11:54:13 +00:00
Arvid Norberg a0517fc3cb client test storage allocation mode fix 2008-06-22 23:09:38 +00:00
Arvid Norberg d35eb71389 made client test adjust settings for the active torrent instead of all at the same time 2008-06-17 08:32:32 +00:00
Arvid Norberg a1857f9699 added force_recheck to torrent_handle. Fixes #120 2008-06-07 16:24:56 +00:00
Arvid Norberg f16b5d0c7a changed default to 5 upload slots in client_test 2008-06-07 14:02:26 +00:00
Arvid Norberg 9d1e77dc88 optimized away torrent::m_have_pieces (#62) and added some documentation on bitfield. The piece picker is now constructed with the torrent, but still freed when turned into a seed 2008-06-07 02:58:28 +00:00
Arvid Norberg 31c9d378f5 completed queuing. It is now possible to change and query queue position of torrents. 2008-05-29 03:37:19 +00:00
Arvid Norberg 0a27b0a2ce bugfix in client_test 2008-05-29 02:21:22 +00:00
Arvid Norberg c7c1a3913e fixed client_test to use bitfield type 2008-05-28 06:50:11 +00:00
Arvid Norberg 67354421fb introduced an error state for torrents. Torrents with an error are not restarted automatically 2008-05-20 07:57:44 +00:00
Arvid Norberg b859942369 added torrent name to logs 2008-05-20 01:23:26 +00:00
Arvid Norberg 949dbe23d3 added more output in the client_test log 2008-05-19 07:37:01 +00:00
Arvid Norberg 777954ab3e automatically scrape auto managed torrents to keep track of downloader/seed ratio 2008-05-19 04:06:25 +00:00
Arvid Norberg 455045f02a client test update 2008-05-07 18:02:11 +00:00
Arvid Norberg 4f859ba778 client test update 2008-05-07 09:28:49 +00:00
Arvid Norberg 840273a94b example client change 2008-05-07 08:17:28 +00:00
Arvid Norberg 3ddca16525 client test fix 2008-05-07 07:24:34 +00:00
Arvid Norberg b73112682c client test ui updates 2008-04-24 04:17:54 +00:00
Arvid Norberg c043d4b21d initial support for queuing 2008-04-24 03:28:48 +00:00
Arvid Norberg 0550363b85 geo ip fix in client_test 2008-04-22 17:17:01 +00:00
Arvid Norberg 9a434a919f some more ASNum additions 2008-04-22 00:05:23 +00:00
Arvid Norberg eb82e13357 client_test updates 2008-04-16 07:02:19 +00:00
Arvid Norberg 755e50bb12 added active_time, seeding_time, all_time_upload and all_time_download to torrent_status. Also updated docs with some missing entries in torrent_status 2008-04-16 06:31:05 +00:00
Arvid Norberg 3fea2080fd added an asynchronous save_resume_data to make it easier to synchronize with the disk IO thread 2008-04-13 18:54:36 +00:00
Arvid Norberg 42f55adcce support for country lookup through GeoIP 2008-04-11 08:46:43 +00:00
Arvid Norberg 093d912e9a receive buffer optimization. added receive_buffer_size and used_receive_buffer to peer_info. changed plugin api to make use of new disk_buffer_holder type 2008-04-10 10:03:23 +00:00
Arvid Norberg 57d75e120a initial support for GeoIP (only AS mappings for now) 2008-04-05 04:53:22 +00:00
Arvid Norberg 2014e312b1 exposed connection_candidates in torrent_status and made a small optimization to not attempt to connect peers on swarms that don't have any connect candidates 2008-03-29 18:47:24 +00:00
Arvid Norberg 9d3b60edb7 added support to bind outgoing connections to specific ports (might be useful to do traffic shaping) 2008-02-28 07:34:07 +00:00
Arvid Norberg e48e52770b more rendering fixes in client_test 2008-02-28 03:24:38 +00:00
Arvid Norberg 60add53428 fixes printing issue in client_test 2008-02-28 02:46:01 +00:00
Arvid Norberg ef9ef674d5 added read cache. Not fully configurable yet 2008-02-22 04:11:04 +00:00
Arvid Norberg 4f6c77e1d5 made client test use the default file storage 2008-02-17 20:31:02 +00:00
Arvid Norberg 7e83c3fc51 changed storage interface to not require exceptions 2008-02-14 03:48:20 +00:00
Arvid Norberg 6c552db68e added disk cache expiration 2008-02-10 00:58:25 +00:00
Arvid Norberg cecd0dfcd2 added rtt estimation for outgoing connections 2008-02-09 22:42:56 +00:00
Arvid Norberg 8cf0510144 added disk cache for write operations 2008-02-08 10:22:05 +00:00
Arvid Norberg c798ab30e1 rewrote the piece picker to be more cpu and memory efficient. replaces the concept of sequential-download-threshold with just a sequential download settings 2008-01-31 17:52:29 +00:00
Arvid Norberg f783d4d869 made the piece bar work in windows 2008-01-24 03:59:08 +00:00
Arvid Norberg 127d3e6ad5 bandwidth limiter fixes. proper priority that cannot starve connections 2008-01-17 17:40:46 +00:00
Arvid Norberg b19bf337bf generalized peer read/write state 2008-01-13 23:46:43 +00:00
Arvid Norberg 5d196ed555 auto upload slots. opens up more slots if upload rate is not met. On by default 2008-01-13 11:18:18 +00:00
Arvid Norberg 72eee8838c sets default per-torrent download limit to infinite in client_test 2008-01-13 10:10:44 +00:00
Arvid Norberg 95c853e107 fixed peer-info header alignment in client_test 2008-01-13 06:31:33 +00:00
Arvid Norberg a8f07edffa added download rate limit per torrent 2008-01-10 23:12:58 +00:00
Arvid Norberg 3a727e99ff expose more info through peer_info 2008-01-10 22:13:23 +00:00
Arvid Norberg 1d6e0f5bf6 bandwidth request block size optimization 2008-01-07 04:47:20 +00:00
Arvid Norberg 4d8833bc35 added total stats to client_test 2008-01-06 20:16:46 +00:00
Arvid Norberg 5b2f1d70e8 per-torrent upload rate limit fix for client_test 2008-01-03 08:17:17 +00:00
Arvid Norberg 1aa9a5b041 added option to limit upload rate per torrent to client_test 2008-01-02 18:22:34 +00:00
Arvid Norberg f9e20ed9b1 removed leftover dead code from client_test 2007-12-27 06:23:37 +00:00
Arvid Norberg 9aa2ddec80 added a plugin 'smart_ban' that can ban peers sending bad data with higher accuracy 2007-12-18 06:04:54 +00:00
Arvid Norberg 7a393426b1 made client test not use a deprecated function. fixes #229 2007-12-15 23:35:25 +00:00
Arvid Norberg b2dc035a54 support for magnet links in client_test 2007-12-11 20:02:55 +00:00
Arvid Norberg 20621cae02 added magnet-uri functions and a base32 decode function 2007-12-03 06:03:16 +00:00
Arvid Norberg 1cc0118c9c supports retry for web seeds that respond with 503 2007-11-27 03:37:47 +00:00
Arvid Norberg 4d19f7ff0f storage optimization. introduced a nother allocation mode: sparse. Now there is allocate, compact and sparse. Unless compact is used, the memory structures used to keep track of pieces are no longer allocated. sparse storage mode is now the default 2007-10-08 20:01:36 +00:00
Arvid Norberg f658686d6d reverted incorrect check-in of client test 2007-10-02 19:46:14 +00:00
Arvid Norberg 3dcae188fb policy now has a map of peers instead of a flat list, makes it more efficient to do lookups 2007-10-02 19:11:04 +00:00
Arvid Norberg 18a87916e6 fixed bug in client_test 2007-10-02 18:52:27 +00:00
Arvid Norberg 6fd42631c0 windows fixes for client_test 2007-10-01 17:17:49 +00:00
Arvid Norberg 09c1e0f007 client_test fix 2007-09-27 16:14:24 +00:00
Arvid Norberg 01c20353a4 added IP to client_test 2007-09-20 01:21:43 +00:00
Arvid Norberg 80aee32972 fixed piece picker problem when a downloading piece could not be picked with the right speed category 2007-09-10 08:07:18 +00:00
Arvid Norberg 4137c0885a fixed pausing issue introduced in the changed add_torrent 2007-08-22 18:37:20 +00:00
Arvid Norberg ee01d7bb11 added optimistic unchoke flag to client_test 2007-08-22 05:02:45 +00:00
Arvid Norberg 54aa76f940 exposed queued disk bytes in peer_info 2007-08-01 06:11:11 +00:00
Arvid Norberg 4c8c686a64 made client_test build on linux 2007-07-22 23:24:27 +00:00
Arvid Norberg 1381a008c4 added a piece bar to client_test 2007-07-09 00:00:35 +00:00
Arvid Norberg 4771f323f6 added invariant checks for peer_counter in block_info. added bytes_progress and block_size to block_info (to allow a more detail download progress display). Updated client_test to show download progress per block and also to have a separate color for 'multi blocks' (i.e. blocks that have been requested from more than one peer) 2007-07-08 20:45:42 +00:00
Arvid Norberg 46bf2970fb fixes to remote peer download rate etimation 2007-06-14 21:47:00 +00:00
Arvid Norberg 97099dc0ca added more fixes to Jamfile in order to make it build on windows 2007-06-13 17:36:26 +00:00
Arvid Norberg 3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +00:00
Arvid Norberg a3a2217276 an approximate peer download rate is now in peer_info 2007-06-07 00:05:18 +00:00
Arvid Norberg 273f8bd921 merged back encryption branch to trunk 2007-06-06 00:41:20 +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 bb71832f5f exposed some more peer info 2007-05-25 19:42:10 +00:00
Arvid Norberg c48bba388e formatting fixes in client test, and made the test build when resolve countries is disabled 2007-05-24 20:23:14 +00:00
Arvid Norberg 1eb819b901 fix to previous optimization in client_test 2007-05-24 00:52:03 +00:00
Arvid Norberg 4bcf8b53ff string operations optimizations in client_test 2007-05-23 07:39:21 +00:00
Arvid Norberg d7ed474a46 interface update to client_test 2007-05-09 20:06:53 +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 f41fd7d303 added catch blocks to lsd. changed bind expressions to use operators 2007-04-29 20:49:30 +00:00
Arvid Norberg ee1681e2cb added peer/piece categories to the piece picker. fixes #18 2007-04-27 00:27:37 +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 849db39472 added peer_blocked_alert which is generated when a peer is blocked by the IP filter. Fixed the ip-filter parsing in client_test and made it report the peer_blocked_alert. Added documentation. 2007-04-17 05:56:43 +00:00
Arvid Norberg b05abc76f4 fixed time formatting in client_test 2007-04-15 17:44:06 +00:00
Arvid Norberg c54f702e65 fixed fill character in client_test 2007-04-14 23:59:09 +00:00
Arvid Norberg f16e419abd fixed proper formatting of announce count down in client_test 2007-04-14 21:03:14 +00:00
Arvid Norberg a22ad5ad33 added failcount to peer_info. fixes #31 2007-04-13 20:19:04 +00:00
Arvid Norberg 3ed24da320 added source to peer_info, which is a bitmask of the sources where the peer has been acquired from 2007-04-10 21:23:13 +00:00
Arvid Norberg 0863bc1aa6 removed the dependency on the compiled boost.date_time library 2007-04-10 09:11:32 +00:00