Commit Graph

1269 Commits

Author SHA1 Message Date
Arvid Norberg d7d498c3a3 more steps towards isolating peer_connections from the session object. unchoking now happens via the torrent object. hopefully in the future, the session can determine which peers to unchoke without having direct access to them (i.e. with a mutex) 2014-09-22 03:47:43 +00:00
Arvid Norberg 27b7705cf2 remove built-in GeoIP support 2014-09-21 21:01:48 +00:00
Arvid Norberg 4d57456199 merged changes from RC_1_0 2014-09-02 06:28:27 +00:00
Arvid Norberg db788c9180 fix to make active_time, seeding_time, finished_time and upload_only_time all work for torrents that are not being ticked 2014-08-27 06:36:28 +00:00
Arvid Norberg d2c64915bf simplified want_peers expression 2014-08-22 08:55:37 +00:00
Arvid Norberg 524384045c transition to use boost.random instead of rand() and custom pseudo random generator 2014-08-16 20:26:00 +00:00
Arvid Norberg 5e54d13dec merge fixes from RC_0_16 2014-08-07 05:00:29 +00:00
Arvid Norberg c60ceacb71 switch over to use boost.atomic instead of home-built one 2014-08-01 07:32:54 +00:00
Arvid Norberg 7c9c25e359 cleaned up redundant bytes and failed bytes counters. moved some into the stats_counters 2014-07-29 05:59:00 +00:00
Arvid Norberg 118ba5e9c4 streaming fix 2014-07-26 17:48:24 +00:00
Arvid Norberg af0bb0abd8 fix another integer overflow issue from switching to chrono 2014-07-25 09:03:56 +00:00
Arvid Norberg 79a2744fa8 fixed issue with queued resume data saving, and fixed regression in recent disk error check changes 2014-07-21 03:03:59 +00:00
Arvid Norberg 8552e75f21 merge error code fix from RC_1_0 2014-07-20 20:49:56 +00:00
Arvid Norberg 6bd58da567 handle EOF error on windows when checking 2014-07-20 09:27:02 +00:00
Arvid Norberg cd456964ad storage fixes 2014-07-20 08:59:02 +00:00
Arvid Norberg d2fccd8ae7 merged resume data fix from RC_1_0 2014-07-15 03:23:43 +00:00
Arvid Norberg 65bb1d0006 pass all the arguments to peer connections as an argument pack 2014-07-14 04:32:41 +00:00
Arvid Norberg 01640e1682 separate stats counters from session_interface (this was the main use of m_ses in peer connections) 2014-07-13 04:56:53 +00:00
Arvid Norberg ddc406f853 mark up a few more places to make the resume-data dirty 2014-07-12 22:03:29 +00:00
Arvid Norberg c8e8eb6e15 some asserts in disk_io_thread. fix issue in torrent::initialize 2014-07-12 19:23:31 +00:00
Arvid Norberg 7351389ce8 land libtorrent_aio branch in trunk 2014-07-06 19:18:00 +00:00
Arvid Norberg 6ef1b98717 merged compiler warning fixes from RC_1_0 2014-07-05 14:10:25 +00:00
Arvid Norberg 6c6fe4dfe2 merged fixes of warnings from RC_1_0 2014-07-04 23:40:31 +00:00
Arvid Norberg 28fb774383 initialize pad files to priority 0 by default 2014-06-29 01:24:51 +00:00
Arvid Norberg 6043e14131 remove pch.hpp 2014-06-28 23:45:46 +00:00
Arvid Norberg 2b7bef0f7b fix support for web servers not supporting keepalive 2014-06-15 18:02:59 +00:00
Arvid Norberg 6ed95d7f82 support storing save_path in resume data 2014-06-12 22:39:41 +00:00
Arvid Norberg 3f693255c8 merged lsd fix from RC_0_16 2014-06-11 16:30:34 +00:00
Arvid Norberg 6d07af3b57 merge bitfield issue fix from RC_0_16 2014-06-11 08:32:24 +00:00
Arvid Norberg e291ab3290 minor streaming improvements 2014-06-08 21:15:34 +00:00
Arvid Norberg 647cda2934 merge streaming fix from libtorrent_aio 2014-06-06 15:27:44 +00:00
Arvid Norberg 2125efbbd8 merged streaming changes from libtorrent_aio into trunk 2014-06-06 01:26:18 +00:00
Arvid Norberg 64c09e7607 support for older boost versions 2014-05-25 00:13:17 +00:00
Arvid Norberg ea77427e07 added clear_piece_deadlines() to remove all piece deadlines 2014-05-23 02:23:11 +00:00
Arvid Norberg 283b74ae55 downloaders only consider download threshold and seeds only consider upload thresholds, for determining whether a torrent is considered inactive or not 2014-05-18 23:42:10 +00:00
Arvid Norberg a1e7d3229d improve queuing logic of inactive torrents (dont_count_slow_torrents) 2014-05-18 22:17:51 +00:00
Arvid Norberg b16dc66df2 using certificates from buffers instead of files is only available in boost 1.54 and later 2014-05-12 04:30:19 +00:00
Arvid Norberg aef1335e76 add overload to set certificate by buffer, not just by path to a file 2014-05-10 21:53:50 +00:00
Arvid Norberg e225259481 fix some msvc warnings 2014-05-10 03:23:05 +00:00
Arvid Norberg 474e77039f removed set_ratio feature 2014-05-03 17:11:55 +00:00
Arvid Norberg 78565e95ce fix darwin clang build 2014-05-02 07:15:47 +00:00
Arvid Norberg f037704539 clean up peer-id in bt_peer_connection (for privacy mode) and reduce dependency on session 2014-04-22 23:37:21 +00:00
Arvid Norberg 3192e59a1a improve piece_deadline/streaming 2014-04-22 04:21:14 +00:00
Arvid Norberg b0996ef855 merged fix from RC_0_16 2014-04-16 07:12:30 +00:00
Arvid Norberg 9e94a73ddd support web seeds in magnet links 2014-04-15 09:31:28 +00:00
Arvid Norberg 1afa9db689 merged proxy fix for adding .torrent file by URL from RC_0_16 2014-04-06 05:07:10 +00:00
Arvid Norberg 1c954451ff seed mode fixes 2014-03-13 08:00:53 +00:00
Arvid Norberg e041c06053 report progress as 1.0 and every byte downloaded when in seed mode 2014-03-11 21:26:01 +00:00
Arvid Norberg 3c47177bfe merged changes from RC_0_16 2014-03-07 19:19:17 +00:00
Arvid Norberg b889bc6dc6 minor logging improvement 2014-03-07 09:38:49 +00:00
Arvid Norberg a0a41b6c5e merged file priority fix from RC_0_16 and keep the disk thread's file priorities up to date 2014-02-28 10:19:29 +00:00
Arvid Norberg a943fec777 update copyright 2014-02-23 19:12:25 +00:00
Arvid Norberg a71fbc4f68 include reason in peer_blocked_alert 2014-02-07 17:35:56 +00:00
Arvid Norberg 57489489ab fixed verbose logging format string issue 2014-01-26 09:17:59 +00:00
Arvid Norberg f0d1e8636c extend verbose logging to try to catch test_priority failure on windows 2014-01-26 04:45:49 +00:00
Arvid Norberg ce2805a258 merged lt_tex fix from RC_0_16 2014-01-26 01:17:58 +00:00
Arvid Norberg 60af1aa451 update peer ranks when our external IP changes 2014-01-23 03:31:36 +00:00
Arvid Norberg e0644ce8f5 invariant check macro fixes 2014-01-21 19:26:09 +00:00
Arvid Norberg ca132efeb1 fix issue in torrent::bytes_left 2014-01-21 01:52:01 +00:00
Arvid Norberg fec7407461 send implied_port in dht announce messages when uTP is enabled 2014-01-20 06:35:06 +00:00
Arvid Norberg 4ac670de5c remove outdated todo comment 2014-01-20 05:41:24 +00:00
Arvid Norberg dca3f3c1a8 improve SSL error reporting and fix torrent_info::ssl_cert() bug 2014-01-20 01:01:03 +00:00
Arvid Norberg 702b68ecc4 clean up assert related defines and debuf-only fields less error-prone. fix missing initialization in file_pool caused by mistake in defines under which the debug field was initialized 2014-01-19 19:45:50 +00:00
Arvid Norberg f26df6cbfa allow force_announce to only affect a single tracker 2014-01-02 02:16:31 +00:00
Arvid Norberg 31e6d54ad2 torrent_handle::torrent_file returns a const torrent_info pointer 2014-01-01 21:24:15 +00:00
Arvid Norberg dc2243c17e add moving_storage field to torrent_status 2014-01-01 02:04:26 +00:00
Arvid Norberg 4e6b1cfbfb update copyright 2013-12-25 17:07:16 +00:00
Arvid Norberg d0d92a207e disable invariant check when TORRENT_DISABLE_INVARIANT_CHECKS is defined 2013-12-18 07:15:16 +00:00
Arvid Norberg 4f189e921d mark some expensive parts of invariant checks as expensive and disabled by default. introduce undead_peers to destruct all peer_connections in the network thread. they hang around while waiting for all outstanding disk jobs to complete. make the asio-debugging output a bit prettier 2013-12-05 07:42:32 +00:00
Arvid Norberg a05103154b remove debug logging to print field offsets and struct sizes 2013-12-02 10:00:03 +00:00
Arvid Norberg 356332a93b make comparison function strict weak ordering 2013-12-02 09:39:17 +00:00
Arvid Norberg d9dca62f1e fix verbose logging build 2013-11-29 22:53:17 +00:00
Arvid Norberg fc2fc8dfb2 fix initialization order warnings. pack peer_connection and torrent 2013-11-26 07:47:48 +00:00
Arvid Norberg 311ef5d3a4 merged auto-manage fix from RC_0_16 2013-11-24 09:03:22 +00:00
Arvid Norberg d64d12e50d merge test_read_piece from RC_0_16 2013-11-24 01:32:51 +00:00
Arvid Norberg 4521b8c902 fix checking issue with most pieces set to priority 0 2013-11-10 08:00:53 +00:00
Arvid Norberg 6136776097 merged fix from RC_0_16 2013-11-09 06:51:11 +00:00
Arvid Norberg 236acfce27 merged completed-on fix from RC_0_16 2013-11-04 01:32:16 +00:00
Arvid Norberg 90e7a4c9e3 merged some rate limiter polish from libtorrent_aio 2013-11-02 03:26:53 +00:00
Arvid Norberg 146fee37e9 merged fix from RC_0_16 2013-10-27 23:56:45 +00:00
Arvid Norberg aa4064316e add info_hash to torrent_delete_failed_alert 2013-10-27 23:39:24 +00:00
Arvid Norberg e8db4fe67a make test_torrent cheaper 2013-10-20 08:06:18 +00:00
Arvid Norberg 6542795d0a improved support for web seeds that don't support keep-alive 2013-10-20 02:40:43 +00:00
Arvid Norberg fb60de086b merge some cleanup and fixes from libtorrent_aio 2013-10-12 06:03:19 +00:00
Arvid Norberg 9d02b478a6 fix invalid read passed the allocation of peer_info in web_seed_entry 2013-10-04 04:20:50 +00:00
Arvid Norberg 2df72d276e when evicting peers waiting to establish connection, evict the ones that have been trying for the longest first 2013-09-14 21:47:31 +00:00
Arvid Norberg 908e29957e include error code in metadata failure alert 2013-09-14 10:09:30 +00:00
Arvid Norberg f1f89123e8 don't count pad-files as partial download pieces in the piece picker. prioritize which immutable dht items to keep also based on distance from our ID. remove some todo comments that probably should not be done 2013-09-14 10:08:31 +00:00
Arvid Norberg a780b8469d abstract generic_category() to build on boost-1.42 and older. fix some include issues in tests 2013-09-09 07:06:12 +00:00
Arvid Norberg f3684db153 added some documentation 2013-09-01 17:34:05 +00:00
Arvid Norberg 3afe6c23a0 merged tracker key patch from RC_0_16 2013-08-31 21:06:43 +00:00
Arvid Norberg b6083fbc28 first steps towards supporting SSL over uTP. moved the TODO comment and made it describe the next step. Optimized session destruction in unit tests, hopefully shaving off a bit of test run-time (and now supports asio-debugging of unit tests) 2013-08-31 20:19:03 +00:00
Arvid Norberg 6a47271667 merge fix for deleting files from libtorrent_aio 2013-08-22 05:27:45 +00:00
Arvid Norberg 1afc0c6740 a bunch of fixes to make test_web_seeds a lot faster, and fail slightly fewer tests 2013-08-19 03:54:45 +00:00
Arvid Norberg 1b60710493 support extensions removing torrents in tick() 2013-08-15 06:10:41 +00:00
Arvid Norberg 3bd53f88ef fix build with internal_file_entry being deprecated without deprecated functions 2013-08-12 07:30:57 +00:00
Arvid Norberg 49aba26f5c merged shutdown fix from libtorrent_aio 2013-08-12 00:51:49 +00:00
Arvid Norberg 6abfce3970 move torrent_status documentation into the header 2013-08-07 06:37:51 +00:00
Arvid Norberg beae6cece0 merged ssl fix from RC_0_16 2013-07-28 15:06:28 +00:00
Arvid Norberg 2599acf451 merged time critical pieces improvement from RC_0_16 2013-07-27 17:43:34 +00:00
Arvid Norberg 9c9135bfc4 don't use pointers to resume_data and file_priorities in add_torrent_params 2013-07-17 20:21:48 +00:00
Arvid Norberg 6bc908fd49 merged anonymous mode fix from RC_0_16 2013-06-12 07:57:13 +00:00
Arvid Norberg a75a0581e3 improve error message for listen_failed_alert 2013-06-04 00:35:42 +00:00
Arvid Norberg fb81f96626 merge runtime-checks instead of asserts fix from RC_0_16 2013-05-29 03:30:33 +00:00
Arvid Norberg d96ddfad9a merged fix from RC_0_16 2013-05-20 08:05:39 +00:00
Arvid Norberg 360c6a6e16 introduced a new alert torrent_update_alert, for when a torrent_handle changes info-hash 2013-05-17 03:19:23 +00:00
Arvid Norberg 982a14c2e9 extend move_storage functionality to have more flexible behavior 2013-05-09 02:50:16 +00:00
Arvid Norberg 07984fa5e0 back port uninitialized variable access fix from libtorrent_aio 2013-03-18 05:46:08 +00:00
Arvid Norberg 8d8d160b35 a bit more robust error messaging when deleting files in a torrent 2013-03-17 00:50:33 +00:00
Arvid Norberg d52a1f8c0a simplify logic for sending torrent_finished_alert and fix incorrect assert 2013-03-16 22:16:58 +00:00
Arvid Norberg b07e7d8fe9 include name, save_path and torrent_file in torrent_status, for improved performance 2013-03-02 23:17:48 +00:00
Arvid Norberg ba6770ccd8 more torrent parsing unit tests 2013-02-26 05:57:29 +00:00
Arvid Norberg a0caa0f4b2 disable invariant_check functions when invariant checks are disabled 2013-02-25 04:13:46 +00:00
Arvid Norberg 6faec32ebc don't send ipv4 and ipv6 to trackers 2013-02-24 01:00:20 +00:00
Arvid Norberg 8d9fa465d2 merge need_save_resume patch from RC_0_16 2013-02-20 08:10:31 +00:00
Arvid Norberg 86a2569728 separate anonymous mode and force-proxy mode, and tighten it up a bit 2013-02-19 06:48:53 +00:00
Arvid Norberg b96b7067ba merged time critical piece fix from RC_0_16 2013-02-17 04:07:30 +00:00
Arvid Norberg e45c71dd30 merged sparse file fix from RC_0_16 2013-02-16 08:26:55 +00:00
Arvid Norberg 6adbd75db8 merged streaming fix from RC_0_16 2013-02-11 05:39:03 +00:00
Arvid Norberg 0951219ab6 simplify the accounting of active_download and active_finished torrents 2013-02-09 05:56:31 +00:00
Arvid Norberg 7607f20e2a add per-tracker scrape information to announce_entry 2013-02-04 07:17:31 +00:00
Arvid Norberg 327626b830 merged name resolver fix from RC_0_16 2013-02-02 23:59:11 +00:00
Arvid Norberg 2aacf1cd66 report errors in read_piece_alert 2013-01-29 02:18:32 +00:00
Arvid Norberg ac5743cfbe respond with read_piece_alerts for time-critical pieces when checking as well 2013-01-28 07:42:51 +00:00
Arvid Norberg ff81a258af merged read_piece response for cancelled time-critical pieces, from RC_0_16 2013-01-28 07:27:44 +00:00
Arvid Norberg 42ee2869b1 merged file priority fix from RC_0_16 2013-01-28 04:57:35 +00:00
Arvid Norberg 5b3a075387 polish peer-ranking feature 2013-01-28 02:13:25 +00:00
Arvid Norberg bca1d62bbe merged close_redundant_connections fix from RC_0_16 2013-01-27 21:25:06 +00:00
Arvid Norberg a35c32bc51 merged change from RC_0_16 2013-01-25 06:22:42 +00:00
Arvid Norberg 13f2ae1154 fix resume torrent issue 2013-01-22 02:12:18 +00:00
Arvid Norberg 2c3e4703fb merged torrent_handle::status fix from RC_0_16 2013-01-21 16:01:48 +00:00
Arvid Norberg 1bfa04eabc merged fix from RC_0_16 2013-01-21 10:16:34 +00:00
Arvid Norberg 652bf8323b prioritize some more todo mark-ups 2013-01-21 01:40:59 +00:00
Arvid Norberg f1b8582a95 add gen_todo.py script. include todo.html and mark up some todos in the code with priority 2013-01-20 23:21:53 +00:00
Arvid Norberg d6279c86e3 fix dht announce prioritization 2013-01-20 19:54:54 +00:00
Arvid Norberg aa9918a602 widen some fields in torrent 2013-01-20 08:36:34 +00:00
Arvid Norberg 8f682d2ff7 merged string encoding of error messages fix from RC_0_16 2013-01-19 06:39:32 +00:00
Arvid Norberg c87d26635b merged error handling fix from RC_0_16 2013-01-13 22:35:19 +00:00
Arvid Norberg 38d7e58177 merge checking fix from RC_0_16 2013-01-06 04:53:26 +00:00
Arvid Norberg e45124fc22 back-port heavy weight refcount invariant checking from libtorrent_aio (disabled by default). and also backport piece-picker refcounting bug fix 2013-01-06 04:02:29 +00:00
Arvid Norberg 5afa8c88b9 fix issues introduced with connection ordering 2013-01-02 07:48:09 +00:00
Arvid Norberg 3d0e5484ee fix build 2013-01-01 19:15:41 +00:00
Arvid Norberg ac5a9e9882 introduce global connection priority for improved swarm performance 2012-12-31 06:54:54 +00:00
Arvid Norberg e2d14078ec make files deleted alert non-discardable 2012-12-23 07:01:50 +00:00
Arvid Norberg 65e02c23e8 improve support for loading torrents out of resume files 2012-11-08 02:07:10 +00:00
Arvid Norberg 5d21c6a1f4 merged fix from libtorrent_aio 2012-11-04 03:08:43 +00:00
Arvid Norberg f3ec86169e merged swarm startup optimization from libtorrent_aio 2012-11-03 03:50:12 +00:00
Arvid Norberg 0327c73263 merged fix RC_0_16 2012-11-02 04:34:17 +00:00
Arvid Norberg 16630f94d1 merged fixes from RC_0_16 2012-10-21 20:24:14 +00:00
Arvid Norberg 8ba970018c make bottled http requests response size limit configurable and bump default to 2 MiB 2012-10-19 01:28:47 +00:00