Commit Graph

893 Commits

Author SHA1 Message Date
Arvid Norberg f11b1ce6a0 fixed failing invariant check in peer_connection's download queue 2010-10-03 22:06:53 +00:00
Arvid Norberg 8e4addf2c5 improved set_max_connections to immediately disconnect peers to match the new limit 2010-10-03 10:07:38 +00:00
Arvid Norberg a7c87e14dd added functions to query an individual peer's upload and download limit 2010-10-01 16:09:22 +00:00
Arvid Norberg a1567458ca seeding torrents should not send event=paused 2010-09-24 15:52:40 +00:00
Arvid Norberg fc0916d450 fixed logging build 2010-09-22 16:59:28 +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 a8cc326df6 minor redundant connection fixes 2010-09-05 04:31:13 +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 fb8ebc53dd save resume data every 15 minutes no matter what 2010-08-25 06:38:04 +00:00
Arvid Norberg b747cdab8a merged all proxy settings into a single one 2010-08-23 06:27:18 +00:00
Arvid Norberg 2736a3b7ff fixed file checking bug 2010-08-23 05:51:12 +00:00
Arvid Norberg ad07883228 use the same logic to post resume data failed messages as to determine whether to do a full check or not 2010-08-19 16:10:31 +00:00
Arvid Norberg a85f1f5c61 improved logging 2010-08-18 17:14:40 +00:00
Arvid Norberg fd5f1bf80b improved SOCKS5 support 2010-08-03 09:08:37 +00:00
Arvid Norberg 0c7b5ab3da fix to tracker announce code 2010-07-17 23:32:17 +00:00
Arvid Norberg 0dd925ef14 fixed bug in network interface bind code from multi-home support patch 2010-07-17 18:32:06 +00:00
Arvid Norberg 64682072d8 save last_download,last_upload and last_scrape states 2010-07-17 07:25:28 +00:00
Arvid Norberg 1e70456f58 improved support for multi-homed clients 2010-07-17 07:13:14 +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 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 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 06190d8920 fixed bug in web_peer_connection which could cause a hang when downloading from web servers 2010-06-22 18:09:04 +00:00
Arvid Norberg 19df3dbc2f fixed bug where local peer discovery and DHT wouldn't be announced to without trackers 2010-06-17 17:01:28 +00:00
Arvid Norberg e4ef0b853e don't reannounce on failure when shutting down 2010-05-23 21:27:04 +00:00
Arvid Norberg 39a166844e fixed issue where trackers wouldn't tried immediately when the previous one failed 2010-05-17 02:06:30 +00:00
Arvid Norberg ef0abcb359 move need_save_resume_data to when a piece is completed instead of when it's written to disk 2010-05-16 23:12:37 +00:00
Arvid Norberg 2e34bef04c spell correction 2010-05-06 23:56:54 +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 cc3c515458 more vs10 build fixes 2010-05-02 06:29:52 +00:00
Arvid Norberg 1f44ec75a0 fixed bug in add_piece() that would trigger asserts 2010-05-01 17:47:28 +00:00
Arvid Norberg dce2edb6cc fixed vs 2010 build 2010-04-30 19:08:16 +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 d1addf876a added some asserts 2010-04-24 19:24:27 +00:00
Arvid Norberg d7c30bc01b fixed potential issue where a piece could be checked twice 2010-04-22 01:53:09 +00:00
Arvid Norberg 50c334660d fixed typo in should_check_files() 2010-04-15 14:31:49 +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 8e3c5f45e3 initialize need save resume data to true to get the initial state (potentially allocated files) saved 2010-04-13 02:29:13 +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 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 8724b89499 never finalize pad files 2010-03-21 18:19:59 +00:00
Arvid Norberg 126ba1fd34 fixed issue with sign extend from 24 bits to 32 bits 2010-03-21 18:15:04 +00:00
Arvid Norberg 6c42e759c3 removed incorrect assert 2010-03-21 18:09:34 +00:00
Arvid Norberg d1df643baf msvc8 build fix 2010-03-21 17:41:17 +00:00
Arvid Norberg 686fc1a1c7 windows fixes 2010-03-21 02:13:56 +00:00
Arvid Norberg 786172455b added save resume action to client_test. potential small optimization in resume data save function 2010-03-20 22:00:13 +00:00
Arvid Norberg 9435e84644 precaution: clear current_tracker in torrent::status() 2010-03-20 00:52:36 +00:00
Arvid Norberg 5224e0c340 complete_ago extension 2010-03-19 18:39:51 +00:00
Arvid Norberg 0db27ab9b6 fixed typo 2010-03-09 21:57:20 +00:00
Arvid Norberg a3bff512e1 added 'added' and 'completed' time to torrent_status 2010-03-09 03:21:35 +00:00
Arvid Norberg 723c59b6e8 fixed incorrect merge 2010-03-08 02:06:30 +00:00
Arvid Norberg d18b1612e4 more asserts to try to catch crash in disconnect_peers 2010-03-08 01:54:56 +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 fb06acc828 add default peer rate limit setting 2010-03-03 01:31:31 +00:00
Arvid Norberg e8523a3ad4 fixed issue with 0-sized torrents and verify_piece assert 2010-03-02 07:08:29 +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 59deff7a44 fixed issue with disk read cache not being cleared when removing torrents 2010-02-21 08:52:26 +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 9197081618 announce edge case fixes 2010-02-18 03:53:16 +00:00
Arvid Norberg 69e0249317 don't lookup country for local IPs 2010-02-15 07:52:32 +00:00
Arvid Norberg 08c8bfae29 more wide character and mingw fixes 2010-02-15 05:49:10 +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 0816ff69c6 fixed streaming bug 2010-02-09 07:52:17 +00:00
Arvid Norberg d019833043 fixed finished_time bug 2010-02-09 04:42:32 +00:00
Arvid Norberg 7e343a9d6f add size logging to various classes 2010-02-08 04:51:34 +00:00
Arvid Norberg bb9426b97c post read_piece messages as a result of set_piece_deadline if a piece is found during checking 2010-02-06 07:31:43 +00:00
Arvid Norberg 088f4bf700 improved LSD performance and made the interval configurable 2010-02-05 08:23:17 +00:00
Arvid Norberg fc310ffde1 fixed add_piece() 2010-02-01 00:44:31 +00:00
Arvid Norberg 82b49b541e fixed crash when adding pieces to seeds 2010-01-27 06:06:57 +00:00
Arvid Norberg 942c4e0a7c fixed torrent_deleted_alert to not dead-lock 2010-01-23 22:42:48 +00:00
Arvid Norberg 45cd9fe407 ignore paused and automanaged from metadata for magnet links 2010-01-18 23:44:05 +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 18454d6344 replace trackers from resume data instead of adding them. 2010-01-10 03:02:46 +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 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 0fc90b5655 fixed support for min-interval on tracker failures 2009-12-21 09:47:32 +00:00
Arvid Norberg cebcbc3eeb fixed force reannounce bug with min_interval support 2009-12-13 16:36:45 +00:00
Arvid Norberg 6aa9d5fa52 more logging 2009-12-07 05:03:23 +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 1e654220fa added support for min_interval 2009-12-02 04:05:24 +00:00
Arvid Norberg ea1043a293 fix crash in force_recheck for torrents with no metadata 2009-11-29 17:57:42 +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 39d14146e7 dynamic_cast fix 2009-11-27 21:04:26 +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 2280454a99 support upload-only extension message 2009-11-24 18:49:59 +00:00
Arvid Norberg 6343fe6a6d optimized header dependencies to lower build time 2009-11-23 08:38:50 +00:00
Arvid Norberg 603e719117 save and restore the super-seed state of torrents 2009-11-18 17:40:38 +00:00
Arvid Norberg d9671d05b5 fixed uninitialized member in torrent 2009-11-18 08:39:15 +00:00
Arvid Norberg e43340c961 made it possible to build without RTTI 2009-11-02 20:43:38 +00:00
Arvid Norberg 70df388e6c removed one iostream dependency 2009-10-28 19:55:20 +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 6c137d6ef6 announces torrents immediately to the DHT when it's started 2009-10-25 02:37:45 +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 ea1761838a added torrent_status::finished_time 2009-09-30 17:21:59 +00:00
Arvid Norberg 9b15c11740 don't send stats to trackers received through tracker exchange 2009-09-25 18:17:59 +00:00
Arvid Norberg 7e430d5a2a resume data alerts are always posted, regardless of alert mask 2009-09-23 18:44:21 +00:00
Arvid Norberg 35bca49c61 add torrent priority to adjust bandwidth allocation of torrent's peers 2009-09-13 02:24:25 +00:00
Arvid Norberg 8e068cb801 fixed interger overflow bug 2009-09-09 17:59:01 +00:00
Arvid Norberg d168a709a2 promote an assert to expensive invariant checks only 2009-09-09 16:34:50 +00:00
Arvid Norberg d69d615be4 fixed bug where web seeds would not disconnect if being resolved when the torrent was paused 2009-09-07 06:17:22 +00:00
Arvid Norberg 3e9725b5d7 made peer_blocked_alert derive from torrent_alert 2009-09-07 01:47:30 +00:00
Arvid Norberg 6d01cb475c msvc build fixes 2009-09-06 00:57:01 +00:00
Georg Rudoy ce16f9848c Fix build with MSVS (use const_iterator where non-const one is not needed). 2009-09-01 13:36:30 +00:00
Arvid Norberg 1f5a722b01 improved sun studio support (it seems to lack a lot of stl) 2009-08-30 07:38:52 +00:00
Arvid Norberg 1e45b85c34 fixed incorrect assert in torrent::we_have 2009-08-26 02:42:42 +00:00
Arvid Norberg 45fd696bc6 added I2P support 2009-08-20 03:19:12 +00:00
Arvid Norberg 13967086aa added and removed some comments 2009-08-08 15:23:12 +00:00
Arvid Norberg 78a6df0b2a connect candidate fix 2009-08-01 22:48:43 +00:00
Arvid Norberg 137d2d63f5 cleaned up policy. Moved logic from policy to torrent 2009-07-23 04:38:52 +00:00
Arvid Norberg ae3be201c4 reduced the number of floating point operations to better support systems with no FPU 2009-07-19 04:59:27 +00:00
Arvid Norberg e2b8434361 simplified should_announce_dht slightly 2009-07-18 16:50:56 +00:00
Arvid Norberg 944b1a7d57 fixed inversed seed_time ratio logic 2009-07-18 07:16:20 +00:00
Arvid Norberg 93e204223d removed debug printouts 2009-07-04 05:06:50 +00:00
Arvid Norberg 51992dda6a added new alert when individual files complete 2009-07-04 04:58:24 +00:00
Arvid Norberg 8ee50045ca added support for uTorrent interpretation of multi-tracker torrents (off by default) 2009-06-28 20:21:55 +00:00
Arvid Norberg e9bd8f6e1f turned fast-resume errors into error_codes. fixed typo in documentation 2009-06-28 00:36:41 +00:00
Arvid Norberg 44ace0b86b fixed resume data compatibility with 0.13 2009-06-27 21:47:30 +00:00
Arvid Norberg cc3e6621ed fixed rename_file() bug where the new name would not be saved in the resume data in some cases 2009-06-22 00:52:57 +00:00
Arvid Norberg 306b75e6b1 boost 1.35 fixes 2009-06-19 16:42:33 +00:00
Arvid Norberg f09774607f added upload mode 2009-06-18 22:32:55 +00:00
Arvid Norberg 6b048dc85e fixed bug in connect candidate counter 2009-06-18 16:16:41 +00:00
Arvid Norberg 2c34e0aa18 only write operations should trigger piece_picker::write_failed 2009-06-13 17:40:18 +00:00
Arvid Norberg 07bcb3545a converted a whole lot of error strings into error_codes. Documented some previously undocumented alerts as well as all the error codes 2009-06-12 16:40:38 +00:00
Arvid Norberg 5e87420b6f set all piece priorities to 0 when a write fails 2009-06-10 09:20:55 +00:00
Arvid Norberg 6b908e5f3f fixed compile warnings 2009-06-10 08:42:05 +00:00
Arvid Norberg f0134c1b11 improved disk error handling and expanded use of error_code in error reporting 2009-06-10 08:30:55 +00:00
Arvid Norberg 4554e06837 fixed bug when setting unlimited upload or download rates for torrents 2009-06-09 19:33:18 +00:00
Arvid Norberg e438a3ccfc more boost-1.34.1 fixes 2009-06-03 07:46:50 +00:00
Arvid Norberg bd33814376 improve disk error handling 2009-05-31 22:41:53 +00:00
Arvid Norberg c695729bbe fixed bug when force-checking a torrent with partial pieces 2009-05-25 20:31:20 +00:00
Arvid Norberg efb6ec5824 fixed expensive-invariant-checks build 2009-05-25 17:23:03 +00:00
Arvid Norberg aa02e36327 retry web seeds when name lookup fails instead of discarding them 2009-05-25 07:04:14 +00:00
Arvid Norberg 30c704523c caches the time every 100 ms and use the cache where high resolution timer is not needed 2009-05-25 02:45:51 +00:00
Arvid Norberg e3c07c0934 converted some recursive mutexes to regular ones 2009-05-23 21:36:09 +00:00
Arvid Norberg 5fbff8e060 fixed a bug when checking a torrent twice 2009-05-23 15:58:32 +00:00