Commit Graph

54 Commits

Author SHA1 Message Date
Mitchell Livingston 913a83ed27 when seeding don't connect to seeders...it's just common sense 2007-05-16 03:05:25 +00:00
Mitchell Livingston 3f2861f0c7 determine upload/download rates the old way, which is not the most accurate way at a few points, but should have a positive overall impact 2007-05-16 02:03:18 +00:00
Josh Elsasser fea458dcb5 I suck at logic, bad. 2007-04-03 18:43:26 +00:00
Josh Elsasser 5035d519cc Don't return a NULL client string when not connected. 2007-04-03 18:43:01 +00:00
Josh Elsasser 0cb6a81077 Don't try to generate a client string for a peer before we have their handshake. 2007-04-03 18:34:55 +00:00
Josh Elsasser 58333068e8 Cache peer client name.
Don't create an 'unknown client' name with nonprintable characters.
2007-04-03 18:22:58 +00:00
Josh Elsasser b8d03e5958 Add API function to disable PEX for a torrent. 2007-03-31 19:19:09 +00:00
Josh Elsasser 40397dd9f2 Unbreak azureus peer protocol.
Add more peer debug messages.
Fix pex interval.
2007-03-28 06:28:34 +00:00
Josh Elsasser 3394f8d2a4 Revert unintended changes. 2007-03-26 19:21:25 +00:00
Josh Elsasser d390c4c871 Don't save or load cached peers for private torrents. 2007-03-26 19:19:33 +00:00
Josh Elsasser 09c87aad84 Merge PEX branch, I hope this works. 2007-03-23 08:28:01 +00:00
Josh Elsasser 5a62e83689 Don't use sprintf, strcpy, or strcat. 2007-03-12 00:04:11 +00:00
Josh Elsasser e9b4fd8aff Do bounds checking on bitfields. 2007-03-05 23:03:38 +00:00
Mitchell Livingston 5d2ae4eb61 simplify options for download limits in inspector with 3 check states: mixed for system defaults, checked for override with limit, and no check for no limit 2007-02-02 17:33:32 +00:00
Eric Petit 706a2ade11 Ugly workaround for the deadlock introduced in [1445] 2007-01-29 12:16:56 +00:00
Josh Elsasser f884a9c4d4 Store the peers's listening port instead of the peer connections's remote port. 2007-01-28 00:24:41 +00:00
Eric Petit 40d8abb68f More simplifications 2007-01-21 19:42:11 +00:00
Eric Petit 2b0e28a004 clean up 2007-01-21 12:38:50 +00:00
Eric Petit 1634595bb0 Compile before you commit 2007-01-21 07:32:31 +00:00
Eric Petit 09c277257b Mark a peer as uploading if we are unchoked *and* interested 2007-01-21 07:27:57 +00:00
Eric Petit 14aa4e5ab0 Officially give up on making libT reentrant, and simplify our code instead 2007-01-21 07:16:18 +00:00
Eric Petit e63e4ab38f Reorganizes a few things, don't accept two connections from the same IP 2007-01-21 06:42:05 +00:00
Eric Petit f0e1e50055 Unused function/field 2007-01-21 05:03:24 +00:00
Eric Petit 93cb1c89ad Make sure we don't malloc(0), and save peers in the cache file even if we haven't successfully connected to them yet 2007-01-20 04:29:33 +00:00
Eric Petit 4a567871bb clean up 2007-01-19 11:19:20 +00:00
Eric Petit 7fc607cf2a When we count the peers we are UL to, just check whether they are chocked 2007-01-19 05:15:22 +00:00
Eric Petit e5e6a8b5df Merge io branch into trunk 2007-01-14 12:00:21 +00:00
Mitchell Livingston becb19f763 global bandwidth limits only apply to transfers that are not set to overide them 2007-01-08 21:53:55 +00:00
Mitchell Livingston ca2c729abd support in libT for individual torrent speed caps 2006-12-27 01:04:30 +00:00
Mitchell Livingston 718a39cd16 libT now stores peer upload rate 2006-12-18 04:56:27 +00:00
Josh Elsasser 343e51abbe Add peer's port to tr_peer_stat_t. 2006-12-18 03:45:22 +00:00
Eric Petit 3f129d8829 Adds progress in tr_peer_stat_t 2006-11-10 04:21:46 +00:00
Eric Petit 9b3802f23a Saves a list of peers when you pause a torrent, and tries to reconnect to them next time you resume it 2006-11-09 04:45:14 +00:00
Josh Elsasser f7c3910a79 Fix possible uint64_t underflow which could cause insanely huge (16,000,000 TB)
upload and/or download totals to be reported to the tracker.
2006-09-26 22:36:04 +00:00
Eric Petit c6df4005e1 Remember whether a peer comes from an incoming or outcoming connection 2006-09-25 21:56:52 +00:00
Josh Elsasser 0257761670 Merge nat-traversal branch to trunk. 2006-09-25 18:37:45 +00:00
Josh Elsasser f41a6ade33 Retrieve peer address as a string via tr_torrentPeers(). 2006-08-14 22:42:32 +00:00
Mitchell Livingston 2a36da8b60 Some new accessors for libtransmission...I don't see what harm these can do 2006-08-12 00:38:26 +00:00
Eric Petit f199e0a9d9 Revert [619] 2006-07-16 19:39:23 +00:00
Mitchell Livingston 5d36721a15 Remove old Sparkle... 2006-07-16 19:28:19 +00:00
Eric Petit f98fe6a1b0 Added $Id$ keywords and updated a few headers 2006-05-29 21:21:23 +00:00
Eric Petit aeb4c6e208 Toughens the criteria for banning, tries to make guesses about the peers two got banned for a few pieces because of someone else 2006-05-13 17:28:54 +00:00
Eric Petit a006c25025 Adds automatic peer banning.
At first, peers get only banned for the bad pieces they've contributed to, i.e. we continue to ask them for other parts of the torrent. If more bad data keeps coming, the peer gets completely banned.
Based on Jeremiah Morris' patch.
2006-05-13 06:48:37 +00:00
Eric Petit b9a53769f9 Adds download rate limit 2006-04-07 12:09:08 +00:00
Eric Petit eba49d3d2a Quick fix for the 'getting unconnectable' problem (adds a timeout on
incoming connections)
2006-03-03 12:53:55 +00:00
Eric Petit 6197b6665c Added optimistic choking 2006-02-08 22:21:58 +00:00
Eric Petit cf392ea2c6 New choking algorithm (still needs work, it's inefficient, untested and
misses optimistic choking)
2006-01-30 06:54:31 +00:00
Eric Petit 8c733df6a6 Added a rate calculator for each peer
Set up files for the choking algorithm (does nothing yet)
2006-01-30 04:42:43 +00:00
Eric Petit 28d43da1d1 Removed now unused tables and some now unused code 2006-01-30 02:13:40 +00:00
Eric Petit 58ec7a7e97 Rewrote rate control, background work for the download limit, the dl/ul
limits per torrent and for the choking algorithm
2006-01-30 01:58:27 +00:00