Commit Graph

1166 Commits

Author SHA1 Message Date
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
Arvid Norberg 8679ee5916 have optimization is now optional, but on by default 2007-05-25 21:19:14 +00:00
Arvid Norberg c10e74f4fc improved control over the rate of connection attempts 2007-05-25 21:00:35 +00:00
Arvid Norberg bb71832f5f exposed some more peer info 2007-05-25 19:42:10 +00:00
Arvid Norberg 685f79b82f option to ignore bandwidth limits for local peers. fixed some asserts when allowing multiple connections per IP 2007-05-25 17:06:30 +00:00
Arvid Norberg 4ff4ddeae7 added more shutdown logging 2007-05-24 19:51:14 +00:00
Arvid Norberg 71fe036b78 removed leftover debug print 2007-05-24 19:00:28 +00:00
Arvid Norberg 510966f2a5 fixed fast resume data bug when using full allocation mode, and moved parts of resume data generation to the storage 2007-05-24 18:53:55 +00:00
Arvid Norberg 58b23a79e7 exception fixes 2007-05-24 17:07:43 +00:00
Arvid Norberg 99a22dcae4 made dht requests be allocated in a pool allocator for heap and runtime efficiency. Fixes to DHT error responses 2007-05-23 08:45:12 +00:00
Arvid Norberg 3a27e51720 fixed bug in recent UPnP change 2007-05-23 06:23:22 +00:00
Arvid Norberg 883773e8fa added shutdown logging and tracker manager shutdown flag 2007-05-23 01:02:46 +00:00
Arvid Norberg cbd67ed729 added support for authentication in the url_parser and added a test for it 2007-05-22 20:44:18 +00:00
Arvid Norberg e58c161057 http_parser fix 2007-05-22 19:39:06 +00:00
Arvid Norberg 66437229e1 updated makefile to name the target so file properly 2007-05-21 08:16:13 +00:00
Arvid Norberg 89d65dcb15 web seed downloader fix 2007-05-17 19:57:48 +00:00
Arvid Norberg d964abda7a fixed typo in previous check-in 2007-05-17 16:04:09 +00:00
Arvid Norberg 6d8cf1899c connection queue fixes 2007-05-17 02:55:44 +00:00
Arvid Norberg 8987d7077d refactoring in natpmp, upnp and lsd. made lsd (probably) work on windows 2007-05-17 02:54:13 +00:00
Arvid Norberg ea45641c8b made lsd work 2007-05-17 00:01:51 +00:00
Arvid Norberg 633f174947 improved natpmp, upnp and lsd 2007-05-16 21:36:27 +00:00
Arvid Norberg 674e1f96b1 improved local IP guessing slightly 2007-05-16 18:58:31 +00:00
Arvid Norberg 3bfaaf1129 fixed a checked iterator assert 2007-05-16 18:21:08 +00:00
Arvid Norberg 13ca78e92b #47. introduced parole mode for peers that fails the hash check. 2007-05-16 04:12:13 +00:00
Arvid Norberg f7d051162e fixed assert triggered by checked iterators in msvc-8.0 2007-05-16 01:58:00 +00:00
Arvid Norberg 1d68e10684 made it build in msvc by inserting ; at the end of function try blocks 2007-05-16 01:17:14 +00:00
Arvid Norberg e9601080bb introduced swap_slots and swap_slots3 on storage_interface. All reads that needs it, should now be EOF safe (when using sparse files). 2007-05-16 01:16:08 +00:00
Arvid Norberg b386aa23e9 DHT bugfix, more logging and less frequent private key generation. Fixed typo in identify_client 2007-05-14 17:49:36 +00:00
Arvid Norberg e79817cfc5 cleanup and added another known peer-id 2007-05-14 12:02:57 +00:00
Arvid Norberg 0720a96ac2 added new knoen peer-ids 2007-05-14 11:32:12 +00:00
Arvid Norberg 8392276975 speed categories are now disabled before 1% of the pieces have been downloaded 2007-05-14 10:54:18 +00:00
Arvid Norberg 36898ecc12 added more logging to upnp. fixed upnp test 2007-05-14 08:56:46 +00:00
Arvid Norberg c5e150ee69 upnp fixes 2007-05-14 07:31:01 +00:00
Arvid Norberg 421d4ee81d fixed recent send buffer optimization to work with metadata extension 2007-05-14 06:06:28 +00:00
Arvid Norberg 0436ab2ec8 added filename extension to statistics log 2007-05-14 04:49:08 +00:00
Arvid Norberg 419ac258de more statistics 2007-05-14 04:01:30 +00:00
Arvid Norberg dcad9b3031 fixed warning 2007-05-14 03:50:19 +00:00
Arvid Norberg 4a906aa31d added option for session statistics output 2007-05-13 22:01:21 +00:00
Arvid Norberg bf25aa0d1c allocate slots bug fix in storage. Introduced with sparse files 2007-05-13 00:25:29 +00:00
Arvid Norberg 734305f78d small modification to linux path for discover sparse files support 2007-05-12 21:21:59 +00:00
Arvid Norberg f5c449837f introduced an extra invariant check in policy to make sure peers are unique 2007-05-12 20:25:44 +00:00
Arvid Norberg 57d5cf9147 fixed typo in last check in 2007-05-12 19:08:08 +00:00
Arvid Norberg e405dd3fda made lsd not throw on send failure 2007-05-12 18:53:37 +00:00
Arvid Norberg 9f902e7b9f the DHT now refreshes buckets properly. 2007-05-12 01:52:25 +00:00
Arvid Norberg 9ffde51404 fixed a bug caused by file_pool being destructed before torrents, and torrents using the file pool in their destructors 2007-05-11 23:41:31 +00:00
Arvid Norberg 6faa11f7ab optimized web_peer_connection to use less memory and replaced std::copy with std::memmove in peer_connection 2007-05-11 18:40:22 +00:00
Arvid Norberg 35fe7dae4f fixed memory bug introduced in recent optimization of web_peer_connection 2007-05-10 18:15:53 +00:00
Arvid Norberg acf973fe39 added exception handling to upnp 2007-05-10 18:00:10 +00:00
Arvid Norberg 23ae2e12c8 fixed warning in peer_connection 2007-05-10 06:27:52 +00:00
Arvid Norberg 57439bcec8 send buffer heap optimization 2007-05-10 06:20:29 +00:00
Arvid Norberg e6c7945aac fixed typo 2007-05-10 06:17:27 +00:00
Arvid Norberg a531027e3f attempted heap optimization in DHT routing table 2007-05-10 05:48:14 +00:00
Arvid Norberg 9ead2e2f54 web seed heap and cpu optimization 2007-05-10 05:32:47 +00:00
Arvid Norberg f39185bb21 optimized the read callback to loop and exhaust the read buffer from the socket instead of making another async read call. #43 2007-05-10 01:50:11 +00:00
Arvid Norberg a5847956e1 most of the metadata is now freed when a torrent becomes a seed. #44 2007-05-09 22:54:26 +00:00
Arvid Norberg d95ddde3f2 more storage fixes for problems related to sparse files support 2007-05-09 20:16:18 +00:00
Arvid Norberg 4371dbe02c fixed resume data problem caused by recent piece_picker optimization 2007-05-09 03:18:53 +00:00
Arvid Norberg 6dcca9250b optimized heap allocations in piece_picker. #42 2007-05-09 00:49:13 +00:00
Arvid Norberg 25d38ff1fc fixed typo 2007-05-08 23:22:57 +00:00
Arvid Norberg 2b18189ef8 upnp fixes + logging 2007-05-08 18:02:10 +00:00
Arvid Norberg daa6534972 upnp fix. suggested by Massaroddel 2007-05-08 17:46:32 +00:00
Arvid Norberg 4956639171 piece picker optimization 2007-05-08 11:13:13 +00:00
Arvid Norberg 708202575f upnp fix 2007-05-08 11:10:05 +00:00
Arvid Norberg 122841fc5e attempt to memory optimization in DHT routing table 2007-05-08 08:49:07 +00:00
Arvid Norberg ceb442bea0 DHT is more forgiving when parsing responses and logs messages that fails to decode 2007-05-08 00:55:43 +00:00
Arvid Norberg a2b359b64e fixed assert in torrent.cpp 2007-05-07 18:19:53 +00:00
Arvid Norberg eb5b532d3f removed boost.date_time dependency from DHT logging code 2007-05-07 18:12:03 +00:00
Arvid Norberg 517488c722 DHT fixes 2007-05-07 18:00:17 +00:00
Arvid Norberg b39f6bccc0 policy cleanup 2007-05-07 16:24:08 +00:00
Arvid Norberg ce63e79758 cleaned up upnp error codes 2007-05-07 00:12:33 +00:00
Arvid Norberg 508dfd722a cleaned up policy a bit and the country code list 2007-05-05 22:55:34 +00:00
Arvid Norberg b239eecc04 updates to upnp code 2007-05-05 22:06:26 +00:00
Arvid Norberg d320928e8f more upnp logging and made the upnp test build again 2007-05-05 20:00:28 +00:00
Arvid Norberg 49bd69cad4 introduced a proper half open TCP connection limit. Also exposed the connection queue to let clients use the same connection limiter as libtorrent. UPnP connections and tracker connection are now also limited as well as peer connections and web seeds 2007-05-05 00:29:33 +00:00
Arvid Norberg 328f335a4d fixed bug in latest upnp change 2007-05-04 17:39:44 +00:00
Arvid Norberg 983f4bc02e removed unneccesary connection lookup in connect_peer 2007-05-04 16:35:29 +00:00
Arvid Norberg c7b4f49d5a moved initialization of multicast addresses from global initializers to local constructors to avoid WSAStartup issues on windows 2007-05-04 06:47:32 +00:00
Arvid Norberg 675781d604 upnp mapping is attempted after all broadcasts are complete. changed the logging configuration to log UPnP traffic with TORRENT_UPNP_LOGGING define 2007-05-04 05:34:03 +00:00
Arvid Norberg c39462c125 fixed another sparse files related bug in storage 2007-05-04 03:28:42 +00:00
Arvid Norberg f942308ccb added extra assert to piece picker 2007-05-03 21:28:31 +00:00
Arvid Norberg b9cdfc2771 fixed bug in piece_picker 2007-05-03 19:25:18 +00:00
Arvid Norberg 577bda5266 removed old code from piece picker and fixed set_priority to not tamper with the download queue 2007-05-03 18:38:57 +00:00
Arvid Norberg 9be3f14dd7 fixed bug in recent connection queue changes 2007-05-03 17:12:24 +00:00
Arvid Norberg 56a4b8412a restored the faster connection behavior 2007-05-03 01:49:14 +00:00
Arvid Norberg 77c141fd6d fix to previous connection queue change 2007-05-02 19:50:07 +00:00
Arvid Norberg 54805ca60b added option to disable country resolving 2007-05-02 19:47:38 +00:00
Arvid Norberg 13bcb48dba fixed warnings and removed unused variables 2007-05-02 18:45:29 +00:00
Arvid Norberg 04e41cf702 improved connection queue handling slightly. Will require further improvements 2007-05-02 17:38:37 +00:00
Arvid Norberg b98162621e fixes for the GET request and passes that data through the data pointer in bottled mode too 2007-05-01 22:44:54 +00:00
Arvid Norberg 233cd373e8 fixed issue with sparse files and compact allocation. added move_slot() to the storage abstraction 2007-04-30 01:06:29 +00:00
Arvid Norberg f41fd7d303 added catch blocks to lsd. changed bind expressions to use operators 2007-04-29 20:49:30 +00:00
Arvid Norberg 9f1a11aa50 regenerated documentation. fixed a few warnings. fixed a bug in recent check in in piece picker 2007-04-27 16:26:30 +00:00
Arvid Norberg 9cae6e636e fixed typo in previous check-in 2007-04-27 02:54:33 +00:00
Arvid Norberg 4afe9712e0 improvements to the piece picker with regard to recently introduced categories 2007-04-27 02:33:59 +00:00
Arvid Norberg 88277fd736 fixed a bug where the web seed could be disconnected in the process of a response without noticing. checked in to RC_0_12 and trunk 2007-04-27 02:33:09 +00:00
Arvid Norberg ee1681e2cb added peer/piece categories to the piece picker. fixes #18 2007-04-27 00:27:37 +00:00
Arvid Norberg 19bb5553bb added missing files from previous check-in 2007-04-25 18:57:13 +00:00
Arvid Norberg 00948e9fc4 first attempt to implement SOCKS5 and proper HTTP proxy support. fixes #22 2007-04-25 18:26:35 +00:00
Arvid Norberg d9902d178f applied shyam's memory optimization patch 2007-04-25 17:36:12 +00:00
Arvid Norberg 65d7e5d63e added BitRocket to known clients 2007-04-24 17:30:15 +00:00
Arvid Norberg d43a6b80bf added an abstraction layer or tcp sockets, to be able to support socks proxys 2007-04-23 21:36:21 +00:00
Arvid Norberg 094dc1065c some boost 1.34 preprocessor conditions and fixed assert in piece_picker 2007-04-23 17:14:40 +00:00
Arvid Norberg e5a20b8de6 fix to previous check-in 2007-04-19 21:02:33 +00:00
Arvid Norberg 8ef7819a95 added redirection support to http_connection 2007-04-19 20:52:29 +00:00
Arvid Norberg 219db47776 fixed boost version test in storage 2007-04-19 16:22:13 +00:00
Arvid Norberg 172205d7fb improvements and fixes to sparse files support. made the test pass again 2007-04-19 03:32:20 +00:00
Arvid Norberg 92cf13c2c2 sparse files fixes. now sets the size of the files in case sparse files are supported 2007-04-19 03:06:15 +00:00
Arvid Norberg a35c1ef1a5 piece picker fix 2007-04-19 02:54:46 +00:00
Arvid Norberg 60ddb5c64a piece_picker fix 2007-04-18 20:40:41 +00:00
Arvid Norberg 9551e68074 fixes in file_win and removed debugging output from storage 2007-04-18 20:00:58 +00:00
Arvid Norberg 88d6f7a4c9 added character-set build feature (only effective on windows). Made storage build with win32/unicode and newer versions of boost. optimized allocate_slots 2007-04-18 19:12:30 +00:00
Arvid Norberg 4c8e8470cd storage fix for unicode on windows 2007-04-18 16:48:24 +00:00
Arvid Norberg c639399b84 fixed typo in windows code 2007-04-18 00:48:31 +00:00
Arvid Norberg af779b6349 factored out the test for sparse files support 2007-04-18 00:36:09 +00:00
Arvid Norberg e49c49c892 fixes #35 2007-04-17 23:06:00 +00:00
Arvid Norberg 75d61207f2 fix for prioritize_files() 2007-04-17 22:56:14 +00:00
Arvid Norberg 16e17f066c first stab at sparse files support 2007-04-17 21:54:40 +00:00
Arvid Norberg 4b750a29d2 made the logging of bitfields slightly faster 2007-04-17 21:18:52 +00:00
Arvid Norberg 90bff3d1ca Fixed building issues on windows with msvc-8.0 2007-04-17 21:18:35 +00:00
Arvid Norberg 067219d14a made downloading pieces higher priority. fix in piece picker when blocks in prio 0 pieces were marked as finished 2007-04-17 09:21:53 +00:00
Arvid Norberg 849db39472 added peer_blocked_alert which is generated when a peer is blocked by the IP filter. Fixed the ip-filter parsing in client_test and made it report the peer_blocked_alert. Added documentation. 2007-04-17 05:56:43 +00:00
Arvid Norberg 34473aad1b fixed bug in recent piece picker optimization when used in combination with sequenced download threshold 2007-04-17 00:20:39 +00:00
Arvid Norberg 373263677c turned file collisions into a runtime error rather than an assert. fixes #14 2007-04-15 07:15:49 +00:00
Arvid Norberg 8dd610bfbd removed unnecessary fill of the have bitfield 2007-04-15 04:40:45 +00:00
Arvid Norberg 8cb1f9f899 added optional use of openssl instead of public domain sha-1 implementation, ticket #13 2007-04-15 04:30:52 +00:00
Arvid Norberg 40804a829b failcount is reset on a peer that successfully connects. documented max_failcount and min_reconnect_time. implemented seed optimization for piece_picker (inc_refcount_all and dec_refcount_all), ticket #17 2007-04-15 02:14:02 +00:00
Arvid Norberg fceaa8f79e introduced failcount and retry time settings for peers 2007-04-14 21:47:07 +00:00
Arvid Norberg 44603cf049 removed unnecessary asserts from http_tracker_connection 2007-04-14 20:11:46 +00:00
Arvid Norberg 129b447509 fixed issue where lsd, natpmp and upnp would only be rebound if dht was enabled 2007-04-14 17:30:57 +00:00
Arvid Norberg 0a32fffdfd exception fixes for UPnP and NAT-PMP. port fix for lsd 2007-04-14 15:51:36 +00:00
Arvid Norberg a22ad5ad33 added failcount to peer_info. fixes #31 2007-04-13 20:19:04 +00:00
Arvid Norberg 3d759e8936 fixes in connection policy. fixes #29. inserted more invariant checks in policy 2007-04-13 17:47:40 +00:00
peerkoel b08037d094 Test added to allow conditional compilation of sources in src/kademlia.
New file time.hpp added to header files that need to be installed.
2007-04-13 16:11:11 +00:00
Arvid Norberg 57eeba53a8 fix to previous checking 2007-04-13 01:57:16 +00:00
Arvid Norberg 0e5ce5dd9d cleaned up policy a bit, moved the seed check in on_bitfield to be performed before the piece picker is updated 2007-04-13 01:53:25 +00:00
Arvid Norberg 3293bf9b6e the seed flag in the peer struct is updated when connected to a seed (will avoid trying to reconnect to a seed when we're also a seed) 2007-04-13 00:22:03 +00:00
Arvid Norberg 52623405f0 improved unchoking, connecting and disconnecting logic in policy. seems to fix #29 2007-04-12 10:21:55 +00:00
Arvid Norberg 05e16f8fbd added missing upnp.cpp reference in Makefile 2007-04-12 06:37:48 +00:00
Arvid Norberg 79cfdb609f fixed threading problem in file_pool 2007-04-12 05:08:23 +00:00
Arvid Norberg 87b1cdc341 fix to avoid connecting web seeds when not a seed but finished 2007-04-11 22:27:58 +00:00
Arvid Norberg 3bc8d093c2 fixed the distributed copy function in the piece picker 2007-04-11 20:33:28 +00:00
Arvid Norberg e503e334d5 fix to previous check-in 2007-04-11 17:44:15 +00:00
Arvid Norberg 109cc3f232 made the announce timer (for dht and lsd) use a weak pointer instead of raw pointer, to avoid problems when torrent is being destructed 2007-04-11 17:22:19 +00:00
Arvid Norberg 250adabcfa removed unused web stats 2007-04-11 16:50:54 +00:00
Arvid Norberg 3ed24da320 added source to peer_info, which is a bitmask of the sources where the peer has been acquired from 2007-04-10 21:23:13 +00:00
Arvid Norberg 009b10e9bf completed previous fix 2007-04-10 19:22:08 +00:00
Arvid Norberg e65206309c fixed issue when aborting an http connection 2007-04-10 18:53:12 +00:00
Arvid Norberg 4ceb6a02ea added download_limit and upload_limit functions to torrent_handle 2007-04-10 09:25:17 +00:00
Arvid Norberg 0863bc1aa6 removed the dependency on the compiled boost.date_time library 2007-04-10 09:11:32 +00:00
Arvid Norberg d88ffcc0e4 removed some more unecessary boost.date_time dependencies 2007-04-10 07:52:58 +00:00
Arvid Norberg 5be60cc125 upnp made destructor not sync.ing 2007-04-10 05:14:37 +00:00
Arvid Norberg 11136650d6 updates to multicast lsd and upnp 2007-04-09 21:59:40 +00:00
Arvid Norberg 2dea7f072c upnp fix 2007-04-09 00:26:00 +00:00
Arvid Norberg baecc64131 fix to previous timer check-in that broke the api 2007-04-07 03:05:59 +00:00
Arvid Norberg 5f3797cf80 fix in http_connection where the handler was sometimes not called when rate limited and aborted 2007-04-06 23:01:27 +00:00
Arvid Norberg b1501d0dac fix for rate limited http_connection 2007-04-05 20:53:11 +00:00
Arvid Norberg af21efb861 upnp fix 2007-04-05 17:53:42 +00:00
Arvid Norberg e7d1f92623 removed debug printout 2007-04-05 16:33:40 +00:00
Arvid Norberg 27da18bd0a windows fixes 2007-04-05 01:08:21 +00:00
Arvid Norberg 306d015924 added a timer abstraction and replaced the use of boost.date_time. the timers used now are QueryPerformanceCounter on windows, mach_absolute_time on darwin and currently falls back on boost.date_time on other platforms. This has the advantage of being a monotonic clock, and also slightly more efficient 2007-04-04 22:27:36 +00:00
Arvid Norberg 7fc238407c added missing lsd.cpp and lsd.hpp 2007-04-04 19:11:19 +00:00
Arvid Norberg a9eff16c7e natpmp fix if set_mappings is called more than once 2007-04-04 08:56:58 +00:00
Arvid Norberg a4ccee15df removed unused code 2007-04-04 02:10:25 +00:00
Arvid Norberg 5e32484194 first stab at getting local service discovery 2007-04-04 02:06:07 +00:00
Arvid Norberg 2555daa95f fixed upnp when set_mappings are called multiple times before the upnp requests can finish 2007-04-04 00:08:00 +00:00
Arvid Norberg ed9e80a3d4 added support for rate limiting on http_connection 2007-04-03 20:00:47 +00:00
Arvid Norberg 36ca0eb3ba addition to previous peer connection download/upload limit fix 2007-04-02 23:10:11 +00:00
Arvid Norberg ed3bb7e4e8 fixed peer connection rate limits 2007-04-02 22:25:58 +00:00
Arvid Norberg 15ad0a36f6 possible fix to upnp close-down in case there are UPnP devices without WANIPConnection 2007-04-02 20:09:48 +00:00
Arvid Norberg ec2962dd62 extensions are now instantiated for web seeds as well 2007-04-02 20:00:24 +00:00
Arvid Norberg 2fc73e9aeb fixed upnp so that it doesn't overwrite valid ports with 0 2007-04-02 19:17:08 +00:00
Arvid Norberg 10b5f538b1 fixed timeout issues on non-bottled long running http connections 2007-04-02 18:51:35 +00:00
Arvid Norberg b282c43f3f fixed assert caused when network went down 2007-04-02 06:49:15 +00:00
Arvid Norberg 7a30b397f8 made test_storage build and fixed bug introduced when storage was turned into a customization point 2007-04-02 05:46:19 +00:00
Arvid Norberg 2f9611a1a9 UPnP seems to work 2007-04-01 15:39:08 +00:00
Arvid Norberg 3d2a4e00b9 upnp fixes 2007-04-01 01:18:10 +00:00
Arvid Norberg 9e1123eb9e more UPnP work. updated ChangeLog and features documentation 2007-03-31 23:23:30 +00:00
Arvid Norberg f65b5f677b fixed incorrect locking that might cause invariant check failures 2007-03-30 22:00:26 +00:00
Arvid Norberg c9fac1efa0 storage did not properly skip incomplete files when doing full checks 2007-03-30 20:22:07 +00:00
Arvid Norberg 5c90b99316 piece picker fix 2007-03-30 20:21:29 +00:00
Arvid Norberg 983b953f02 reverted last check-in 2007-03-30 20:03:18 +00:00
Arvid Norberg 5c9b9aefb3 file did not throw exception properly when file was trunkated and read 2007-03-30 19:56:53 +00:00
Arvid Norberg e6a4733392 fixed one incorrect assert 2007-03-30 19:18:03 +00:00
Arvid Norberg b8721ad854 updates to the upnp code 2007-03-30 16:57:55 +00:00
Arvid Norberg 0b55367664 fix related to listen port 2007-03-30 03:24:37 +00:00
Arvid Norberg a9d18439e9 piece picker fix 2007-03-30 03:09:28 +00:00
Arvid Norberg 6c8ef08e56 fix to have http_connection support keep-alive connections 2007-03-29 16:23:11 +00:00