Commit Graph

1653 Commits

Author SHA1 Message Date
Arvid Norberg f9ec9180ff more disk cache cleanup optimizations 2010-05-16 23:14:47 +00:00
Arvid Norberg 68e9bf618f removed incorrect assert 2010-05-16 22:15:55 +00:00
Arvid Norberg 6bb24bea80 added feature to make asserts log to a file instead of breaking the process 2010-05-16 05:26:43 +00:00
Arvid Norberg e07bad0686 optimized disk I/O cache clearing 2010-05-13 15:01:20 +00:00
Arvid Norberg 23ba8c8a72 fixed synchronization issue between download queue and piece picker 2010-05-13 06:29:33 +00:00
Arvid Norberg 08d145a6e9 added production assert mode 2010-05-06 02:18:08 +00:00
Arvid Norberg d0f2b0ade0 make tick interval configurable 2010-05-03 08:54:03 +00:00
Arvid Norberg feaf4aa082 another attempt to fix tracker timer bug. Fixes issue where the tracker timer would be triggered repeatedly. Fixes bug where trackers loaded from resume data would get a fail limit of 3 (now they don't have a limit) 2010-05-03 08:24:30 +00:00
Arvid Norberg 1f44ec75a0 fixed bug in add_piece() that would trigger asserts 2010-05-01 17:47:28 +00:00
Arvid Norberg 2705859bb4 fixed bug where trackers wouldn't be retried if they failed 2010-04-27 18:22:59 +00:00
Arvid Norberg f092ddb49e make the sliding average class a template 2010-04-16 16:06:17 +00:00
Arvid Norberg 2a55fe8c70 debug logging fixes 2010-04-14 18:52:13 +00:00
Arvid Norberg 954b25f356 logging fix 2010-04-14 07:16:07 +00:00
Arvid Norberg 9a5f5562cb improve web seed connection handling 2010-04-14 06:22:00 +00:00
Arvid Norberg eeda665d06 report tracker errors in the tracker list 2010-04-13 04:37:39 +00:00
Arvid Norberg 384bfdec48 added anonymous mode to disable some particular features that might give away the user's and the client's identity 2010-04-13 04:30:34 +00:00
Arvid Norberg b5efe1c92a added feature to ask a torrent if it needs to save its resume data or not 2010-04-12 00:36:31 +00:00
Arvid Norberg fb12950098 fixed debug logging to not use up one extra file descriptor per connection 2010-04-11 21:20:38 +00:00
Arvid Norberg 62eef91338 added setting to ignore file modification time when loading resume files 2010-04-11 21:02:43 +00:00
Arvid Norberg c26d1631e0 fix bug in web and http seeds shutdown 2010-04-09 05:51:31 +00:00
Arvid Norberg ccb808638d fixed strict aliasing warning on gcc 2010-04-02 03:57:06 +00:00
Arvid Norberg c51e0a2a86 fixed inconsistency when creating torrents with symlinks 2010-04-01 00:44:29 +00:00
Arvid Norberg 4c4c7f832a fix for torrent announcing bug introduced when supporting fine grained control over sources torrents are announced to 2010-03-31 02:40:00 +00:00
Arvid Norberg 7e851818b1 support more fine-grained torrent states between which peer sources it announces too 2010-03-29 00:34:04 +00:00
Arvid Norberg 9977480f02 fixed bug in url encoder and in client test 2010-03-29 00:31:30 +00:00
Arvid Norberg b4abe6677d support for sha1 file-hashes 2010-03-27 15:51:30 +00:00
Arvid Norberg c6f57ce5d7 support optional LSD IP broadcast 2010-03-26 17:45:16 +00:00
Arvid Norberg c14042b29e remove unused declarations and added a small piece of documentation 2010-03-25 04:47:56 +00:00
Arvid Norberg 1d0e2c0a37 solaris fix 2010-03-21 17:32:54 +00:00
Arvid Norberg c93e13c6fb added include files to Makefile 2010-03-20 22:26:06 +00:00
Arvid Norberg 3a84dce119 fixed unused variables warnings 2010-03-20 22:22:18 +00:00
Arvid Norberg b78aca9a53 fixed logging build 2010-03-20 09:35:45 +00:00
Arvid Norberg c9f7ba495f don't include symlink info by default in torrents 2010-03-20 07:30:34 +00:00
Arvid Norberg 6ecb25121b disabled auto disconnect_peers feature since it seems to be buggy 2010-03-20 02:43:33 +00:00
Arvid Norberg 8ee5268123 disable including 'mtime' in new torrents by default 2010-03-20 02:41:36 +00:00
Arvid Norberg 5224e0c340 complete_ago extension 2010-03-19 18:39:51 +00:00
Arvid Norberg 2910a4a10c dropped dependency on zlib 2010-03-16 06:14:22 +00:00
Arvid Norberg 631cd17ebf renamed union hack 2010-03-12 18:30:18 +00:00
Arvid Norberg 06a043a489 add send_watermark_factor 2010-03-12 02:36:55 +00:00
Arvid Norberg 79bd8fcd52 made the default cache size depend on the amount of physical RAM. and fixed disk thread settings update when loading through load_state 2010-03-10 07:14:10 +00:00
Arvid Norberg a3bff512e1 added 'added' and 'completed' time to torrent_status 2010-03-09 03:21:35 +00:00
Arvid Norberg dcffa55700 some sunPRO compiler support 2010-03-07 06:00:12 +00:00
Arvid Norberg 013cef68e8 add flags to session::save_state to filter what is saved 2010-03-06 07:49:40 +00:00
Arvid Norberg e3a9578e2d fixed some shadow warnings 2010-03-06 07:16:39 +00:00
Arvid Norberg b835b03ae8 fix std::string::size_type type 2010-03-06 03:57:48 +00:00
Arvid Norberg d4854024db added flags to torrent::status() that can filter which values are calculated 2010-03-04 19:15:23 +00:00
Arvid Norberg 281b6368f7 deprecate old state saving functions, merge dht state with session state 2010-03-04 16:42:39 +00:00
Arvid Norberg fb8e1d8611 add a num_warnings enum to performance_alert 2010-03-04 03:46:45 +00:00
Arvid Norberg 1189a3ef82 initialize members in cache_status 2010-03-04 03:43:50 +00:00
Arvid Norberg 9d6cdb0c89 solaris build fixes 2010-03-03 07:42:51 +00:00
Arvid Norberg a942890e8d added more detailed instrumentation of the disk I/O thread 2010-03-03 07:09:04 +00:00
Arvid Norberg fb06acc828 add default peer rate limit setting 2010-03-03 01:31:31 +00:00
Arvid Norberg 0952dd48f6 fixed udp tracker race condition 2010-03-02 09:04:27 +00:00
Arvid Norberg 5adb8d5533 the proper fix 2010-03-02 03:55:47 +00:00
Arvid Norberg 77c0fa5872 support multiple trackers in magnet links 2010-03-01 06:46:57 +00:00
Arvid Norberg d15fd0c6d3 bump version number 2010-02-25 22:30:07 +00:00
Arvid Norberg aa5fc72fbf made tracker errors use error_code 2010-02-23 21:53:45 +00:00
Arvid Norberg eff49e42a7 added support for torrents with odd piece sizes 2010-02-23 16:26:24 +00:00
Arvid Norberg 210c663596 fixed error handling with torrents with invalid piece sizes 2010-02-22 01:51:25 +00:00
Arvid Norberg b96e0a448e udp socket debugging and asserts 2010-02-21 20:15:07 +00:00
Arvid Norberg 59deff7a44 fixed issue with disk read cache not being cleared when removing torrents 2010-02-21 08:52:26 +00:00
Arvid Norberg 17750035ea alert_cast fix 2010-02-21 05:20:13 +00:00
Arvid Norberg 54b4bc7754 better rate limiter fix 2010-02-21 01:32:57 +00:00
Arvid Norberg cead1b5780 rate limiter fix for metadata extension 2010-02-20 18:56:53 +00:00
Arvid Norberg b362795f9d web seed fix 2010-02-20 16:53:38 +00:00
Arvid Norberg 47f3a18d65 DHT bootstrapping and refresh fix 2010-02-20 16:37:50 +00:00
Arvid Norberg 29880b7e26 use a stricted condition when to enter end-game mode. Made it configurable in RC_0_15+ 2010-02-18 19:25:15 +00:00
Arvid Norberg f31e670fc2 made end-game mode less aggressive 2010-02-18 17:26:21 +00:00
Arvid Norberg d892198a40 fixed unsigned type issue in lazy_entry 2010-02-18 16:31:51 +00:00
Arvid Norberg 04d31cea6e support option to report redundant bytes or not to tracker as well as 'corrupt' argument 2010-02-18 06:45:07 +00:00
Arvid Norberg 09a1023eb3 fixed issue with UDP over SOCKS5. Added a udp tracker to the unit test to make sure it works. Added tracker tests for all proxies 2010-02-18 04:37:02 +00:00
Arvid Norberg 95d4c3af5d don't use posix_fallocate on BSD 2010-02-15 07:16:41 +00:00
Arvid Norberg 08c8bfae29 more wide character and mingw fixes 2010-02-15 05:49:10 +00:00
Arvid Norberg 5c02f3df59 fixed DHT bootstrapping issue 2010-02-14 07:46:57 +00:00
Arvid Norberg fe5f908cc6 fixed MinGW support 2010-02-14 04:05:18 +00:00
Arvid Norberg 69b625e65d added missing file 2010-02-14 03:42:51 +00:00
Arvid Norberg c050b22d8f optimized memory usage for torrent objects 2010-02-14 01:39:55 +00:00
Arvid Norberg b12b3ff105 simplified web seed logic 2010-02-12 06:10:20 +00:00
Arvid Norberg 3d5d9eb807 start torrent on incoming connection feature 2010-02-11 04:39:04 +00:00
Arvid Norberg 348cd22b9a fixed typo 2010-02-09 04:58:16 +00:00
Arvid Norberg fb47469834 experimental support for the BitTyrant choking algorithm 2010-02-09 03:04:41 +00:00
Arvid Norberg 1a97405189 added an option to save a little bit of RAM by not collecting full detailed stats 2010-02-08 05:43:54 +00:00
Arvid Norberg 7e343a9d6f add size logging to various classes 2010-02-08 04:51:34 +00:00
Arvid Norberg 8c02d04d2e UDP tracker optimization 2010-02-06 08:14:18 +00:00
Arvid Norberg abfc92de35 added performance warning if there are too many optimistic unchoke slots 2010-02-06 07:39:45 +00:00
Arvid Norberg 088f4bf700 improved LSD performance and made the interval configurable 2010-02-05 08:23:17 +00:00
Arvid Norberg 1b2798970c support O_NOATIME on linux and use it by default 2010-02-02 19:44:52 +00:00
Arvid Norberg 859f412189 support an arbitrary number of optimistic unchoke slots 2010-02-02 18:39:32 +00:00
Arvid Norberg 53ef3dfb22 tuning of guided read cache 2010-02-01 00:38:32 +00:00
Arvid Norberg f68b45bae6 fixed typo in comment 2010-01-31 22:19:28 +00:00
Arvid Norberg c9e50559b6 loop back cancel messages for web servers 2010-01-31 21:44:22 +00:00
Arvid Norberg 238f7e38f5 improve disk stats logging to include cache hits 2010-01-31 21:13:52 +00:00
Arvid Norberg 3bc40b9980 fix builds for all combinations of stats and disk stats 2010-01-31 20:32:12 +00:00
Arvid Norberg ca20d2d600 fixed broken build 2010-01-31 20:22:35 +00:00
Arvid Norberg 5b747f58f7 add guided read cache and update tuning docs 2010-01-31 19:14:00 +00:00
Arvid Norberg ccf8b0278a added volatile read cache option 2010-01-30 03:50:17 +00:00
Arvid Norberg a4ff3cdf87 fix new disk cache implementation 2010-01-30 02:36:41 +00:00
Arvid Norberg f6c0d5af35 optimized disk cache to work with large caches 2010-01-27 04:25:45 +00:00
Arvid Norberg 64d52b26ca fixed windows upnp test. added test for is_space 2010-01-24 17:31:06 +00:00
Arvid Norberg 942c4e0a7c fixed torrent_deleted_alert to not dead-lock 2010-01-23 22:42:48 +00:00
Arvid Norberg 2b86528e50 added info_hash to torrent_deleted_alert 2010-01-23 16:56:00 +00:00
Arvid Norberg a046850130 support disk I/O priority setting 2010-01-23 03:02:32 +00:00
Arvid Norberg 3691ca847b fixed missing include 2010-01-20 03:01:39 +00:00
Arvid Norberg 7c2d4f0f08 pass in the full path to the predicate function fo add_files 2010-01-19 03:05:43 +00:00
Arvid Norberg d959331c1e renamed some torrent check queue related functions to be more descriptive 2010-01-17 21:42:14 +00:00
Arvid Norberg c9b594fde1 support sending suggest messages based on what's in the read cache. support 'explicit read cache' 2010-01-15 16:45:42 +00:00
Arvid Norberg ef41d38c34 added support for storing per-peer rate limits across reconnects 2010-01-15 03:06:05 +00:00
Arvid Norberg 2d7705e38b disabled feature to drop requests after having been skipped too many times 2010-01-14 02:16:23 +00:00
Arvid Norberg a1299c3a10 optimize disk I/O elevator algorithm to spend less time picking job 2010-01-12 01:56:48 +00:00
Arvid Norberg 27247df5c9 windows build fixes 2010-01-10 05:06:13 +00:00
Arvid Norberg 85951208e4 added support for explicitly flushing the disk cache 2010-01-09 21:17:52 +00:00
Arvid Norberg d498c129ab clear sparse flag on files that complete on windows 2010-01-09 18:40:05 +00:00
Arvid Norberg 11cd7af4e7 optimized DHT routing table memory usage 2010-01-03 11:08:39 +00:00
Arvid Norberg cbf2526a8c added stats_alert reporting raw transfer stats per torrent every second 2010-01-02 14:16:35 +00:00
Arvid Norberg 0350e86867 fixed web seed unit test 2009-12-29 17:49:24 +00:00
Arvid Norberg d157af5305 build fixes 2009-12-28 20:59:34 +00:00
Arvid Norberg cdf459dad5 only keep one outstanding duplicate request per peer 2009-12-25 16:52:57 +00:00
Arvid Norberg ac8f64f5fe fixed deadlock in piece_manager 2009-12-25 16:02:45 +00:00
Arvid Norberg 0fc90b5655 fixed support for min-interval on tracker failures 2009-12-21 09:47:32 +00:00
Arvid Norberg da48f026b6 fixed disk_io_thread header 2009-12-17 08:46:51 +00:00
Arvid Norberg 6298322b1d service disk-read requests that hit the cache immediately and circumvent the elevator ordering 2009-12-16 10:49:15 +00:00
Arvid Norberg 2862d15dcc disable exception-only functions when exceptions are disabled 2009-12-16 10:47:31 +00:00
Arvid Norberg 96cedc9b5f more beos fixes 2009-12-15 13:11:07 +00:00
Arvid Norberg cebcbc3eeb fixed force reannounce bug with min_interval support 2009-12-13 16:36:45 +00:00
Arvid Norberg 25798ba1fa timer initialization fix 2009-12-13 16:32:07 +00:00
Arvid Norberg f612a07b06 more header dependency fixes and some configure header cleanup 2009-12-09 09:55:19 +00:00
Arvid Norberg 50c7e53eef updated config header to be slightly more structured 2009-12-09 07:29:09 +00:00
Arvid Norberg 31bbfee895 more beos 2009-12-09 05:19:48 +00:00
Arvid Norberg df2f2570c2 factor out page size function and make aligned allocator configurable to use posix_memalign and memalign 2009-12-09 01:55:30 +00:00
Arvid Norberg df928764e2 reorganized error codes 2009-12-05 23:03:48 +00:00
Arvid Norberg d84c59d13b upload only fix 2009-12-05 16:46:10 +00:00
Arvid Norberg a6ed83e7fe add load_state/save_state to python bindings and made them build 2009-12-05 07:24:22 +00:00
Arvid Norberg ff2063651b build fixes 2009-12-03 17:44:11 +00:00
Arvid Norberg 1d04c4dcd0 added session saving and loading functions 2009-12-03 05:11:57 +00:00
Arvid Norberg 9abe4c14c6 and this goes with it 2009-12-03 05:10:30 +00:00
Arvid Norberg da5a18cc04 more shared link issues 2009-12-03 04:24:00 +00:00
Arvid Norberg bd881ac154 fixed more link issues on windows. examples build with shared linking on windows 2009-12-02 17:46:25 +00:00
Arvid Norberg 1e654220fa added support for min_interval 2009-12-02 04:05:24 +00:00
Arvid Norberg 3fb05a13b1 fixed DLL link issues 2009-11-30 07:03:34 +00:00
Arvid Norberg 60aae18493 time function dll_export fixes 2009-11-29 22:34:48 +00:00
Arvid Norberg 1f5859d31f error_code fix. added is_error_code_enum template specialization and using the abbreviated syntax to build error_codes 2009-11-29 07:06:38 +00:00
Arvid Norberg 39dae9e6dc some GCC 2.95 support fixes and some BeOS support 2009-11-28 22:41:21 +00:00
Arvid Norberg 5d1bfc497a added torrent_info::remap_files() 2009-11-27 22:15:34 +00:00
Arvid Norberg bf107858b8 include config.hpp 2009-11-27 22:02:26 +00:00
Arvid Norberg ddceb1487d fixed building with no IPv6 support 2009-11-27 18:46:29 +00:00
Arvid Norberg 9fd7a58370 header dependency fixes 2009-11-27 07:17:10 +00:00
Arvid Norberg e750910798 fixed windows build 2009-11-27 07:08:47 +00:00
Arvid Norberg b38df8941d header dependency fix 2009-11-26 22:30:50 +00:00
Arvid Norberg 072d3b0f48 moved some alert functions from the header to the cpp file 2009-11-26 21:40:10 +00:00
Arvid Norberg e1aa90daab header dependency fixes 2009-11-26 21:05:57 +00:00
Arvid Norberg f5f3552eee fixed header dependency 2009-11-26 19:32:11 +00:00
Arvid Norberg 7db5996abc header dependency fix 2009-11-26 18:31:27 +00:00
Arvid Norberg f42f4641a6 fixes to windows build 2009-11-26 16:25:39 +00:00
Arvid Norberg c6333e147c socket_type fix 2009-11-26 15:56:20 +00:00
Arvid Norberg a80b2b0fce fixed torrent_info copy constructor. restricted copying of lazy_entry. Fixed build. added pascal_string type to be used with lazy_entry (trunk only) 2009-11-26 06:54:52 +00:00
Arvid Norberg 8dd244581d header optimizations 2009-11-26 05:45:43 +00:00
Arvid Norberg 18e5d67967 protect file_priority functions from being called on torrents without metadata 2009-11-26 00:09:49 +00:00
Arvid Norberg a5586d154d more header dependency optimizations 2009-11-25 06:55:34 +00:00
Arvid Norberg 7ae9ed1a7d add missing header files 2009-11-24 19:11:18 +00:00
Arvid Norberg 2280454a99 support upload-only extension message 2009-11-24 18:49:59 +00:00
Arvid Norberg 15c4842cea another header optimization 2009-11-23 17:05:26 +00:00
Arvid Norberg 6343fe6a6d optimized header dependencies to lower build time 2009-11-23 08:38:50 +00:00
Arvid Norberg 562e2512b9 some vs2010 fixes 2009-11-22 23:55:54 +00:00
Arvid Norberg a65659f52f broadcast sockets now join every network interface 2009-11-14 20:35:24 +00:00
Arvid Norberg ac0f9d8f9c switched over buffer to use realloc/free 2009-11-11 05:24:57 +00:00
Arvid Norberg 4b52b57bf0 fixed some compiler warnings 2009-11-11 05:22:57 +00:00
Arvid Norberg 84ba8445cf changed includes for tommath to point into the libtorrent directory 2009-11-10 17:14:53 +00:00
Arvid Norberg 3b9b8b144c added support for using libtommath instead of libgcrypt or libcrypto for bittorrent encryption 2009-11-09 07:26:40 +00:00
Arvid Norberg e9e32235b4 added support for libgcrypt 2009-11-08 03:09:19 +00:00
Arvid Norberg e43340c961 made it possible to build without RTTI 2009-11-02 20:43:38 +00:00
Arvid Norberg fade413665 introduced alert_cast 2009-11-02 03:34:16 +00:00
cristiangreco bba63021c0 configure.ac: drop dependencies on boost.filesystem and boost.thread libraries
and add some new files to makefiles.
2009-11-02 02:10:38 +00:00
Arvid Norberg 0e9bdd9e53 improved alert message when torrent doesn't have metadata 2009-10-31 23:28:37 +00:00
Arvid Norberg c9392fe0fb fixed web seed for windows 2009-10-30 03:42:29 +00:00
Arvid Norberg 380dbd5600 added type() to alerts, to not require rtti support 2009-10-30 03:21:25 +00:00
Arvid Norberg cd0fc85b5f fixed msvc warning 2009-10-29 22:55:00 +00:00
Arvid Norberg 51ef057498 more unicode and wstring fixes 2009-10-29 18:12:43 +00:00
Arvid Norberg dcd8bb6718 move stats instrumentation to .cpp file to fix header dependency issue 2009-10-28 19:56:18 +00:00
Arvid Norberg e11f5265bd increased the number of peers returned from the DHT 2009-10-26 22:44:49 +00:00
Arvid Norberg ecb922e013 fix comparison operator of web_seed_entry 2009-10-26 20:12:57 +00:00
Arvid Norberg c777227c84 fixed some msvc warnings 2009-10-26 02:26:15 +00:00
Arvid Norberg c418165e07 replaced boost.filesystem with custom functions (improves efficiency and drops unnecessary dependencies and improves libtorrent portability) 2009-10-26 01:29:39 +00:00
Arvid Norberg 28e9c58e3d fixed bug in add_files that would fail to recurse if the path ended with a / 2009-10-25 21:07:14 +00:00
Arvid Norberg 6c137d6ef6 announces torrents immediately to the DHT when it's started 2009-10-25 02:37:45 +00:00
Arvid Norberg 65eb4db727 added session::is_dht_running 2009-10-24 21:55:16 +00:00
Arvid Norberg 3dc190da6e dht fix 2009-10-23 20:29:26 +00:00
Arvid Norberg 9d1989904b some compatibility fixes. 2009-10-20 16:44:11 +00:00
Arvid Norberg 8a5b7d5d36 got rid of the last recursive mutexes. abstracted the threading primitives (and switched over to use asio's internal ones). 2009-10-20 02:49:56 +00:00
Arvid Norberg a5fb1b3455 USE_BOOST_DATE_TIME fix 2009-10-19 03:01:15 +00:00
cristiangreco 70b0edb9f4 fix to not install the local copy of GeoIP.h when linking against system
libgeoip.
2009-10-12 20:56:17 +00:00
Arvid Norberg 474566fa21 more DHT fixes and simplifications 2009-10-09 02:34:25 +00:00
Arvid Norberg cee42ff5a1 more DHT simplifications 2009-10-07 20:51:02 +00:00
Arvid Norberg 115a4b1863 fixed msvc build 2009-10-04 23:46:29 +00:00
Arvid Norberg 599543e889 automatically caps files and connections by default to rlimit 2009-10-03 19:02:31 +00:00
Arvid Norberg ea1761838a added torrent_status::finished_time 2009-09-30 17:21:59 +00:00
Arvid Norberg dfccf0b412 some DHT work 2009-09-29 17:06:08 +00:00
Arvid Norberg 138fb8c679 extended DHT unit test to include error reporting 2009-09-27 17:41:51 +00:00
Arvid Norberg f36688a364 initial support for torrent tag store in DHT 2009-09-27 03:38:41 +00:00
Arvid Norberg 9b15c11740 don't send stats to trackers received through tracker exchange 2009-09-25 18:17:59 +00:00
cristiangreco 57995668fe fix some error/warning strings typos 2009-09-22 11:30:31 +00:00