Commit Graph

891 Commits

Author SHA1 Message Date
Charles Kerr c65d6a20c3 remove dead code tr_file_stat::completionStatus 2007-10-15 18:45:25 +00:00
Charles Kerr 159f1de576 remove dead code tr_stat::cpStatus 2007-10-15 18:28:49 +00:00
Charles Kerr afff6d08f2 save the tr_torrent::pexDisabled flag in fastresume 2007-10-15 16:35:18 +00:00
Charles Kerr 6eb7edf007 fix choke fibrillation bug in new connections 2007-10-15 16:01:42 +00:00
Mitchell Livingston cc2db392f5 make libtransmission's pex accessor public, and eliminate a redundant variable in Torrent.[mh] 2007-10-14 22:01:55 +00:00
Charles Kerr 57eaa27970 Fix bug that could initiate pex in private torrents. 2007-10-14 17:21:24 +00:00
Charles Kerr d96ed80aa2 (1) fix a bug in torrent creation. (2) fix a bug in torrent paths on startup in gtk 2007-10-14 03:26:13 +00:00
Charles Kerr 38d6b03a8e report a speed of 0 when no peers are connected. 2007-10-13 23:57:13 +00:00
Charles Kerr 4f33a8da42 Try sharing a DH so that we don't spend so many cpu cycles making new ones when we're working through the peers trying to find good ones. 2007-10-13 23:15:43 +00:00
Charles Kerr bd01906f0c more banging on the fastresume-destination-directory thing. this permuation makes the fastresume destination a fallback, to be used only if the client didn't pass in a directory to tr_torrentInit*() 2007-10-13 15:29:15 +00:00
Charles Kerr 4104efbfbf try to get more connected peers to agree to encrypted connections 2007-10-13 15:15:04 +00:00
Charles Kerr 004ade57f0 fix crash-on-adding-new-torrents introduced in r3387 2007-10-13 14:07:08 +00:00
Charles Kerr 3e878aeba9 tweak the debugging messages a bit. 2007-10-13 14:02:10 +00:00
Charles Kerr 9211c57ad2 merge in the parts of peerutils' peer pruning code that still make sense 2007-10-13 13:54:05 +00:00
Charles Kerr 89d511e9dd get fastresume working again (I think) 2007-10-13 04:19:38 +00:00
Charles Kerr 6179809146 break the build so svn users won't corrupt their fastresume files 2007-10-13 04:11:11 +00:00
Charles Kerr 0000a96f78 and, removing a couple of fprintfs 2007-10-13 04:00:50 +00:00
Charles Kerr 05bcd5e01c fix r3379 bug that forced us to recheck the torrents every startup 2007-10-13 03:58:54 +00:00
Charles Kerr ff36475fad Add an option for saving a torrent's destination path in its file. This can be overridden by clients with the `destination' argument in tr_torrentInit*() 2007-10-12 19:45:51 +00:00
Mitchell Livingston 64c5255c8e add Halite to clients 2007-10-12 11:17:38 +00:00
Charles Kerr 00321c4eed Fix crash-on-exit reported by Gimp_ @ http://pastebin.ca/732759 2007-10-11 14:56:50 +00:00
Charles Kerr 89564dc3c2 fix the "swarm speed" bug reported by Gimp_ 2007-10-11 04:17:28 +00:00
Charles Kerr 3b2ef1054f 8 second timeout during handshake, 2.5 minute handshake afterwards 2007-10-11 03:54:33 +00:00
Charles Kerr e11999243e add more debugging messages to track down why we're disconnecting from some peers 2007-10-11 03:36:09 +00:00
Charles Kerr 7e0faec4db more debugging messages 2007-10-11 03:12:48 +00:00
Charles Kerr ef4ec75532 Try out some of SoftwareElves' suggestions for faster startup connections 2007-10-11 02:50:05 +00:00
Charles Kerr ead1ff5b72 encryption key creation is pretty expensive -- defer creating it until we're sure we actually need it for that peer. 2007-10-11 02:22:17 +00:00
Charles Kerr 23d2f77778 (1) maybe fix the "peer->msgs != NULL" bug reported by Dhruvk and John_Clay (2) remove dead code 2007-10-11 00:09:58 +00:00
Charles Kerr cbaf1b8faa commit more of tiennou's fastpeers patch 2007-10-10 16:39:12 +00:00
Charles Kerr 76aed9200d fix a subtle bug with having two connections to the same peer. 2007-10-10 15:59:59 +00:00
Charles Kerr 696800f369 * fix bug that sent a keepalive message too often 2007-10-10 03:03:09 +00:00
Charles Kerr a9849660f6 * fix bug that incorrectly marked some incoming connections for termination
* strip unnecessary linefeeds out of some debug messages
2007-10-10 02:59:30 +00:00
Charles Kerr 2f46064e33 raise the `numwant' value 2007-10-09 18:29:10 +00:00
Charles Kerr e8d19c5b03 fix stupid bug from yesterday that made uploading difficult. 2007-10-09 05:51:20 +00:00
Charles Kerr 602ee120af fix recent tracker error reported by John_Clay that made it slower to pick up peers 2007-10-09 04:50:10 +00:00
Charles Kerr c88ef608c6 extra paranoia to safeguard against a possible tracker crash 2007-10-09 03:06:54 +00:00
Charles Kerr f96cbd3ec3 * add intltool macros to make it easier to build from svn.
* minor error logging improvement in libtransmission
2007-10-09 02:49:24 +00:00
Charles Kerr e10e44409a fix crash reported by Waldorf in http://pastebin.ca/729980 2007-10-08 19:09:20 +00:00
Charles Kerr 7ff8284976 give trackers more time before timing out the requests. make the `stopping' timeout interval smaller than other intervals so that we don't block for too long during shutdown. 2007-10-08 17:05:39 +00:00
Charles Kerr e176a25922 * fix a bug with uploading encrypted pice data to another peer
* extra sanity tests when uploading data
2007-10-08 16:10:10 +00:00
Charles Kerr 9a79d1e603 the purge flag should take priority over all the other reasons to keep or purge a peer. :p 2007-10-08 01:53:11 +00:00
Charles Kerr e1b447304b fix atom initialization issue with r3320 2007-10-08 01:37:20 +00:00
Charles Kerr 161ff6a7a2 ban peers that feed us too many bad blocks. 2007-10-08 01:31:27 +00:00
Charles Kerr 43a016cdb9 fix minor shutdown bug 2007-10-08 00:56:12 +00:00
Charles Kerr 304f9f7f18 get rid of a confusing error message that describes a harmless situation 2007-10-07 16:25:02 +00:00
Charles Kerr 1014e633ac * don't reuse http connections to trackers. I think this is what caused most of the `no response from tracker X' messages.
* extra safety checks to ensure the last `stopped' message to the tracker is sent on shutdown.
2007-10-07 16:07:19 +00:00
Charles Kerr 568e97d220 recheck the completeness stats after `recheck torrent' 2007-10-07 04:32:37 +00:00
Charles Kerr 5d8f9d8b13 try to connect to peers faster when a torrent is initially started. 2007-10-07 04:14:58 +00:00
Charles Kerr 2381279da6 fix John_Clay's ptrarray.c:201 crash. (maybe.) 2007-10-07 04:14:34 +00:00
Mitchell Livingston 8f7f65388e set properties for new files 2007-10-06 22:24:50 +00:00
Charles Kerr c75f49bc26 * add a per-peer request queue to hold the next 10-15 seconds' worth of requests so that we always have more requests at hand when the current requests start to run low.
* increase the tracker `numwant' variable to grow our peer pool
* bugfixes in cancelling requests.
* make the debug log sexy and readable like uTorrent's ;)
2007-10-06 18:20:52 +00:00
Charles Kerr 6d5182af60 fix potential "recheck torrent" deadlock 2007-10-06 01:43:04 +00:00
Charles Kerr 3a6985195d removed an assertion that depended on valid input from a peer in order to be true. 2007-10-05 05:53:00 +00:00
Charles Kerr b6483cbf3f don't allow duplicate requests to the same peer, even during endgame. (alus) 2007-10-05 00:16:47 +00:00
Charles Kerr 17743d8d04 tweak the `start torrent' code based on feedback from BentMyWookie 2007-10-04 23:47:49 +00:00
Charles Kerr 80979e0240 a little code simplification -- remove unnecessary branches 2007-10-04 20:49:37 +00:00
Charles Kerr 0872b4f40a fix the crash reported by Waldorf and John_Clay 2007-10-04 20:31:19 +00:00
Charles Kerr 53aef0a48c Simplify the tracker/pause/close/recheck/start code. 2007-10-04 19:58:30 +00:00
Charles Kerr 0938cb88d4 dead code removal 2007-10-03 21:03:40 +00:00
Charles Kerr 5f2bd1d950 speed improvements... this is getting me 700 KiB/s (which is near to my speed cap) in the ubuntu torrent test 2007-10-03 19:00:51 +00:00
Charles Kerr 877e2bb86e some more peer tweaks 2007-10-03 18:19:51 +00:00
Charles Kerr a3d1a254d1 minor source code cleanup... 2007-10-03 16:42:43 +00:00
Charles Kerr 3d2e3cfdfb add pass subscription info into the peer-msgs constructor so that we can start getting information immediately 2007-10-03 04:04:34 +00:00
Charles Kerr 0f550043fd fix peer-mgr.c:1092 asset failure reported by Waldorf_ 2007-10-03 02:46:15 +00:00
Charles Kerr 1f1605986c tear out some now-exterraneous code. 2007-10-02 20:55:14 +00:00
Charles Kerr f4988a3f6e tweak the peer manager code a little more. 2007-10-02 19:54:14 +00:00
Charles Kerr 3dbaa7d673 make the peer manager a little greedier w.r.t. keeping connections alive. 2007-10-02 19:25:18 +00:00
Charles Kerr f4901211ca Fix erratic `(int)EVBUFFER_LENGTH( inbuf ) >= byteCount' error 2007-10-02 16:59:56 +00:00
Charles Kerr cdabb1c0b1 clean up the shutdown code a little bit. 2007-10-02 16:12:44 +00:00
Charles Kerr c271cec6a3 work around portability glitch in libevent's headers 2007-10-02 14:58:39 +00:00
Charles Kerr f237bf7047 * simplify the the choking intervals
* fix peer-mgr destructor bug
* send debugging messagese to TR_DEBUG_FD instead of the console
2007-10-02 14:35:02 +00:00
Charles Kerr 77d7cf76a1 fix looong-standing potential dangling pointer bug reported by BMW 2007-10-02 03:33:17 +00:00
Charles Kerr 6ed2d25af7 threads. gotta love 'em. 2007-10-02 02:59:07 +00:00
Charles Kerr af686b3297 roll back a bug introduced in r3265 2007-10-02 02:01:57 +00:00
Charles Kerr 84ab0092fb some cleanup... remove some dead/obsolete code 2007-10-02 00:05:40 +00:00
Charles Kerr b84305cdf3 more agressive purging of connections that give socket errors 2007-10-01 18:09:59 +00:00
Charles Kerr 4ebe0b563a throttle back how many concurrent connections we make. 2007-10-01 17:51:07 +00:00
Charles Kerr f0562f5947 try to disconnect all the peers when the user hits `pause' 2007-10-01 16:50:51 +00:00
Charles Kerr 75ff12faba don't log BT protocol messages in UL/DL speed -- only log piece data transfers. 2007-10-01 16:31:17 +00:00
Charles Kerr e4fec9eefd add tr_stat.peersKnown to indicate how many peers exist in the peer `pool' 2007-10-01 15:51:54 +00:00
Charles Kerr cba61802cf remove newly-unused field tr_peer_stat::isConnected 2007-10-01 15:41:42 +00:00
Charles Kerr 1a012b8b87 maybe fix the where-are-the-peers-coming-from bug reported by SoftwareElves, John_Clay, and jahpraiseherb 2007-10-01 15:36:31 +00:00
Charles Kerr 5c11c58113 simplify libT locks now that it's (more-or-less) single-threaded. fix deadlocks. make tr_locks nestable. 2007-10-01 15:17:15 +00:00
Charles Kerr f7e3f85e50 follow BT `best practices' more closely w.r.t. choosing which pieces to download 2007-10-01 14:24:22 +00:00
Charles Kerr 60a983d845 fix bizarre libevent contortion that made valgrind cry 2007-10-01 05:49:23 +00:00
Charles Kerr 9a3c91cad2 ensure TR_PEER_FROM_INCOMING peers get peer atoms. this should fix BentMyWookie's crash. 2007-10-01 05:32:34 +00:00
Charles Kerr 56738f065c fix some memory issues. 2007-10-01 04:12:24 +00:00
Mitchell Livingston 0888fe4f68 remove unneeded line 2007-10-01 03:28:49 +00:00
Charles Kerr b99084e638 more experimenting with how to get good peers 2007-10-01 03:24:52 +00:00
Mitchell Livingston a223b7d6ea fix Bitlet and add new Limewire client id's 2007-10-01 02:50:51 +00:00
Charles Kerr 6bef7def52 tweaks 2007-10-01 00:08:12 +00:00
Charles Kerr 7cc6771318 experimental better peer management. 2007-09-30 23:55:49 +00:00
Mitchell Livingston 3e87e07e0c add bitlet to client id's 2007-09-30 13:16:18 +00:00
Charles Kerr 4c990b2a7d fix tracker crash reported by bmw 2007-09-29 15:05:20 +00:00
Charles Kerr dad333ceec more work on the locks 2007-09-29 14:55:30 +00:00
Charles Kerr b3d6391413 test to see if the new locking code can fix the old `stop' bug 2007-09-29 14:25:52 +00:00
Charles Kerr 8a40a15b16 more work on the peer-mgr locks 2007-09-29 14:19:23 +00:00
Charles Kerr 64239a21e1 prevent a deadlock via the handshake code 2007-09-29 13:47:15 +00:00
Charles Kerr 0812087a4e add mutex locks for thread safety. 2007-09-29 06:37:03 +00:00
Charles Kerr 04f6847004 take out the `thawing out' console messages 2007-09-29 00:47:33 +00:00