Commit Graph

342 Commits

Author SHA1 Message Date
Charles Kerr 73b546c817 (trunk libT) possible fix for #1894: Crash when download finishes and seed ratio is already met 2009-03-30 05:30:28 +00:00
Charles Kerr f1d92708e7 (trunk) more speedlimit work 2009-03-28 16:47:01 +00:00
Erick Turnquist 2f8d56e77f (trunk libT) make IPv6's two IPv4-compatible address formats invalid peer addresses
IPv4 peers should only be seen from an IPv4-connected tracker.
2009-03-27 01:31:17 +00:00
Erick Turnquist dd7eb76718 (trunk libT) remove tr_suspectAddress() since all seems well 2009-03-27 01:14:25 +00:00
Charles Kerr 857b3dab10 (trunk libT) #1823: Ratio limit is only checked when peers are active 2009-03-01 13:56:22 +00:00
Charles Kerr c07180fa49 (trunk libT) #1829: age out the refill list every 10 seconds, not every 1 second 2009-02-25 22:15:04 +00:00
Charles Kerr 91940d1c07 (trunk libT) #1829: high CPU use in refillPiece() 2009-02-25 13:04:51 +00:00
Charles Kerr 3ce4f44a6e (trunk libT) more #1829 2009-02-18 22:25:13 +00:00
Charles Kerr f9e400a22d (trunk libT) a little more work on #1829 2009-02-18 21:27:44 +00:00
Charles Kerr b322fb2e54 (trunk libT) experimental fix for #1829: High CPU use in refillPulse() 2009-02-18 17:19:36 +00:00
Mitchell Livingston 3d1cf6ba0d assorted trivial cleanup 2009-02-17 04:00:53 +00:00
Mitchell Livingston 39b0108366 have the mac ui use libT's ratio settings (attempt 1); when seed ratio is reached in libT, set the seed ratio setting to "seed forever" 2009-02-14 21:15:57 +00:00
Charles Kerr 3f9a1d090b (trunk) #1787: add support for seeding ratio limiting in libtransmission 2009-02-13 18:23:56 +00:00
Charles Kerr 509465a85b (trunk libT) partial revert of r7825: back out the refillPulse() changes 2009-02-11 16:34:35 +00:00
Charles Kerr 08289b9d13 (trunk libT) #1748: possible fix for the kqueue corruption errors by consolidating the three per-torrent libevent timers into three session-wide timers. Since most people reporting this error have lots of torrents loaded, consider a hypothetical example: if you had 500 torrents, this patch will reduce 1,500 libevent timers down to just three timers. On top of that, those three have simpler life cycles too... 2009-02-04 16:58:52 +00:00
Charles Kerr 5812b9f05b (trunk libT) more debugging messages 2009-01-24 17:20:07 +00:00
Charles Kerr 06887c9e9e (trunk libT) better implementation of r7761 to take into account feedback from repattila in the forums 2009-01-20 15:47:25 +00:00
Charles Kerr 4cbbefd656 (trunk libT) bah, fix r7761 oops 2009-01-20 05:45:03 +00:00
Charles Kerr 69404a8c36 (trunk libT) when pruning out slow peers, don't prune if we don't have good candidates to replace them. 2009-01-20 03:32:54 +00:00
Charles Kerr 9c9c94a81d (trunk libT) discard peers from the tracker or pex that have a port of 0 or a multicast address. 2009-01-17 23:14:35 +00:00
Charles Kerr 7a91840639 (trunk libT) Remove tr_peerMgrHasConnections, it isn't used anywhere 2009-01-14 01:37:24 +00:00
Charles Kerr 486c55c1ed (trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash 2009-01-13 21:00:05 +00:00
Charles Kerr 8b72408948 (trunk libT) Get rid of peer-mgr-private.h (from wereHamster) 2009-01-13 16:32:43 +00:00
Charles Kerr a13e0755f0 (trunk libT) close open files immediately after they're done downloading 2009-01-12 21:59:53 +00:00
Charles Kerr 2f6b56671f (trunk libT) win32 portability patch from Alexey 2009-01-11 17:02:04 +00:00
Charles Kerr fe816d8135 (trunk) update the GPL code's copyright dates 2009-01-10 23:09:07 +00:00
Charles Kerr 2702fc289a (trunk libT) finally get around to making upload-slots-per-torrent a settings.json option, thanks to friendly prodding from ful in #transmission 2009-01-09 15:45:44 +00:00
Charles Kerr 73d32850ed (trunk libT) fix refcount error in the new peer-io refcount code 2009-01-06 03:21:22 +00:00
Charles Kerr 3ff145f058 (trunk libT) two bugfixes in one: (1) fix leaking tr_handshake objects reported by BentMyWookie (2) fix yet another permutation of the tr_isBandwidth() assertion failure -- maybe the last one? -- reported by Waldorf 2009-01-06 00:24:44 +00:00
Charles Kerr 30a989f1df (trunk libT) fix the new-code errors reported by ZogG and Rolcol and Spaham 2009-01-05 18:20:47 +00:00
Charles Kerr 1b527610dd (trunk libT) yet another step in the debugging cycle, crash report from ZogG and Rolcol 2009-01-05 07:57:10 +00:00
Charles Kerr 124658791a (trunk libT) probably fix r7618 reported in #transmission by Rolcol 2009-01-05 06:45:08 +00:00
Charles Kerr 5ccd5a7700 (trunk libT) fix the much-hated "Assertion failed: (tr_isPeerIo( io ))". Also, repeated calls to tr_date() were taking up about 78% of the time in tr_stat(), so instead of calling multiple times, call it once in tr_stat() and pass that value around to the functions that need it. 2009-01-05 04:27:54 +00:00
Charles Kerr ca6dd89e10 (trunk libT) minor tr_ptrArray API cleanup 2009-01-04 16:59:15 +00:00
Charles Kerr 78cf80d3c0 (trunk libT) experimental code to get more peers faster 2009-01-03 07:23:26 +00:00
Charles Kerr 0d2d375125 (trunk libT) inline a few more torrent methods 2009-01-03 00:25:27 +00:00
Charles Kerr d756d6b58f (trunk libT) commit some debugging messages that were added to trackdown the multicast filter issue 2009-01-02 21:50:51 +00:00
Charles Kerr d202c5ecea (trunk libT) inline the ptrarray one-liners 2009-01-02 20:19:10 +00:00
Charles Kerr b41cf9f231 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bandwidth, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 19:56:06 +00:00
Charles Kerr 199e38dd66 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_completion, contain the it directly rather than a pointer to one allocated elsewhere on the heap. 2009-01-02 17:01:55 +00:00
Charles Kerr 82c5aca513 (trunk libT) Remove UNUSED attribute, the function argument is being used 2009-01-01 18:36:58 +00:00
Charles Kerr 5381e20e9b (trunk libT) improve piece verification speed by providing a larger buffer, and add a mechanism to reuse it when verifying an entire torrent at once. 2008-12-31 18:08:13 +00:00
Charles Kerr 71864c18e2 (trunk libT) blockIteratorNew() was overallocating much more memory than it used. 2008-12-30 21:18:30 +00:00
Charles Kerr 2b4193b200 (trunk libT) remove obsolete tr_peerMgr.c's getConnectedPeers() 2008-12-30 08:20:16 +00:00
Charles Kerr 427f639664 (trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ptrArray, contain the tr_ptrArray directly rather than a pointer to one allocated elsewhere on the heap. 2008-12-29 08:54:36 +00:00
Charles Kerr 6f8e5352ab (trunk libT) fix connectivity error reported by Stargazer. Also, add more debug statements to track down errors like this in the future 2008-12-24 02:50:08 +00:00
Charles Kerr dfcc9173e5 (trunk libT) #include "session.h" cleanup from wereHamster 2008-12-23 17:27:15 +00:00
Charles Kerr acdd8c860c (trunk libT) minor cleanups found while diffing for backport to 1.4x in r7455 2008-12-22 00:52:44 +00:00
Erick Turnquist 38efb62100 add some debugging stuff to track down where some bogus addresses are coming from 2008-12-21 19:13:52 +00:00
Charles Kerr 72ded3b272 try to rework the bandwidth code yet again s.t. it satisfies all three: (1) fairly distributes bandwidth across all peers, (2) scales well in high-bandwidth situations, (3) is good at hitting and staying at bandwidth limits/goals 2008-12-20 22:19:34 +00:00