Commit Graph

37 Commits

Author SHA1 Message Date
Charles Kerr 0f85cc3297 continue whittling away at internal.h to reduce the global #include dependencies 2007-07-31 14:26:44 +00:00
Charles Kerr d209052051 add portability wrapper for in_port_t... 2007-07-30 18:04:10 +00:00
Josh Elsasser 1ecbe8da65 Change a couple functions to take an in_addr pointer instead of an in_addr.
Forward declare struct in_addr and include the relevant headers in the .c files where it's used.
2007-07-14 16:29:21 +00:00
Charles Kerr f0d97e1a02 fix bug that gave the wrong peer count when uploading. 2007-07-13 22:22:46 +00:00
Charles Kerr f0950d7390 lots of performance improvements. fun!
* dynamically resize the request queue on a per-peer basis based on its speed
* fix a huge bug that sabotaged the `swift' performance
* on startup, unchoke peers much sooner
* bump MAX_PEERS and PERCENT_PEER_WANTED
* do a better job of estimating speed on torrents less than 30 seconds old.
* getting an unrecognized extension ID, ignore it instead of stopping the torrent.
2007-06-29 05:45:17 +00:00
Charles Kerr e161544761 adding experimental implementation of Tamilmani's `Swift' tit-for-tat algorithm for testing. To tweak or disable, change the values around line 50 of libtransmission/peer.c 2007-06-21 14:47:26 +00:00
Charles Kerr 3b8d1e13c4 uninteresting minor stuff like adding const. this commit is just to reduce the shear between trunk and what lands in the file-selection branch. 2007-06-09 15:36:46 +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 09c87aad84 Merge PEX branch, I hope this works. 2007-03-23 08:28:01 +00:00
Josh Elsasser e9b4fd8aff Do bounds checking on bitfields. 2007-03-05 23:03:38 +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 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 4a567871bb clean up 2007-01-19 11:19:20 +00:00
Eric Petit 918c083618 Fix warnings 2007-01-19 08:40:06 +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 7a6401c7b4 Split transmission.c: everything related to the accept/upnp/choking
thread was moved to shared.c
2007-01-19 04:42:31 +00:00
Eric Petit e5e6a8b5df Merge io branch into trunk 2007-01-14 12:00:21 +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 13c827a76e Add missing prototype for tr_peerIsIncoming(). 2006-09-26 22:37:53 +00:00
Josh Elsasser f41a6ade33 Retrieve peer address as a string via tr_torrentPeers(). 2006-08-14 22:42:32 +00:00
Mitchell Livingston f76f1c3091 Some changes to getting peers in libtransmission. Now it uses a separate structure for the GUI accessing peers. 2006-08-13 19:43:15 +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 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 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 07b9da73fc Update 2006-01-11 2006-01-12 19:12:58 +00:00
Eric Petit a6aa884776 Import from 2005-10-26 2006-01-12 17:43:21 +00:00