Commit Graph

29 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
Charles Kerr ebb141b232 better encapsulation of platform-specific constructs: tr_thread_t, tr_cond_t, tr_lock_t 2007-07-30 15:27:52 +00:00
Charles Kerr e07d0220a9 this looks bug but it's not: just janitorial cleanup, moving #includes from headers into source file 2007-07-29 18:11:21 +00:00
Charles Kerr c24fc6e16a de-inline some big functions. 2007-07-19 10:56:14 +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 b79beeff66 clean up #includes a bit. 2007-07-09 20:10:42 +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 8e401729cd Modified tr_torrentCanAdd() to give the new functionality BMW suggests 2007-06-27 14:54:31 +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
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
Eric Petit 09c277257b Mark a peer as uploading if we are unchoked *and* interested 2007-01-21 07:27:57 +00:00
Eric Petit 2a4be1b0cd Don't use names that can conflict with system functions - Patch by Christian Weisgerber 2006-12-30 00:27:05 +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 dfaa09ce40 Adds a real test for lrintf because some Linux systems, like BeOS, seem
to provide a non-working lrintf implementation
(Patch from Henner Sudek, modified)
2006-04-03 09:05:47 +00:00
Josh Elsasser ee1428db43 Patch from Jeremy Messenger to build on FreeBSD 4. 2006-03-31 17:52:07 +00:00
Eric Petit a1830a25bf Merge from branches/new_api:r161 2006-03-23 12:39:39 +00:00
Eric Petit 6197b6665c Added optimistic choking 2006-02-08 22:21:58 +00:00
Eric Petit c2fc72b477 Randomly choke and unchoke peers who upload less than 0.1KB/s to us,
instead of trying to compare their upload rates
2006-02-08 21:26:27 +00:00
Eric Petit 9b2e8566dd BeOS fixes 2006-02-07 09:34:30 +00:00
Eric Petit f1b113ec5b Cleaning and minor optims 2006-02-07 03:10:42 +00:00
Eric Petit 355fe1273f Comments 2006-02-05 21:10:20 +00:00
Eric Petit 00ef8642bf Fixes a crash (quite amazing that it didn't crash more often, actually...) 2006-01-31 07:11:28 +00:00
Eric Petit aa6c52ef46 Fixed a lame typo so the algorithm may actually work 2006-01-31 04:58:28 +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