Charles Kerr
1d95bcc689
re-randomize peer_id each time we start a torrent. (ticket #257 )
2007-07-16 11:19:44 +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
790476ac23
clean up #includes a bit.
2007-07-12 17:51:45 +00:00
Charles Kerr
9c73ecbf63
more assertion tests to tr_peerGotBlockFromUs() and tr_peerSentBlockToUs() to smoke out any remaining spurious ul/dl bytecounts
2007-07-09 23:27:57 +00:00
Charles Kerr
bcb3cf99ab
Revert version back to 079 as per BentMyWookie's suggestion
2007-07-09 23:09:00 +00:00
Charles Kerr
caf68deb8f
don't calculate swift largesse for torrents we're seeding.
2007-07-09 20:26:16 +00:00
Charles Kerr
b79beeff66
clean up #includes a bit.
2007-07-09 20:10:42 +00:00
Charles Kerr
08f787291a
remove the "peer is asking for too many blocks!" warning reported by Gimp_ by changing from a fixed-size array to a linked lists of incoming requests
2007-07-09 04:37:16 +00:00
Charles Kerr
26660b0594
fix broken rate control.
2007-07-07 04:13:13 +00:00
Charles Kerr
a166914a27
fix endgame bugs
2007-07-06 16:17:37 +00:00
Charles Kerr
3fda85725c
fix peer memory leak.
2007-07-06 15:51:06 +00:00
Charles Kerr
2b1cf88ea9
fix crash reported by persept
2007-06-30 12:46:45 +00:00
Charles Kerr
781c557e52
use tr_new(), not g_new(). I've been hacking in glib too long
2007-06-29 17:29:02 +00:00
Charles Kerr
59388ed0ba
fix some ugliness from last night's hackfest
2007-06-29 17:24:14 +00:00
Charles Kerr
3a73f6790e
Fix endgame bug that caused the last 2-3% to drag out forever in recent nightlies. Thanks SoftwareElves
2007-06-29 06:24:55 +00:00
Charles Kerr
ab191885b5
revert one of last checkin's changes to better handle low peer situations. Thanks to SoftwareElves for the helpful explanation.
2007-06-29 06:03:54 +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
7e09d157cd
Thread safety improvements. Also, stopping/starting/rechecking/etc. torrents no longer blocks the calling thread. Since this a big commit, it will probably create some short-term pain via new bugs.
2007-06-26 18:45:03 +00:00
Charles Kerr
5401979ffa
misc cleanup.. ansification; fix my own typos, etc...
2007-06-22 04:30:39 +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
Mitchell Livingston
0256f4616d
Merge file selection and torrent creation into the main branch.
...
The new code for these features is under a new license.
2007-06-18 03:40:41 +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
Mitchell Livingston
3d48ed389d
swap download and upload activity checks
2007-05-25 21:44:26 +00:00
Mitchell Livingston
e5a199d813
set activity when actually uploading
2007-05-25 21:38:24 +00:00
Mitchell Livingston
5441c5e145
define as activity as when uploading/downloading occurs
2007-05-25 21:20:54 +00:00
Mitchell Livingston
b4d71e2e9a
store date of last activity
2007-05-25 19:14:42 +00:00
Mitchell Livingston
8696495ee2
patch from softwareelves that relaxes the requirements for activity for peers in low peer situations
2007-05-24 20:09:32 +00:00
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