Commit Graph

1703 Commits

Author SHA1 Message Date
Arvid Norberg d894dd43d8 improved web seed retry behavior 2010-09-21 06:34:13 +00:00
Arvid Norberg 4aa809e558 potential 64 bit build issue related to zlib 2010-09-07 03:37:33 +00:00
Arvid Norberg 3fb9fcab9e full support for bep-21 (event=paused) 2010-09-06 04:02:15 +00:00
Arvid Norberg b6f92aa981 added initial support for share-mode 2010-09-05 16:01:36 +00:00
Arvid Norberg c072c7869f some more missing includes 2010-09-01 15:44:33 +00:00
Arvid Norberg 8e9bb58fb9 fixed missing include 2010-09-01 15:39:31 +00:00
Arvid Norberg a17f4e4e71 fixed bug where event=completed would not be sent if it violated the min-interval 2010-09-01 03:14:12 +00:00
Arvid Norberg 11f3dd2c4c DEBUG_BUFFERS doesn't work unless pool allocators are turned off 2010-09-01 02:58:51 +00:00
Arvid Norberg cf6772d9fd potential build fix for windows (in 0.14 branch) 2010-08-28 22:05:20 +00:00
Arvid Norberg 18a3d545b0 fixed potential hang issue when receiving faster than we can handle the incoming messages 2010-08-28 19:44:50 +00:00
Arvid Norberg e2ca3e1545 rate limiter fix 2010-08-27 14:52:42 +00:00
Arvid Norberg 02668e8f75 fix message posting to work from multiple threads 2010-08-26 17:00:24 +00:00
Arvid Norberg fb8ebc53dd save resume data every 15 minutes no matter what 2010-08-25 06:38:04 +00:00
Arvid Norberg 58574c236a fixed build error when using boost 1.44 2010-08-25 06:03:40 +00:00
Arvid Norberg b7b542f587 optimized file_pool lookups and string handling 2010-08-23 08:48:02 +00:00
Arvid Norberg b747cdab8a merged all proxy settings into a single one 2010-08-23 06:27:18 +00:00
Arvid Norberg 80fbe4d5ef fixed build issues 2010-08-22 17:47:07 +00:00
Arvid Norberg de3db7e84e don't lock disk cache in RAM by default 2010-08-22 17:39:48 +00:00
Arvid Norberg f70fbb45c0 optimized struct layout of torrent_info. removed boost.date_type types from public interface (replaced by time_t) 2010-08-21 22:10:16 +00:00
Arvid Norberg afd5567969 session::set_tracker_proxy fix for udp trackers 2010-08-21 22:07:29 +00:00
Arvid Norberg a85f1f5c61 improved logging 2010-08-18 17:14:40 +00:00
Arvid Norberg cbc7bd078d fix no-exception build 2010-08-08 04:06:06 +00:00
Arvid Norberg fd5f1bf80b improved SOCKS5 support 2010-08-03 09:08:37 +00:00
Arvid Norberg 9d56f3f459 restored default fail_limit to unlimited on all trackers 2010-08-03 03:00:54 +00:00
Arvid Norberg 6ab555659c anonymous mode fix (don't resolve countries, since that gives away IPs) 2010-08-02 06:16:32 +00:00
Arvid Norberg ef48c92a4e fixed SOCKS5 bug for routing UDP packets 2010-07-25 01:31:15 +00:00
Arvid Norberg 030b2b5be8 don't dereference empty strings 2010-07-24 06:46:58 +00:00
Arvid Norberg 9109af0ce1 fix for disk job queue size measurement 2010-07-23 16:15:14 +00:00
Arvid Norberg 72060e8676 removed DHT mutex since everything is in the network thread now 2010-07-19 05:27:33 +00:00
Arvid Norberg 9baa280b52 added asserts to catch broken peer allocations and frees as well as disk buffer corruption 2010-07-18 19:28:22 +00:00
Arvid Norberg a3f5962f91 ignore failures in when asking for local_endpoint 2010-07-18 14:45:43 +00:00
Arvid Norberg 1e70456f58 improved support for multi-homed clients 2010-07-17 07:13:14 +00:00
Arvid Norberg 9a9c121ec0 fixed assert typo 2010-07-15 06:31:39 +00:00
Arvid Norberg 4c6be42b74 added feature to not count downloaded bytes from web seeds in stats 2010-07-15 06:27:44 +00:00
Arvid Norberg b3f57ac293 added incoming lsd alert 2010-07-15 05:56:29 +00:00
Arvid Norberg aa25ed00c6 fix force-reannounce and tracker retry issue 2010-07-15 05:16:06 +00:00
Arvid Norberg 97afe3fca8 added option to set file priorities when adding torrents 2010-07-15 01:14:36 +00:00
Arvid Norberg a3d95677b0 fixed build errors from last check-in 2010-07-14 07:38:35 +00:00
Arvid Norberg 4e576f93fd removed the session mutex for improved performance 2010-07-14 04:16:38 +00:00
Arvid Norberg 3310198dae added upload and download activity timer stats for torrents 2010-07-08 19:29:38 +00:00
Arvid Norberg 92593abf89 added support for SOCKS5 proxies in client_test and fixed an assert when using proxies 2010-07-03 06:56:09 +00:00
Arvid Norberg a0cef76bf2 fixed race condition around m_abort in session_impl 2010-06-24 21:43:00 +00:00
Arvid Norberg 69001e6a6b fixed bug in metadata extensions combined with encryption 2010-06-18 05:44:08 +00:00
Arvid Norberg b882914461 refactored socket reading code to not use async. operations unnecessarily 2010-06-18 04:43:20 +00:00
Arvid Norberg 26c4a819c8 removed the reuse-address flag on the listen socket 2010-06-17 17:14:56 +00:00
Arvid Norberg 61374075c4 fixed typo 2010-06-06 01:39:05 +00:00
Arvid Norberg df49e9d26b made the struct layout of entry be the same in debug builds as release builds to make that part of the ABI stable 2010-06-06 00:47:39 +00:00
Arvid Norberg cdf05a9c9c moved UDP trackers over to use a single socket 2010-05-30 01:33:03 +00:00
Arvid Norberg c796157f81 added missing include 2010-05-29 05:46:47 +00:00
Arvid Norberg 2c1ccc7ed6 fixed bug in write_address 2010-05-24 06:37:32 +00:00
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