Commit Graph

453 Commits

Author SHA1 Message Date
Arvid Norberg f04e9e9875 made unchoke interval depend on piece size 2008-10-18 22:35:10 +00:00
Arvid Norberg 18017c3f72 updated documentation on saving resume data and fixed client_test to do it properly 2008-10-17 02:26:08 +00:00
Arvid Norberg d8d0955910 client_test fix to not crash when loading an invalid torrent file and shut down properly (set torrents to not be auto managed when pausing them) 2008-10-17 01:47:24 +00:00
Arvid Norberg ae4f487449 ip filter parse fix 2008-10-15 21:31:55 +00:00
Arvid Norberg 528a009f7f removed date-time and iostream from makefiles 2008-10-04 07:46:56 +00:00
Arvid Norberg a93ae86d85 fixed bug in client_test when loading paused torrents 2008-09-26 00:26:35 +00:00
Arvid Norberg a36da15c29 saves sequential download in fastresume data 2008-09-23 03:52:49 +00:00
Arvid Norberg 1ac3b8298c report tracker bandwidth usage and include it in rate limiter 2008-09-22 00:15:05 +00:00
Arvid Norberg 0338510b9b added more bandwidth monitoring of DHT and TCP/IP overhead. added monitoring of the running DHT lookups 2008-09-20 17:42:25 +00:00
Arvid Norberg e8a0ace739 added a key to scrape the tracker for a torrent in client_test 2008-09-07 09:59:54 +00:00
roman_rybalko f9f7b689a3 automake build system fix: make dist always creates same dist regardless of configure parameters, test/Makefile.am made more clear 2008-09-02 11:14:10 +00:00
Arvid Norberg c88071ae10 fixed race when adding router nodes to the dht (router nodes should be added before it's started) 2008-09-02 06:37:40 +00:00
Arvid Norberg eaffa85c54 fixed client_test to be able to print empty piece bars 2008-08-29 00:42:57 +00:00
Arvid Norberg 9b38724417 made dump torrent create magnet links 2008-08-27 18:44:35 +00:00
Arvid Norberg cc7391690b fixed client test status display since connecting_to_tracker was removed 2008-08-11 14:34:37 +00:00
Arvid Norberg cbf8e6f3b1 introduced TORRENT_NO_DEPRECATE, to disable deprecated functions. Made example not use deprecated functions. Documented magnet uri related functions. 2008-08-03 15:14:08 +00:00
Arvid Norberg 7607034ab6 exposed upload_only in peer_info 2008-07-19 07:57:43 +00:00
Arvid Norberg d88acd3d95 file_progress fix 2008-07-13 16:44:14 +00:00
Arvid Norberg 4ee16ef247 use new file_progress api in client_test 2008-07-12 18:54:20 +00:00
Arvid Norberg ff6cbbc6b6 added torrent_handle::clear_error() to retry a torrent that is in an error state (torrent_status::error is set) 2008-07-12 17:00:52 +00:00
Arvid Norberg 9122ed8cea support for logging to file in client_test 2008-07-12 08:19:17 +00:00
Arvid Norberg 792726be8d print cache age in client_test 2008-07-11 10:35:59 +00:00
Arvid Norberg 9c9c13c7bb exposed read cache info as well as write cache 2008-07-11 10:29:26 +00:00
Arvid Norberg 1b6cc3b870 wait a bit longer for fastresume data 2008-07-11 07:33:34 +00:00
Arvid Norberg 96ca475652 added redundant and failed byte counters to session 2008-07-11 07:30:04 +00:00
Arvid Norberg d06f125513 improved accuracy of the file progress report to include completed blocks from incomplete pieces (but not partial blocks) 2008-07-09 10:45:07 +00:00
Arvid Norberg 9d97fc4bb9 print out percentage complete of files in client_test 2008-07-09 10:02:24 +00:00
Arvid Norberg a20f1a8fa0 keeps track of the number of requests waiting in the send buffer and adjusts bandwidht priority accordingly in the bandwidth limiter 2008-07-08 00:03:08 +00:00
Arvid Norberg 73b54f1d0c added timestamp to events 2008-07-07 12:03:29 +00:00
Arvid Norberg e576babbb8 changed the alerts to have categories and to be filtered with a bitmask instead of having a severity and be filtered by a severity level. 2008-07-06 12:22:56 +00:00
Arvid Norberg ecb538b4b2 added alert for torrent state changes. Fixes #360 2008-07-03 10:05:51 +00:00
Arvid Norberg af0ebb519c added copyright notices in files missing them 2008-07-01 18:59:13 +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
cg25 71c4f6f9b6 * improved --with-asio configure option behaviour;
* using -version-info flag instead of -revision one for the sake of correct
  interface versioning;
* renaming library to libtorrent-rasterbar.so to avoind conflicting with other
  libraries.
2008-06-23 00:09:12 +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 3910fe78de separated file_storage from torrent_info and create_torrent 2008-05-28 08:44:40 +00:00
Arvid Norberg c7c1a3913e fixed client_test to use bitfield type 2008-05-28 06:50:11 +00:00
Arvid Norberg dbb625a910 torrent_info fixes. make_torrent now builds 2008-05-20 09:49:40 +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 8ed949c4d5 factored out torrent creation functionality from torrent_info into create_torrent. Modified torrent_info to use lazy_bdecoder for increased performance 2008-05-14 05:29:42 +00:00
Arvid Norberg e51c8bea37 added makefile support for boost.system (#322) 2008-05-11 22:43:44 +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 c7e6c04705 switched over to asio from boost-1.35 2008-05-03 16:05:42 +00:00
Arvid Norberg c3b60f1b8f modified get_default_gateway to not take an interface 2008-04-28 02:20:40 +00:00
Arvid Norberg c2f7fb0fb4 added enum_routes to dump routing table 2008-04-28 00:20:59 +00:00
Arvid Norberg 6a7790cd28 added implementation for get_default_router for linux 2008-04-25 05:51:21 +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 48127a8f6b added enum_if example to the makefile to be part of releases 2008-03-17 02:40:14 +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 dad00f68cd prints out default gateway in example 2008-01-11 09:58:40 +00:00
Arvid Norberg f36e6a6c4f proper default gateway discovery 2008-01-11 09:38:05 +00:00
Arvid Norberg 72edfc2ee7 improved network interface enumeration and upnp device filtering 2008-01-11 06:49:37 +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 dfd563dfbb made most examples build without exception support 2007-12-30 01:59:10 +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
Michael Wojciechowski bce53063ab Changed configure script to not to modify LIBS, when checking for dependencies. Changed libtorrent.pc.in again, since the libraries used were
wrong, because $LIBS was used. Corrected Makefile.am in test, examples and src.
2007-12-14 20:53:56 +00:00
Arvid Norberg b2dc035a54 support for magnet links in client_test 2007-12-11 20:02:55 +00:00
Arvid Norberg fff87a6845 added m4 script for boost iostream and added ut_metadata to makefile 2007-12-08 22:02:59 +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 973e7be386 added router_for_interface along with a proper windows implementation. NAT-PMP support is now good on windows 2007-10-01 17:21:19 +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 587d40e1ae updates to enum_net 2007-09-20 16:25:07 +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 c8088459a0 made torrent_info reference counted and held by a boost::intrusive_ptr 2007-09-01 03:00:31 +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 6c50adabfc updated piece_picker fix and added another invariant check to policy 2007-08-21 01:17:42 +00:00
Arvid Norberg 52a2df2d3f added first and last piece to dump_torrent 2007-08-03 08:43:22 +00:00
Arvid Norberg ce8acd0911 added compiler flag to disable inclusion of boost.serialization headers 2007-08-01 07:26:10 +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 9f24c6d79c added option to link against installed boost libraries instead of building from source (boost=system and boost=source, system is default). Removed dependency in boost serialization headers 2007-07-07 21:27:36 +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 fa1a37e649 updated Jamfile to support openssl on windows, added missing files to makefiles and made test_pe_crypto build when encryption is disabled 2007-06-13 01:48:24 +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