Commit Graph

167 Commits

Author SHA1 Message Date
Arvid Norberg
fcd2408f11 fast extension fix, added some logging for fast extension messages, improved test to catch the problem 2008-01-02 03:18:29 +00:00
Arvid Norberg
44735a425f fix bitfield assert 2007-12-22 19:10:38 +00:00
Arvid Norberg
ba172954e6 accept have messages without having metadata and without having received a bitfield 2007-12-20 23:58:58 +00:00
Arvid Norberg
2ed210fd8a fixed assert, #164 2007-11-19 07:07:57 +00:00
Arvid Norberg
c982ba5d90 encryption fix 2007-10-31 23:51:45 +00:00
Arvid Norberg
1a280e31fa cleanup. changed the connection map into a set of peer_connections. moved the policy object into the torrent (as opposed to being a pointer). Fixes issues with multiple peers on the same IP. Reduces some lookups. 2007-10-31 09:48:20 +00:00
Arvid Norberg
1699fa4652 fast reconnect fixes 2007-10-15 05:03:29 +00:00
Arvid Norberg
28113c9c42 parole mode improvement. Doesn't clear out the request queue when choked by a peer on parole anymore 2007-10-10 02:27:55 +00:00
Arvid Norberg
966800cd5b replaced the assert macro to TORRENT_ASSERT instead of hi-jacking assert. 2007-10-05 00:30:00 +00:00
Arvid Norberg
2940d253c3 completed fast reconnect fix 2007-10-04 21:26:50 +00:00
Arvid Norberg
7ddc7c2258 fast reconnect in case encrypted connection fails 2007-10-04 09:46:12 +00:00
Arvid Norberg
3dcae188fb policy now has a map of peers instead of a flat list, makes it more efficient to do lookups 2007-10-02 19:11:04 +00:00
Arvid Norberg
b48948e231 changed the double send buffers to a chained buffer using iovec send operations. buffers are recycled (saves memory and cpu) and memory copies are avoided (saves cpu). More statistics is added to track buffer usage 2007-09-29 16:14:03 +00:00
Arvid Norberg
2e93b92cb4 more IPv6 fixes. support for multihomed machines by listening on multiple interfaces. added listen_succeeded_alert to advertize which interfaces are being listened on 2007-09-22 16:27:29 +00:00
Arvid Norberg
ba437cf72e some more IPv6 support 2007-09-19 21:54:26 +00:00
Arvid Norberg
73bb0c05ad added 'incoming' peer source 2007-09-15 20:17:23 +00:00
Arvid Norberg
35247e5912 fixed #151 2007-09-09 22:45:31 +00:00
Arvid Norberg
61c269efee added timeout for interested peers that don't request once they're unchoked. Added support for suggest_piece 2007-09-01 07:38:10 +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
b62bb7944f merged fast-extension => trunk. the fast extension branch is now closed 2007-08-14 17:47:48 +00:00
Arvid Norberg
430534bf3f fixed incorrect assert 2007-07-10 18:55:14 +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
a46ef3ece8 changed the handshake 'ip' to 'yourip' 2007-07-07 01:36:40 +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
756db24b75 logs pad size when using encryption 2007-06-18 17:12:42 +00:00
Arvid Norberg
3b8670626a merged back async_io branch into trunk 2007-06-10 20:46:09 +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
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
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
9fe77101ed added support for lazy bitfields 2007-05-26 22:27:40 +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
54805ca60b added option to disable country resolving 2007-05-02 19:47:38 +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
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
4b750a29d2 made the logging of bitfields slightly faster 2007-04-17 21:18: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
a22ad5ad33 added failcount to peer_info. fixes #31 2007-04-13 20:19:04 +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
d88ffcc0e4 removed some more unecessary boost.date_time dependencies 2007-04-10 07:52:58 +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
ec2962dd62 extensions are now instantiated for web seeds as well 2007-04-02 20:00:24 +00:00
Arvid Norberg
8957b64c04 prepared for precompiled headers support. fixed issue where storage didn't lock the session properly. fixed typo in natpmp.cpp 2007-03-17 17:15:16 +00:00
Arvid Norberg
ecaa3068d5 added natpmp support. bumped version number to 0.13. added piece priority support to the piece picker. optmized and simplified the piece picker in the process. 2007-03-15 22:03:56 +00:00
Arvid Norberg
be574bcc33 removed old commented out code. polished client_test output 2007-03-02 06:49:00 +00:00
Arvid Norberg
98b92e3f02 fixed problems in the network layer that made web seeds fail some times. prepared for proxy support in peer connections. worked on the http seeding. added support for web seeds in make_torrent tool 2007-02-12 05:46:29 +00:00
Arvid Norberg
1a0547a15c removed chat extension code that was commented out 2007-01-30 22:40:21 +00:00