Charles Kerr
2085aec390
#613 : fix handshake protocol error reported by brad- and tracked down w/Lacrocivious' help.
2008-01-26 03:43:49 +00:00
Charles Kerr
d922389c9d
#613 : fix handshake error with libtorrent / mainline peers
2008-01-24 17:16:20 +00:00
Charles Kerr
3c6eeef439
fix a socket leak in peer-msgs
2008-01-19 03:30:45 +00:00
Charles Kerr
de515ee339
if the torrent's download path doesn't exist, don't create it -- it's might be a removeable disk that got unplugged.
2008-01-18 19:13:32 +00:00
Charles Kerr
e7163a5433
#593 : 1.01 crash
2008-01-13 15:52:56 +00:00
Charles Kerr
3a6396a3cb
mingw portability fixes
2008-01-10 18:52:46 +00:00
Charles Kerr
5d93bd2c93
a smaller buffer size seems, counterintuitively, to improve the overall transfer rate when speed limits are turned on, because it gives more peers a chance to be involved in xfer before we hit the limit.
2008-01-09 19:22:25 +00:00
Charles Kerr
591f7f8b10
* improve the unchoking algorithm.
...
* when deciding which peers to connect to, take peer's previous speeds into account
* longer delay interval before reconnecting to peers that didn't give us data
* added uTorrent-inspired "flags" column in tr_peer_stat and gtk's torrent details' "peer" tab
2008-01-09 17:33:43 +00:00
Charles Kerr
1e45d3e478
better lazy generation of "allowed set": wait until we get the {have-all|have-none|bitfield} from the peer so that we'll know if they qualify for an allowed set
2008-01-06 22:20:44 +00:00
Charles Kerr
35f73c097c
lazy "allowed set" generation. add regression test for "allowed set" generation.
2008-01-06 21:56:30 +00:00
Charles Kerr
6c3eab0a92
#585 : 1.00 could be sped up by elminating reconnect intervals for some peers
2008-01-05 18:17:56 +00:00
Charles Kerr
085235b10b
remove some unused #include <ctype.h> directives
2008-01-03 20:17:01 +00:00
Charles Kerr
ee2cffa196
#579 : assertion failure in ~r4410
2008-01-03 03:45:10 +00:00
Charles Kerr
c6d2e60f52
fix comment typo reported by BigBossman
2007-12-27 22:50:20 +00:00
Charles Kerr
e870440025
add a per-block request TTL of 120 seconds
2007-12-25 17:22:51 +00:00
Charles Kerr
473907d891
a little housekeeping: move tr_torrent stuff into its own header
2007-12-25 05:37:32 +00:00
Charles Kerr
401cfbdb6b
replace the per-torrent PEX setting with a global one, as per discussion with SoftwareElves and BentMyWookie
2007-12-24 05:03:40 +00:00
Charles Kerr
4ff5b472a8
raise the maximum connection limit a bit.
2007-12-15 16:36:43 +00:00
Charles Kerr
39d8c74fcd
small tweak to play nice with old C compilers. Thanks to fizz for reporting & submitting a patch
2007-12-03 19:52:55 +00:00
Charles Kerr
abef433926
improve upload speeds when the speed limits are uncapped.
2007-12-01 23:08:34 +00:00
Charles Kerr
1e4b3a0577
make the peer stats a little easier to understand
2007-11-27 21:39:41 +00:00
Charles Kerr
e354b82452
disable SWIFT on private trackers, because they are typically ratio-based sites where you *want* to upload as much as possible to deadbeats
2007-11-26 04:05:12 +00:00
Charles Kerr
8caa113d4b
fix LTEP PEX error reported by Adrian Ulrich in the BitTorrent mailing list
2007-11-22 06:48:08 +00:00
Charles Kerr
91e672d428
some progress on the overall statistics, though probably not visible to end users yet
2007-11-21 20:03:53 +00:00
Charles Kerr
9f9901b3fa
tweak the peer limits a bit for faster uploading
2007-11-20 17:29:56 +00:00
Charles Kerr
9cec81b524
fix the crash reported by pea_, Gimp, and John_Clay [ref: http://pastebin.ca/784834 ]
2007-11-19 21:44:38 +00:00
Charles Kerr
3704854654
add more asserts up the call chain to find the source of pea_ and Gimp's bug
2007-11-19 04:51:06 +00:00
Charles Kerr
a277382578
more download speed tweaks for situations where T is both uploading and downloading.
2007-11-18 04:24:17 +00:00
Charles Kerr
e371009606
this should improve download speeds. test it!
2007-11-18 03:18:26 +00:00
Charles Kerr
9a81cd7637
reintroduce the "SWIFT" algorithm
2007-11-18 01:00:49 +00:00
Charles Kerr
37969406b2
Add "Status" column to tr_peer_stat.
2007-11-17 23:43:33 +00:00
Charles Kerr
54a2bb978b
fix timeout error that caused us to drop connections prematurely
2007-11-17 17:49:30 +00:00
Charles Kerr
ef3d0df0d9
try to tickle some more information out of John_Clay's bug report
2007-11-17 07:48:51 +00:00
Charles Kerr
77d58126f4
remove yet more dead code
2007-11-17 02:47:47 +00:00
Charles Kerr
cc728b0470
progress on the "speed limits kill my transfer rate" bug.
2007-11-16 21:58:11 +00:00
Charles Kerr
0ac302b302
progress on the "speed limits kill my transfer rate" bug.
2007-11-16 20:40:03 +00:00
Charles Kerr
73680b6263
fix tr_peerMsgsAddRequest memory leak reported by tiennou
2007-11-16 15:45:26 +00:00
Charles Kerr
1ebaf597a4
fix trunk memory leak reported by tiennou
2007-11-16 15:33:57 +00:00
Charles Kerr
c3dce15a9e
if we haven't advertised that we support pex, then even if a peer sends us a pex message, don't send one back.
2007-11-16 04:42:51 +00:00
Charles Kerr
257eaee631
more of the same
2007-11-15 05:47:23 +00:00
Charles Kerr
a9e5fff2e6
* fix the `req->length == (uint32_t)( ((block)==((msgs->torrent)->blockCount-1))' bug.
...
* there seems to be a pattern for peers that were (intentionally?) giving incomplete data to trigger the bug above. when a peer does this, give them a strike on its three-strikes-and-you're-banned count
2007-11-13 05:36:43 +00:00
Charles Kerr
8516860fec
fix a bug in tr_stat's availability numbers, reported by BentMyWookie
2007-11-11 16:33:04 +00:00
Charles Kerr
c32f893038
commit tiennou's fast-peers-final patch from ticket 149
2007-11-10 16:06:00 +00:00
Charles Kerr
ca03b62a58
* fix a bug that could corrupt peer connections, causing slower speeds and/or fewer connections
...
* add more assertions to smoke out any remaining BT protocol bugs
2007-11-10 04:56:27 +00:00
Charles Kerr
fd430fde90
undoing the r3773-r3774 experiment.
2007-11-09 20:07:52 +00:00
Charles Kerr
67b719c2de
on Darwin, use NSCParameterAssert() instead of assert().
2007-11-09 19:50:40 +00:00
Charles Kerr
99ea26c1c9
* try to get peers to scale up to speed faster.
...
* remove unnecessary steps when receiving block data from peers.
2007-11-09 01:22:15 +00:00
Charles Kerr
39f9f14751
minor tweaks.
2007-11-08 21:25:17 +00:00
Charles Kerr
71f4efcbad
update our #includes now that libevent has cleaned up event.h
2007-11-07 18:26:19 +00:00
Charles Kerr
60aab6c433
remove libtransmission code that duplicates functionality in libevent
2007-11-06 21:14:30 +00:00