Commit Graph

1152 Commits

Author SHA1 Message Date
Arvid Norberg c8088459a0 made torrent_info reference counted and held by a boost::intrusive_ptr 2007-09-01 03:00:31 +00:00
Arvid Norberg e248ba0cdc added asserts to make sure the global connection limit is not exceeded 2007-08-27 16:45:45 +00:00
Arvid Norberg aff2869bed fixed recent change to torrent_info.cpp 2007-08-27 16:12:42 +00:00
Arvid Norberg 09429d1871 removed some duplicate data from torrent_info 2007-08-27 07:23:57 +00:00
Arvid Norberg a567f18962 fixed #126 2007-08-27 06:47:08 +00:00
Arvid Norberg bce55bc149 removed expensive invariant checks 2007-08-27 05:32:47 +00:00
Arvid Norberg 86442482d9 piece picker bug fixes 2007-08-27 05:13:09 +00:00
Arvid Norberg b56faf60d1 fixed mutex locking order issue 2007-08-27 01:05:11 +00:00
Arvid Norberg 95129602d9 refactored internal forwarding mechanism for torrent_handle 2007-08-27 00:47:17 +00:00
Arvid Norberg 8b44a25bbb more asserts and tests for the bandwidth_limiter 2007-08-26 23:40:58 +00:00
Arvid Norberg 2b0197e810 initial fix to enable mapping files in torrents to other files on disk. see torrent_info::remap_files 2007-08-25 18:26:43 +00:00
Arvid Norberg b6ee4fddbf fixed uninitialized connection ticket 2007-08-25 14:52:48 +00:00
Arvid Norberg 7f43389f56 removed unused class from storage 2007-08-25 14:51:42 +00:00
Arvid Norberg c0ffdc51c7 piece picker fix and bandwidth_limiter typo fix 2007-08-25 05:09:25 +00:00
Arvid Norberg 6885361466 refactored identify_client 2007-08-24 02:11:41 +00:00
Arvid Norberg bf39ba7d72 added clients to identify_client 2007-08-23 19:10:43 +00:00
Arvid Norberg a5e985ec7c fixed choke bug 2007-08-22 18:50:53 +00:00
Arvid Norberg f7737cae32 reverted [1488] 2007-08-22 18:40:31 +00:00
Arvid Norberg e009834a18 fixed piece_picker bug 2007-08-22 18:38:48 +00:00
Arvid Norberg 7466638231 attempt to fix piece_picker assert 2007-08-22 17:39:57 +00:00
Arvid Norberg 744d96796b made it possible to start torrents in paused state. updated documentation 2007-08-22 05:31:42 +00:00
Arvid Norberg 1399b623bc choke count fixes 2007-08-21 21:51:29 +00:00
Arvid Norberg e074b0a977 removed too expensive invariant checks 2007-08-21 19:18:06 +00:00
Arvid Norberg 847f96d9c3 made policy::has_connection not throw 2007-08-21 19:04:27 +00:00
Arvid Norberg b121386492 piece picker fix 2007-08-21 18:39:44 +00:00
Arvid Norberg 4da3366a27 added invariant checks to session_impl 2007-08-21 18:33:28 +00:00
Arvid Norberg 8ce61ab04a added asserts to piece_picker 2007-08-21 18:17:31 +00:00
Arvid Norberg 23a20a24c1 added more asserts for choke/unchoke states and a peer_info flag to indicate a peer being optimistically unchoked 2007-08-21 17:45:28 +00:00
Arvid Norberg e865852c74 fixes #136 2007-08-21 08:16:41 +00:00
Arvid Norberg a3d4b1bdd9 fixed build problems on windows 2007-08-21 07:33:06 +00:00
Arvid Norberg 1a34478305 another (probably the final) attempt to fix to #133 2007-08-21 06:57:12 +00:00
Arvid Norberg a91b4e9ec3 another attempt to fix to #133 2007-08-21 06:38:27 +00:00
Arvid Norberg b8e48c061e attempt to fix build errors on windows. #134 2007-08-21 04:46:17 +00:00
Arvid Norberg c946afcfab fixed #133 2007-08-21 04:11:00 +00:00
Arvid Norberg 6c50adabfc updated piece_picker fix and added another invariant check to policy 2007-08-21 01:17:42 +00:00
Arvid Norberg a443225d49 added experimental assert with stacktrace for elf targets using gcc 2007-08-20 04:58:56 +00:00
Arvid Norberg e80653152b choked fix 2007-08-19 08:32:39 +00:00
Arvid Norberg da525292fe some more asserts 2007-08-19 08:23:44 +00:00
Arvid Norberg 88cd663895 piece_picker fix 2007-08-17 19:28:21 +00:00
Arvid Norberg c70223ff38 added url seed related functions to torrent_handle 2007-08-17 16:40:55 +00:00
Arvid Norberg 3d3df51d45 fixed per torrent unchoke limit 2007-08-17 07:37:08 +00:00
Arvid Norberg 834873a15e fixed unlimited settings check 2007-08-17 03:43:26 +00:00
Arvid Norberg b341b653cb assertion fix 2007-08-17 02:15:01 +00:00
Arvid Norberg 844c5fa695 fixed makefile 2007-08-17 00:54:51 +00:00
Arvid Norberg 477e5c33f5 fixed makefiles to work with latest source 2007-08-17 00:20:13 +00:00
Arvid Norberg d00ce3b28b optimized policy and removed #warning 2007-08-16 23:53:14 +00:00
Arvid Norberg b05500570c added parenthesis around std::min and std::max for msvc compatibility 2007-08-16 22:14:17 +00:00
Arvid Norberg a3d32dad4c fixed bugs in unchoke change check-in 2007-08-16 22:13:35 +00:00
Arvid Norberg f8979ff932 applied patch from #97 2007-08-16 19:41:28 +00:00
Arvid Norberg 9315851cdf fixed assert in request_a_block. Fixes #125 2007-08-16 19:36:33 +00:00
Arvid Norberg 4ac1ac8a1f removed allocate_resources. switched to a global unchoker and connection distribution 2007-08-16 12:41:46 +00:00
Arvid Norberg b62bb7944f merged fast-extension => trunk. the fast extension branch is now closed 2007-08-14 17:47:48 +00:00
Arvid Norberg a4ad8a6442 fixed issue where file::set_size would update the file modification date even when the size was not changed (fixes #105) 2007-08-11 15:22:06 +00:00
Arvid Norberg 6e78b6b824 optimization to only update peer interests in case a piece was filtered/unfiltered during a priority call 2007-08-10 21:13:35 +00:00
Arvid Norberg 11b63bc93e storage fix 2007-08-10 02:04:26 +00:00
Arvid Norberg b3e29ba8fa added freebsd to the linux path for detecting sparse files support 2007-08-08 23:08:55 +00:00
Arvid Norberg 3f5204aff6 removed some invariant checks that are expensive 2007-08-08 22:38:30 +00:00
Arvid Norberg 4d04588def made libtorrent build on msvc-8 sp1 2007-08-08 21:22:59 +00:00
Arvid Norberg b626bd96d5 reverted fix in 1435 2007-08-08 21:02:35 +00:00
Arvid Norberg 2a9d68376d upnp fixes, improved upnp logging and error handling 2007-08-07 07:59:51 +00:00
Arvid Norberg 5dfba92665 fixed #101 2007-08-07 07:35:21 +00:00
Arvid Norberg 6b86e5faa3 fixed #109 2007-08-07 07:29:51 +00:00
Arvid Norberg 61f713d24a fixed #107 2007-08-07 07:19:35 +00:00
Arvid Norberg 3cdbda928e fixes #104 2007-08-07 07:17:13 +00:00
Arvid Norberg 9f08256dff added support for attributes in the xml parser 2007-08-07 01:32:38 +00:00
Arvid Norberg f7b3433ff8 added check to disallow requests > 16kB (since the buffer pool now requires that limit) 2007-08-03 16:12:32 +00:00
Arvid Norberg be1faccd1d peer_connection fixes for earlier pending disk buffer size limit 2007-08-03 08:19:10 +00:00
Arvid Norberg 8387240b31 more asserts, piece_picker fixes, debug-iterator fixes 2007-08-03 06:13:26 +00:00
Arvid Norberg 192ce4b463 added some extra checks for buffer overrun in disk_io_thread 2007-08-02 01:42:19 +00:00
Arvid Norberg f2a8fe6df7 fixes to prevent incorrect asserts 2007-08-01 15:48:55 +00:00
Arvid Norberg ce8acd0911 added compiler flag to disable inclusion of boost.serialization headers 2007-08-01 07:26:10 +00:00
Arvid Norberg 1973af7779 added alert messages for blocks finishing, pieces finishing and blocks being requested. patch by micah 2007-08-01 06:14:16 +00:00
Arvid Norberg 54aa76f940 exposed queued disk bytes in peer_info 2007-08-01 06:11:11 +00:00
Arvid Norberg 786d4e5f25 added a limit on how many bytes each connection can have pending in the disk write queue 2007-08-01 05:22:34 +00:00
Arvid Norberg 054fa03d9d connection queue fix 2007-07-27 17:41:42 +00:00
Arvid Norberg f67deba30e fixed #81 2007-07-26 07:04:35 +00:00
Arvid Norberg a630756fae more _SECURE_SCL related fixes 2007-07-24 15:48:06 +00:00
Arvid Norberg f89ce2669f fixes #90. adds compact_mode to torrent_status 2007-07-23 04:36:56 +00:00
Arvid Norberg 3050e35adf disabled lsd for private torrents 2007-07-23 00:38:31 +00:00
Arvid Norberg bde5a9be0a fixed intended behavior for async_move_storage (2nd attempt) 2007-07-17 08:33:14 +00:00
Arvid Norberg fa37b9f3df fixed intended behavior for async_move_storage 2007-07-17 08:12:32 +00:00
Arvid Norberg 664abc570b uploads limit fix 2007-07-17 06:39:39 +00:00
Arvid Norberg cf35ec6d9c added asserts to try to catch #84 2007-07-15 19:00:41 +00:00
Arvid Norberg 1acedb39dc prioritize more complete partial pieces over less complete ones 2007-07-15 15:41:55 +00:00
Arvid Norberg 6650a34cfd fixed #83 2007-07-15 14:20:55 +00:00
Arvid Norberg 245793b7a3 applied patch in #79 2007-07-15 05:34:28 +00:00
Arvid Norberg 329f73276f fixed #82 2007-07-15 05:32:56 +00:00
Arvid Norberg 430534bf3f fixed incorrect assert 2007-07-10 18:55:14 +00:00
Arvid Norberg 9bdf2a9c8d fixed invariant check in policy 2007-07-10 17:25:10 +00:00
Arvid Norberg 5e08a9b379 added reiser4 as having sparse files support and improved detection on mac 2007-07-09 23:29:58 +00:00
Arvid Norberg 182c917842 optimized peer_connection by postponing diffie hellman key creation and generation of handhake until the connection has succeeded 2007-07-09 04:22:38 +00:00
Arvid Norberg 4771f323f6 added invariant checks for peer_counter in block_info. added bytes_progress and block_size to block_info (to allow a more detail download progress display). Updated client_test to show download progress per block and also to have a separate color for 'multi blocks' (i.e. blocks that have been requested from more than one peer) 2007-07-08 20:45:42 +00:00
Arvid Norberg e395747e35 fixed piece picker bug 2007-07-08 20:43:44 +00:00
Arvid Norberg a46ef3ece8 changed the handshake 'ip' to 'yourip' 2007-07-07 01:36:40 +00:00
Arvid Norberg 82e1160214 introduced a non-rarest-first option to the piece picker that is used to pick the very first pieces in a torrent 2007-07-07 01:26:30 +00:00
Arvid Norberg 4d912eddf4 added openssl cleanup (to make leak detectors not complain) 2007-07-06 23:06:58 +00:00
Arvid Norberg c536ac1990 peer_connections stats fix. test_sleep fix. improved test_swarm and test Jamfile 2007-07-06 20:17:36 +00:00
Arvid Norberg a3e66a3efe made the piece picker handle multi-request blocks better. fixes problem that might occur at the end of a torrent where the piece picker could take over blocks back and forth 2007-07-06 17:15:35 +00:00
unsh 927985b38a fixed bug in shared secret generation 2007-07-06 09:38:38 +00:00
unsh 1e8b11adb3 updated makefiles for automake 2007-07-06 09:02:27 +00:00
Arvid Norberg f90a80ab05 made piece picker less anal about speed categories, to improve performance 2007-07-05 22:49:28 +00:00
Arvid Norberg 3c69e3b2cb updated asserts 2007-07-04 16:15:46 +00:00
Arvid Norberg b20270d243 added more asserts related to recent downloading_piece optimization and fixed a translation problem to the public interface 2007-07-04 15:46:10 +00:00
Arvid Norberg 3bdf01778a chamged peer representation from tcp::endpoint to policy::peer pointer in piece_picker's downloading piece. Saves memory, removes the need for lookup and improves the hash check fail/pass handling for closed connections 2007-07-04 02:16:49 +00:00
Arvid Norberg e714e1aeba improved bandwidth limiter and added a unit test for it 2007-07-02 23:48:06 +00:00
Arvid Norberg 8aa37dfa39 fixed #75 2007-07-02 19:31:46 +00:00
Arvid Norberg 816bf3ff2d made the number of peers requested from trackers customizable 2007-07-02 18:44:33 +00:00
Arvid Norberg 35b99dbae7 changed identify client to say uTorrent instead of MicroTorrent 2007-07-02 16:47:32 +00:00
unsh fa90161327 Fixed #71 2007-06-30 07:28:44 +00:00
Arvid Norberg 340a91e2a4 fixed #74 2007-06-21 00:51:42 +00:00
Arvid Norberg 0d7a208865 added more output to transfer tests and changed the data to be more easily debuggable + some code cleanup 2007-06-20 18:41:53 +00:00
Arvid Norberg 7e7686b44f fixed typo 2007-06-18 17:15:33 +00:00
Arvid Norberg 756db24b75 logs pad size when using encryption 2007-06-18 17:12:42 +00:00
Arvid Norberg eb03851276 fixed mutex issue in disk io thread 2007-06-17 05:58:12 +00:00
Arvid Norberg f05b06d4e5 added required operator on time_duration 2007-06-14 23:15:30 +00:00
Arvid Norberg 46bf2970fb fixes to remote peer download rate etimation 2007-06-14 21:47:00 +00:00
Arvid Norberg 5efe12dde6 fixed bug reported by Marcos Pinto where an exception was not cought properly 2007-06-13 18:28:55 +00:00
Arvid Norberg bbaa2efcb0 removed asserts that are can no longer be maintained with the async io 2007-06-13 18:09:52 +00:00
Arvid Norberg fa1a37e649 updated Jamfile to support openssl on windows, added missing files to makefiles and made test_pe_crypto build when encryption is disabled 2007-06-13 01:48:24 +00:00
Arvid Norberg 5b5f3b3ca2 support for ip address in announce 2007-06-13 00:20:06 +00:00
Arvid Norberg b75a69cd47 added alerts for synchronizing disk io when pausing and moving storage 2007-06-11 21:24:14 +00:00
Arvid Norberg 07c8d1242e windows unicode fixes when using boost-1.34 and fix for test_swarm when building without encryption support 2007-06-11 19:01:25 +00:00
Arvid Norberg 3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +00:00
Arvid Norberg daba3196c3 fixed url parsing bug related to IPv6 addresses. fixes #66 2007-06-09 00:11:11 +00:00
Arvid Norberg 6447a074eb fixes to allow-multiple-connections-per-ip and a unit test that run a swarm of 3 local peers 2007-06-08 23:02:31 +00:00
Arvid Norberg a7ad108e8a made the unchoke interval configurable 2007-06-07 22:37:58 +00:00
unsh e858cbc1ae fixes for r1331 2007-06-07 11:04:00 +00:00
unsh 7996d35395 added invariant checks 2007-06-07 10:18:13 +00:00
Arvid Norberg 2030420f9a fix for previous peer download rate check-in 2007-06-07 00:53:48 +00:00
Arvid Norberg a3a2217276 an approximate peer download rate is now in peer_info 2007-06-07 00:05:18 +00:00
Arvid Norberg 273f8bd921 merged back encryption branch to trunk 2007-06-06 00:41:20 +00:00
unsh 41cf912501 merged lazy bitfields fixes (r1316, r1320) 2007-06-05 10:20:45 +00:00
Arvid Norberg 22cd8ded91 fixed semantics in http_connection 2007-06-05 01:25:46 +00:00
Arvid Norberg 4f339272dc minor cleanup 2007-06-03 05:57:05 +00:00
Arvid Norberg 08965f331c removed debug output from storage 2007-06-01 23:27:49 +00:00
Arvid Norberg d0412a2244 added port filter for outgoing connections 2007-06-01 01:05:57 +00:00
Arvid Norberg aea4e503c5 more storage state machine fixes, added test to storage unit test and fix in file::set_size 2007-05-31 23:35:48 +00:00
Arvid Norberg 61f9315e34 added the metdata extension alert back 2007-05-31 22:56:29 +00:00
Arvid Norberg 8f4c460587 fixes to storage state machine 2007-05-31 21:48:36 +00:00
Arvid Norberg 7e540a8d53 made inactivity time-out configurable 2007-05-31 19:57:15 +00:00
Arvid Norberg 43a28e7a49 fixed bug in write resume data 2007-05-31 02:22:04 +00:00
Arvid Norberg 31247c046a supports turning on and off upnp, natpmp and lsd. All ofthem are now off by default 2007-05-31 00:21:54 +00:00
Arvid Norberg b385ed6064 added socks4 proxy support 2007-05-30 23:35:14 +00:00
Arvid Norberg 5f7dd474e9 fixes to storage full allocation mode 2007-05-30 22:23:17 +00:00
Arvid Norberg 97db7e009d updated identify client 2007-05-30 09:52:36 +00:00
Arvid Norberg f65c08338e fixed bug with torrents having peers despite being paused 2007-05-30 08:37:36 +00:00
Arvid Norberg 14a15831ef exposed piece availability vector 2007-05-30 06:52:59 +00:00
Arvid Norberg 1d15a5040c removed old unused logging 2007-05-26 22:55:21 +00:00
Arvid Norberg 9fe77101ed added support for lazy bitfields 2007-05-26 22:27:40 +00:00
Arvid Norberg ea965431bf fixed typo 2007-05-26 19:28:38 +00:00