Commit Graph

4192 Commits

Author SHA1 Message Date
Arvid Norberg d7bef3dbf9 merged fix from RC_0_16 2012-12-31 03:12:11 +00:00
Arvid Norberg e2d14078ec make files deleted alert non-discardable 2012-12-23 07:01:50 +00:00
Arvid Norberg 806b7c85eb fix minor issue 2012-12-22 01:29:55 +00:00
Arvid Norberg 6ef8f5cfce merged bumped alert queue size 2012-12-16 17:46:20 +00:00
Arvid Norberg 0a07f75ee0 merged visibility fix from RC_0_16 2012-12-15 05:09:11 +00:00
Arvid Norberg 1422f5a1ba merged logging fix from RC_0_16 2012-12-15 02:50:47 +00:00
Arvid Norberg 40805503d6 merged python binding fix from RC_0_16 2012-12-14 04:38:44 +00:00
Arvid Norberg 70740a0ecd merged connection_queue patch from RC_0_16 2012-12-10 08:46:14 +00:00
Arvid Norberg 27db5e3f49 use random() instead of rand() 2012-12-10 08:08:20 +00:00
Arvid Norberg 5a23ca5855 add some asserts to utp_stream.cpp 2012-12-10 08:07:50 +00:00
Arvid Norberg fc0b5da9ad make built-in sha functions not conflict with libcrypto 2012-12-10 08:05:39 +00:00
Arvid Norberg fae3d23e27 merged minor IPv6 fix from libtorrent_aio 2012-12-02 17:58:32 +00:00
Arvid Norberg 00c1017f16 minor optimization in file_storage::map_file 2012-11-29 06:44:03 +00:00
Arvid Norberg 81ccc1e2e0 remove unused member in udp_tracker_connection 2012-11-29 06:27:25 +00:00
Arvid Norberg 205d70da3c merged uTP fix from RC_0_16 2012-11-25 07:03:37 +00:00
Arvid Norberg 08454e518a merged magnet link changes from RC_0_16 2012-11-23 16:10:26 +00:00
Arvid Norberg 614ac10de1 merged calling convention fix from RC_0_16 2012-11-23 15:34:44 +00:00
Arvid Norberg 8ebe11067f merged peerlist fix from RC_0_16 2012-11-21 20:42:40 +00:00
Arvid Norberg 6a3ee5a7cf whenever checking for EWOULDBLOCK, also check for EAGAIN 2012-11-20 02:08:12 +00:00
Arvid Norberg e23e417ef9 fix race condition in destroyed uTP socket that was waiting for the underlying udp socket to become writable 2012-11-20 01:58:09 +00:00
Arvid Norberg d2f72f50cc merged IPV6_V6ONLY fix from RC_0_16 2012-11-19 04:58:46 +00:00
Arvid Norberg f12e1c1a3f merged DHT fix from RC_0_16 2012-11-16 22:25:39 +00:00
Arvid Norberg e4bb337b49 merged utp fix from RC_0_16 2012-11-14 04:53:29 +00:00
Arvid Norberg 5b26d5d962 merged utp_socket_manager optimization from libtorrent_aio 2012-11-12 09:49:00 +00:00
Arvid Norberg 58d5b9aedc merged alert fix from libtorrent_aio 2012-11-12 06:08:06 +00:00
Arvid Norberg 52b205e6cb merged fix from RC_0_16 2012-11-11 05:07:19 +00:00
Arvid Norberg 816f405a15 make hash_value work on expired torrent_handles 2012-11-10 19:50:10 +00:00
Arvid Norberg 85cda6cf53 fixed logging build 2012-11-09 17:11:42 +00:00
Arvid Norberg 99e3fbaed5 merged utp performance fix from RC_0_16 2012-11-08 09:16:40 +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 37f3a70da0 fixed build with no deprecated functions 2012-11-02 16:48:18 +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 f61b95f782 fix preprocessor typo 2012-10-21 15:19:23 +00:00
Arvid Norberg 281b7d4768 merged udp_socket fix from RC_0_16 2012-10-21 03:56:22 +00:00
Arvid Norberg 63532b2c9b the sack header needs to be removed from a nagle packet or a re-sent packet if there are no longer any unordered incoming packets 2012-10-20 14:53:54 +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
Arvid Norberg 01f70bfd84 add session logging function 2012-10-18 15:14:18 +00:00
Arvid Norberg 158f59cb22 merged fix from RC_0_16 2012-10-18 07:42:15 +00:00
Arvid Norberg 3a2da49516 udp_socket fix 2012-10-18 07:34:39 +00:00
Arvid Norberg ed4dfbc8fb use session_log function rather than iostream for session logging 2012-10-18 07:32:16 +00:00
Arvid Norberg 7f28c05161 merged udp tracker fix from RC_0_16 2012-10-17 15:54:38 +00:00
Arvid Norberg e4f15a2223 merged uTP fix from RC_0_16 2012-10-15 06:20:42 +00:00
Arvid Norberg 6d7e9e4521 remove some iostream dependencies 2012-10-12 04:50:34 +00:00
Arvid Norberg b3ad105145 merged ssl fix from RC_0_16 2012-10-10 05:52:08 +00:00
Arvid Norberg 3555b01b85 merged utp_socket and simultaneous connections fix from RC_0_16 2012-10-10 04:40:18 +00:00
Arvid Norberg 09d7a49ad7 merged lsd patch from RC_0_16 2012-10-09 04:51:04 +00:00
Arvid Norberg 971aea19e7 merged local service discovery logging from RC_0_16 2012-10-09 04:16:37 +00:00
Arvid Norberg 9ed60479ce merged udp socket fix from RC_0_16 2012-10-07 23:34:44 +00:00
Arvid Norberg 3bf462f858 merged resume data fix from RC_0_16 2012-10-07 20:25:15 +00:00
Arvid Norberg 0a6c1e05c2 merged web seed fix from RC_0_16 2012-10-07 02:30:10 +00:00
Arvid Norberg 35032a6950 merge verbose logging feature from libtorrent_aio 2012-10-06 23:45:36 +00:00
Arvid Norberg b81d1bfe08 merged web seed fix from RC_0_16 2012-10-06 17:51:59 +00:00
Arvid Norberg f5972efe9f merged finished alert asserts from libtorrent_aio 2012-10-06 17:50:06 +00:00
Arvid Norberg 83754b3427 merged post_torrent_updates assert from libtorrent_aio 2012-10-06 14:31:14 +00:00
Arvid Norberg 24103c6603 include info-hash in verbose logs filenames 2012-10-06 00:33:10 +00:00
Arvid Norberg e44225cb57 merged uTP fix from RC_0_16 2012-10-05 03:20:40 +00:00
Arvid Norberg 5bc322c031 merged get_torrent_info deprecation from libtorrent_aio, replaced by torrent_file() 2012-10-02 16:07:55 +00:00
Arvid Norberg bff648a89e update copyright dates and add tool to do so 2012-10-02 03:16:33 +00:00
Arvid Norberg 4270ece01a merge fix from RC_0_16 2012-10-01 02:19:00 +00:00
Arvid Norberg acdb647eca merged udp tracker fix from RC_0_16 2012-10-01 00:13:58 +00:00
Arvid Norberg d181b2e057 merge pad_file_at optimization from libtorrent_aio 2012-09-30 20:55:12 +00:00
Arvid Norberg 32b4b5926a merged fix from RC_0_16 2012-09-30 19:35:08 +00:00
Arvid Norberg 37ec1af926 add TODO comment 2012-09-30 15:38:37 +00:00
Arvid Norberg c56901e864 improve web seed hash failure mode 2012-09-29 17:46:41 +00:00
Arvid Norberg d09495d218 merged boost.date_time linking from RC_0_16 2012-09-28 03:50:34 +00:00
Arvid Norberg 13bbb936ee fix format string typo 2012-09-28 00:18:54 +00:00
Arvid Norberg 4ea4d32554 merge active_tracker_limit increase and logging polish from RC_0_16 2012-09-27 23:50:15 +00:00
Arvid Norberg 5e2ff1a246 merged logging cleanup from RC_0_16 2012-09-27 23:04:51 +00:00
Arvid Norberg 19e4cbec46 merged udp socket fix 2012-09-27 17:39:41 +00:00
Arvid Norberg 2f985de420 merge uTP slow start fix from RC_0_16 2012-09-26 01:27:58 +00:00
Arvid Norberg 28e32b57b6 merged UDP socket fix from RC_0_16 2012-09-25 18:57:50 +00:00
Arvid Norberg 56248845ef some DHT fixes + cleanup 2012-09-25 18:47:04 +00:00
Arvid Norberg 0a90844407 merged logging improvement from RC_0_16 2012-09-25 02:49:40 +00:00
Arvid Norberg b8149ead5c OS/2 (eCS) support 2012-09-24 16:13:57 +00:00
Arvid Norberg e77d8cfe7a merged fix from libtorrent_aio 2012-09-23 04:56:08 +00:00
Arvid Norberg 7640414cf2 merged dht fixes from libtorrent_aio 2012-09-23 03:49:04 +00:00
Arvid Norberg d098e49059 merged DHT feature from libtorrent_aio 2012-09-22 21:40:16 +00:00
Arvid Norberg 055f8a0598 merged DHT optimization from libtorrent_aio 2012-09-22 18:15:29 +00:00
Arvid Norberg fdb89b6d7b new, proper, udp tracker extension 2012-09-18 02:03:24 +00:00
Arvid Norberg 0ec16827ff fix invariant check 2012-09-11 05:27:14 +00:00
Arvid Norberg f8f03431bb fix mingw build 2012-09-08 19:21:31 +00:00
Arvid Norberg 9951724f16 back-ported add_torrent_params extension from libtorrent_aio 2012-08-31 17:04:02 +00:00
Arvid Norberg 52f679d5dc add file_name() to file_storage 2012-08-31 02:31:37 +00:00
Arvid Norberg 64a56e4581 merged fix from RC_0_16 2012-08-30 01:54:35 +00:00
Arvid Norberg 33233963eb merged fix from RC_0_16 2012-08-29 01:58:06 +00:00
Arvid Norberg f877c8b7f5 merge fix from RC_0_16 2012-08-27 05:39:34 +00:00
Arvid Norberg fdc25967c2 merged string function cleanup from RC_0_16 2012-08-26 15:26:17 +00:00
Arvid Norberg 2665d2a4e1 file_progress support for magnet links 2012-08-26 06:38:29 +00:00
Arvid Norberg 43e9270363 extend the UDP tracker protocol to include the request string from the tracker URL 2012-08-23 21:02:09 +00:00
Arvid Norberg c60f373ae4 merged mingw fix from RC_0_16 2012-08-21 21:54:07 +00:00
Arvid Norberg daa957454d merged ut_metadata fix from RC_0_16 2012-08-14 16:06:32 +00:00
Arvid Norberg b3e8d86e0c proper web seed stats fix 2012-08-14 05:23:20 +00:00
Arvid Norberg 9bca8ec3f2 fix stats accounting when web seeds include a body 2012-08-14 03:20:53 +00:00
Arvid Norberg cee9b6d5cb PMTUD improvements 2012-08-13 16:49:28 +00:00
Arvid Norberg ceed83afde fixed typo tying file_completed_alert to piece_finished_alert 2012-08-13 03:40:43 +00:00
Arvid Norberg 532e514c00 improve torrent file creator optimizer a bit 2012-08-12 21:18:38 +00:00
Arvid Norberg 3d227a2acc optimized the torrent creator optimizer to scale significantly better with more files 2012-08-12 19:46:24 +00:00
Arvid Norberg 1f32bdab5a fix crash when creating torrents and optimizing file order with pad files 2012-08-12 19:16:20 +00:00
Arvid Norberg a84c5e0e85 disable support for large MTUs in uTP until it is more reliable 2012-08-12 15:54:59 +00:00
Arvid Norberg 9a11c44984 metadata extension fix 2012-08-09 22:30:45 +00:00
Arvid Norberg 0685fb91bd DHT throttling fix 2012-08-03 05:13:40 +00:00
Arvid Norberg e7cc28e9df fix SSL error messages 2012-08-01 15:01:13 +00:00
Arvid Norberg ee3b006c85 fix build with i2p disabled 2012-07-31 16:53:37 +00:00
Arvid Norberg 1b69d6813e merged fix from RC_0_16 2012-07-27 16:35:31 +00:00
Arvid Norberg 135a14ad75 minor uTP fix 2012-07-25 16:14:21 +00:00
Arvid Norberg 8ded061c9e fixed windows ssl shared library build 2012-07-23 16:10:34 +00:00
Arvid Norberg a66332d66f fix DHT logging build 2012-07-23 13:37:23 +00:00
Arvid Norberg ecfb59d1e1 fix udp_socket bug 2012-07-23 05:36:35 +00:00
Arvid Norberg 6aabc14e19 fix memory leak in utp_socket_impl 2012-07-21 14:33:01 +00:00
Arvid Norberg 479f5061b4 asio include fix 2012-07-19 15:41:32 +00:00
Arvid Norberg 1434ed57d9 merged metadata extension improvement from libtorrent_aio 2012-07-18 03:27:50 +00:00
Arvid Norberg 97572cb861 fix connection queue timeout logic 2012-07-16 13:59:26 +00:00
Arvid Norberg 0657690b1c attempt at fixing shutdown hang caused by connection_queue 2012-07-15 23:22:23 +00:00
Arvid Norberg db33922684 merged shutdown delay fix from libtorrent_aio 2012-07-15 02:30:13 +00:00
Arvid Norberg 9f4697a11b merged udp_socket fix from libtorrent_aio 2012-07-15 02:16:02 +00:00
Arvid Norberg 8554f97486 revert shutdown hang fix 2012-07-15 01:36:56 +00:00
Arvid Norberg 377bba90fb merged connection_queue_fix from libtorrent_aio 2012-07-14 22:49:29 +00:00
Arvid Norberg 2a08bb5feb fix shutdown hang issue in connection queue 2012-07-14 20:37:31 +00:00
Arvid Norberg a62a2a5b6c merged linux permission issue fix from RC_0_16 2012-07-13 04:04:56 +00:00
Arvid Norberg 3d7dc768da use random peer IDs in anonymous mode 2012-07-08 22:47:25 +00:00
Arvid Norberg a348eae42d don't save excessive number of peers in the resume data 2012-07-04 21:33:04 +00:00
Arvid Norberg 7c7b927e07 improve connection distribution fairness between torrents 2012-07-04 20:41:22 +00:00
Arvid Norberg bdada3766a peer disconnect fix 2012-07-04 16:13:20 +00:00
Arvid Norberg 796b1b98c3 attempt to make separate compilation of boost.asio work on windows, mac and linux without pulling in a dependency on boost.date_time. This is a hack until boost.asio has an option to disable use of boost.date_time 2012-07-04 16:05:31 +00:00
Arvid Norberg 1c2b7471cb fix one more issue with end-game mode when some pieces that are no longer selected for download have been downloaded 2012-07-02 03:27:32 +00:00
Arvid Norberg bd4f173bc5 fix uTP edge case where udp socket buffer fills up 2012-07-01 18:44:46 +00:00
Arvid Norberg 96aa1f162b fix for udp_socket observers and some dht warning fixes 2012-06-30 15:30:38 +00:00
Arvid Norberg 7d489eb2bc boost 1.49 support with custom separate compilation of asio on windows 2012-06-30 15:29:17 +00:00
Arvid Norberg 4860805c81 fix logging build 2012-06-30 15:05:31 +00:00
Arvid Norberg 2f26d62f1c one more utp fix 2012-06-30 08:06:20 +00:00
Arvid Norberg f403b5f3c8 fix move_storage bugs 2012-06-29 23:35:11 +00:00
Arvid Norberg 8fffb4bb35 pmtud fix 2012-06-29 19:40:27 +00:00
Arvid Norberg d4d53e6a5a fix windows build 2012-06-29 05:41:30 +00:00
Arvid Norberg df10b45ecc fix unnecessary dependency on boost.date_time that came from building asio as separate compilation 2012-06-28 16:59:57 +00:00
Arvid Norberg 4a2c799a1a always use SO_REUSEADDR and deprecate the flag to turn it on 2012-06-28 06:51:18 +00:00
Arvid Norberg a583c2fe88 fix uTP NAGLE algorithm some more (seems stable now) 2012-06-28 03:53:52 +00:00
Arvid Norberg a5985f2758 minor fix 2012-06-27 01:13:50 +00:00
Arvid Norberg 1419b5c14c some more asserts in utp 2012-06-26 23:52:48 +00:00
Arvid Norberg 5797430b4a fix invalid NAGLE assert 2012-06-26 04:10:53 +00:00
Arvid Norberg c6b368a763 add invariant check to utp_socket_impl 2012-06-26 03:42:01 +00:00
Arvid Norberg aeea1cd2af fix to new NAGLE implementation 2012-06-26 03:41:04 +00:00
Arvid Norberg f2d9472842 move tracker default interval logic to make sense 2012-06-26 03:35:31 +00:00
Arvid Norberg a4091ff1a1 add comment 2012-06-26 03:34:42 +00:00
Arvid Norberg 671206838a fixed compiler warning 2012-06-25 15:34:56 +00:00
Arvid Norberg 57769bab11 fix some compiler warnings 2012-06-25 14:17:51 +00:00
Arvid Norberg e51e953cb9 fix nagle implementation in uTP 2012-06-25 06:27:37 +00:00
Arvid Norberg dad544dfd0 tighten up the cwnd saturating timeout rule for allowing increasing cwnd 2012-06-25 06:05:28 +00:00
Arvid Norberg 6be3357759 improve some uTP logging 2012-06-25 05:57:59 +00:00
Arvid Norberg c24b372191 never set cwnd to less than mtu on time-out 2012-06-25 05:39:36 +00:00
Arvid Norberg 34694bf91f log packet sizes at the normal logging level in uTP and also parse it out in parse_utp_log.py 2012-06-25 05:38:29 +00:00
Arvid Norberg 4ddbe44a0d fix bug in the udp socket observer use for DHT and add debug facilily for the observers 2012-06-25 03:31:11 +00:00
Arvid Norberg 24746bf54f release asserts fix 2012-06-24 22:55:48 +00:00
Arvid Norberg 60f501ca5d avoid incorrect assert in the DHT 2012-06-24 22:53:15 +00:00
Arvid Norberg 142786d6ed fix end-game mode when filtering pieces (i.e. deselecting files for download) 2012-06-24 20:57:31 +00:00
Arvid Norberg 3f1bfb5477 fix linux build and make use of the system INT64_MAX define 2012-06-24 19:50:49 +00:00
Arvid Norberg b728037ec3 deprecate delayed_ack setting 2012-06-23 06:04:46 +00:00
Arvid Norberg 7351f68b98 fix build with verbose logging and missing INT64_MAX on msvc 2012-06-23 05:46:51 +00:00
Arvid Norberg d73bbf5053 clean up the udp socket and its consumers by adding an observer interface and have the udp tracker, utp socket manager and dht tracker subscribe to it instead of going through the session_impl. This probably improves performance a tiny bit but primarily improves modularization and testability 2012-06-22 04:21:20 +00:00
Arvid Norberg 98737a2c4d disable uTP logging 2012-06-21 16:47:13 +00:00
Arvid Norberg 351e34f9d1 polish uTP slow start 2012-06-21 16:41:05 +00:00
Arvid Norberg 2b9b2a188a remove uTP delayed ack and instead send acks when the udp socket has been drained. simplify the udp socket to use null_buffers and allocate less memory for buffers. this also eliminated the race condition when resizing the udp socket receive buffer which greatly simplified it 2012-06-21 15:05:57 +00:00
Arvid Norberg 3c0e7e0a4a keep counters of the number of active downloading and finished torrents in order to have a cheap way of prioritizing peer connections for downloading torrents over finished ones 2012-06-21 03:51:39 +00:00
Arvid Norberg 1b2805118d make uTP less aggressive resetting cwnd when idle 2012-06-16 02:16:45 +00:00
Arvid Norberg b623d952e6 fix build without deprecated functions 2012-06-14 15:16:59 +00:00
Arvid Norberg e19f1d8efe fix msvc-8 debug build 2012-06-14 15:08:21 +00:00
Arvid Norberg f5e89fae4c fix msvc 2003 build issue 2012-06-14 05:38:56 +00:00
Arvid Norberg fa1c071c2f merged fixes from RC_0_16 2012-06-09 04:48:53 +00:00
Arvid Norberg 74ed648894 fixed typo in verbose logging code 2012-06-09 00:42:38 +00:00
Arvid Norberg e94963d085 fixed crash when providing corrupt resume data 2012-06-08 15:44:13 +00:00
Arvid Norberg dbf6b0a02c fix bandwidth limiter issue for incoming connections (not associated with a torrent) 2012-06-08 04:28:37 +00:00
Arvid Norberg 40284b2b99 update dht_sec definition 2012-06-07 16:29:20 +00:00
Arvid Norberg d6a53200a2 add a force-flag to cancel_request 2012-06-06 16:05:25 +00:00
Arvid Norberg 2be5513be7 and the typo in trunk as well 2012-06-05 04:20:10 +00:00
Arvid Norberg ccfaa0327e merged fix from 0.16 2012-06-05 03:35:15 +00:00
Arvid Norberg 985d96f237 possible fix to http downloader error in web_peer_connection.cpp 2012-06-05 03:12:36 +00:00
Arvid Norberg f49bc42cae added missing license headers 2012-06-04 06:30:45 +00:00
Arvid Norberg 49a1398fe5 update dht_sec specification and the dht code 2012-05-31 02:16:44 +00:00
Arvid Norberg f2c89cd770 merged fix from R_0_16 2012-05-27 18:17:51 +00:00
Arvid Norberg db500b674b merged boost-1.44 fix from RC_0_16 2012-05-26 16:21:15 +00:00
Arvid Norberg 1df53aa819 fixed reversed semantics of queue_up() and queue_down() 2012-05-23 15:18:30 +00:00
Arvid Norberg 24186f219a fix write cache flush issue 2012-05-23 14:59:56 +00:00
Arvid Norberg 306b467b94 fix add torrent by url 2012-05-19 21:33:42 +00:00
Arvid Norberg ddbae1da86 don't accept incoming uTP connections indefinitely 2012-05-19 20:39:55 +00:00
Arvid Norberg 403c49ac29 factor out removing chunk headers from http streams and fix chunked encoding support when adding torrents by url 2012-05-16 05:32:12 +00:00
Arvid Norberg 19e7546968 fixed low_prio_disk support on linux 2012-05-15 14:13:35 +00:00
Arvid Norberg 5275e75fa5 back-port deletion of the redundant peer_connection constructor from libtorrent_aio 2012-05-14 05:43:45 +00:00
Arvid Norberg cc7ff1606c add unit test for seed optimization in piece picker and make it reliable in the presence of dont-have messages 2012-05-14 04:48:23 +00:00
Arvid Norberg 6a80638014 polish up ifreq support in enum_net_interrfaces 2012-05-13 18:48:10 +00:00
Arvid Norberg 36f7228001 support SIOCGIFCONF returning more interfaces than there's space in the supplied buffer 2012-05-13 04:43:22 +00:00
Arvid Norberg 2ca32646b9 fix build 2012-05-13 04:37:31 +00:00
Arvid Norberg 6737374c59 add aserts to make_time_critical() 2012-05-12 21:22:06 +00:00
Arvid Norberg 32cd6e10b9 SIOCGIFCONF fix 2012-05-12 16:15:36 +00:00
Arvid Norberg e74fc839e9 fixed time critical piece accounting in the request queue 2012-05-12 07:14:07 +00:00
Arvid Norberg 402d6bb6b6 optimize torrent::status to scale better with the number of peers 2012-05-06 22:46:21 +00:00
Arvid Norberg 94ae0e433b fixed semantics of rate_limit_utp to also ignore per-torrent limits 2012-05-06 07:09:49 +00:00
Arvid Norberg 0d7e3cb8c7 uTP timeout fix 2012-05-05 23:54:41 +00:00
Arvid Norberg 7f2f705b49 fixed piece sorting bug of deadline pieces 2012-05-05 19:46:02 +00:00