1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-02-24 15:10:39 +00:00
Commit graph

781 commits

Author SHA1 Message Date
Charles Kerr
439c1f38c1 some experimental code. (1) try to improve throughput to peers. (2) add first draft of new tr_stat fields requested by BentMyWookie (3) raise the per-torrent peer limit to 100 to match LibTorrent's defaults 2007-09-27 03:03:38 +00:00
Charles Kerr
d386617da2 only send a peer keepalive messages when we're not sending them anything else 2007-09-26 17:34:33 +00:00
Charles Kerr
773fa8f1f6 for every connected peer, send a keepalive message every 90 seconds 2007-09-26 15:14:37 +00:00
Charles Kerr
7ccab9de2c peer i/o cleanup 2007-09-26 14:42:03 +00:00
Charles Kerr
682be6b12e don't bother remembering peers that hang up on us.
don't bother remembering peers that are seeds when we're seeding.
2007-09-26 04:44:54 +00:00
Charles Kerr
f20358927b lots of handshake fixes. incoming connections work now, both encrypted & plaintext. yay! 2007-09-26 03:52:30 +00:00
Charles Kerr
b63a505c6d fix a handshake bug and reduce the idle cpu load a little. 2007-09-26 02:29:49 +00:00
Charles Kerr
ee6a0b8945 modify the tr_stat struct as hashed out by charles_ and BentMyWookie. sync gtk, ipc, and wx clients. 2007-09-26 01:55:04 +00:00
Charles Kerr
c6fdad0514 accept erdgeist's suggestion of using ensureMinimumFileSize() only on WIN32 -- on posix, seek+write is enough. 2007-09-25 23:21:00 +00:00
Charles Kerr
fef89a3bc7 * record the ports of incoming sockets. we might need them later if we want to disconnect and reconnect.
* for portability, use libevent API for some socket upkeep
2007-09-25 23:10:34 +00:00
Charles Kerr
904359a049 * fix oops from last checkin
* remove some unused fields from internal structures
2007-09-25 22:37:23 +00:00
Charles Kerr
73522af17c fix peer-msgs.c assertion failure. (tbo) 2007-09-25 22:30:41 +00:00
Charles Kerr
7a15abaf7a better handling of tracker error messages. 2007-09-25 18:39:58 +00:00
Charles Kerr
dcfe4f9802 if we connect to a peer that understands the encryption handshake, try harder to continue the connection in encrypted mode. 2007-09-25 17:56:46 +00:00
Charles Kerr
5aecf680f0 when a peer tells us that it's switched listening ports, remember the new port for the next time we connect. 2007-09-25 17:44:50 +00:00
Charles Kerr
dd8dc4d87e tweak the bitfield code to be a little faster. 2007-09-25 17:43:39 +00:00
Charles Kerr
1d1a23508b * follow the BT spec more closely by disallowing peers to request blocks of more than 16KiB from us.
* don't register the choke and connection timers for torrents that aren't running.  It doesn't hurt anything but does waste a few cycles.
2007-09-25 00:04:29 +00:00
Charles Kerr
6c8d9d42d3 fixed tracker bug reported by TooMuchTime of OiNK fame 2007-09-24 20:27:20 +00:00
Charles Kerr
7caf9550df shut up some more console messages 2007-09-24 19:12:52 +00:00
Charles Kerr
dd6f87a5eb fix race condition in the torrent rechecker. 2007-09-24 17:47:15 +00:00
Charles Kerr
6897fe4327 plug some minor memory leaks. (valgrind) 2007-09-24 15:50:59 +00:00
Charles Kerr
b402687c93 * add sanity checks to incoming piece data requests. This may solve the inout.c:99 assertion failure.
* rename the gtk client from `transmission-gtk' to `transmission' for parity with the mac client.
2007-09-23 23:38:39 +00:00
Charles Kerr
4834dc4b13 fix crash-on-shutdown 2007-09-23 19:24:06 +00:00
Charles Kerr
b3fde0b43b tweak responsivenes on switching between uploading' and downloading' when a user changes a file's do-not-download state 2007-09-23 14:17:39 +00:00
Charles Kerr
d27c9c5034 * update tor->activityDate whenever piece data is transferred. 2007-09-23 14:12:17 +00:00
Charles Kerr
89da2294b1 * when a torrent's done downloading, have it switch to seeding mode.
* tweak the gtk+ client's torrent inspector's display of transfer rates
2007-09-23 13:53:44 +00:00
Charles Kerr
968868debe fix bug that tended to disconnect from valid peers when we were seeding. also, follow the BT spec's terminology a little closer. 2007-09-23 02:19:59 +00:00
Charles Kerr
7a54e88d4e fix bug #342 -- some hash checks were incorrectly failing, which caused the `bytes downloaded' field to appear to jump back and forth 2007-09-23 02:11:53 +00:00
Charles Kerr
d8d46517b9 fix a couple of encryption bugs. 2007-09-22 21:48:02 +00:00
Charles Kerr
3c73a86595 tweak some more. follow BentMyWookie's suggestion for raising the connection limits. 2007-09-22 14:42:15 +00:00
Charles Kerr
a33a033b9b tweak the peer mgr 2007-09-22 14:32:02 +00:00
Charles Kerr
10b8326f1d add a peer connection manager s.t. have a consistent way of disconnecting from bad peers, connecting to new potential peers, disconnecting from seeds when we're seeding, etc. 2007-09-22 14:18:52 +00:00
Charles Kerr
ea7513e59d undo commit that accidentally checked in testing code that only allowed connections from encrypted peers 2007-09-22 05:40:33 +00:00
Charles Kerr
c6aa57f306 make download speed limits work? 2007-09-22 05:16:32 +00:00
Charles Kerr
87f53cba5b maybe get speed limits working. 2007-09-22 04:44:50 +00:00
Charles Kerr
ebc612d725 get encrypted uTorrent working. 2007-09-22 03:37:37 +00:00
Charles Kerr
f724cdd304 * abort connections if the peer selects an encryption option we didn't offer them.
* fix a shutdown crash as a result of peer-mgr timers not getting destroyed.
* remove some console messages.
2007-09-22 00:53:11 +00:00
Charles Kerr
a903f07058 fix logic error in handshake that allowed unencrypted peers even when "ignore unencrypted peers" is checked 2007-09-22 00:36:37 +00:00
Charles Kerr
56b0e5d1ac * remove some console messages.
* scrape sooner when peers are added.
* added stub code for the connection manager code
2007-09-22 00:22:10 +00:00
Charles Kerr
4b46430731 give waldorf a different assertion to crash on. 2007-09-21 15:31:46 +00:00
Charles Kerr
980a7bda9a fix stat bug reported by BentMyWookie 2007-09-21 15:13:23 +00:00
Charles Kerr
e9ed5e28d9 * accept tiennou's partial patch for `fast peers' extension
* fix growl problem I introduced in the last checkin, reported by chrissturm
2007-09-21 14:50:29 +00:00
Charles Kerr
9248143ce8 fix recursive crash when stopping a torrent, reported by plantain. silence a few more console messages. 2007-09-21 14:20:55 +00:00
Charles Kerr
54c84d0b30 silence a few more console messages 2007-09-21 13:52:42 +00:00
Charles Kerr
4d15bbdc2a slightly less broken handling of cases where we can't bind to our listening port. 2007-09-21 05:31:29 +00:00
Charles Kerr
6479ecbcf6 fix crash reported by Gimp_, John_Clay, and persept_ 2007-09-21 04:41:44 +00:00
Charles Kerr
28bcf6204b clamp down on the flood of debug messages. 2007-09-20 23:33:46 +00:00
Charles Kerr
379beed969 if we're seeding, disconnect from other seeds (part 1 of 2) 2007-09-20 23:07:36 +00:00
Charles Kerr
fb70a9cca0 remove the backwards compatability typedefs at BentMyWookie's suggestion. update libT, gtk, daemon, and cli accordingly... 2007-09-20 20:14:13 +00:00
Charles Kerr
ad71027cbb fix small merge wart 2007-09-20 16:44:37 +00:00
Mitchell Livingston
76da1185ca merge encryption branch to trunk (xcode project is still out of date) 2007-09-20 16:32:01 +00:00
Charles Kerr
d996b96e65 in WIN32, #define lseek _lseeki64 2007-09-09 01:32:59 +00:00
Charles Kerr
b0505157a4 (0.8x) take denis_' suggestion for improving the peer debug message 2007-09-09 00:45:08 +00:00
Charles Kerr
4b980c4c36 (trunk) fix a nasty width truncation bug, reported by Eric in http://transmission.m0k.org/forum/viewtopic.php?t=2304&start=16 2007-09-06 16:28:24 +00:00
Charles Kerr
3cd185747c fix cut-and-paste bug 2007-09-05 23:58:35 +00:00
Charles Kerr
b1c9a9bd97 (trunk) fix some of the crash-on-shutdown issues. 2007-09-05 23:01:56 +00:00
Charles Kerr
7be8b8d116 (trunk) better fix for previous commit 2007-09-01 02:56:48 +00:00
Charles Kerr
eeb5cc6b5e (trunk) Fix hash-checking error. Thanks to denis for tracking it down and submitting a patch. 2007-09-01 02:46:04 +00:00
Josh Elsasser
d422d6dbc7 Enable the azureus/libtorrent extension negotiation reserved bits. 2007-08-26 16:16:41 +00:00
Charles Kerr
53d48e4c37 add utility function for setting libevent timer intervals 2007-08-23 20:33:01 +00:00
Josh Elsasser
6323a59c6a Add workaround for broken bittyrant client name. 2007-08-23 06:44:52 +00:00
Charles Kerr
77e7bc4f84 make upnp's internal structures' naming schemes whallop-like 2007-08-21 20:38:34 +00:00
Charles Kerr
44f6cb1098 fix NaN error reported by persept 2007-08-21 16:26:01 +00:00
Charles Kerr
bae07d471e added support for `corrupt' announce tag s.t. corrupted bytes don't count towards your download ratio 2007-08-21 15:17:02 +00:00
Charles Kerr
8c54b7eb46 ensure that all the tracker destruction code is done in the libevent thread, for a cleaner shutdown 2007-08-21 00:01:14 +00:00
Charles Kerr
624257c995 better cleanup on shutdown. don't crash when the torrent doesn't support scrape. (Gimp :) 2007-08-20 23:37:08 +00:00
Charles Kerr
64faed5c47 better saving of run/stopped state. 2007-08-20 23:36:18 +00:00
Charles Kerr
1d6e20594d minor improvements to.. you guessed it.. the tracker/libevent code 2007-08-20 02:29:36 +00:00
Charles Kerr
1f08d0ce52 cleaner shutdown 2007-08-20 02:18:38 +00:00
Charles Kerr
8f0c231a3a fix FMR on shutdown 2007-08-20 02:12:55 +00:00
Charles Kerr
4e82903313 better fix for the leak in r2870 2007-08-19 04:03:06 +00:00
Charles Kerr
e19ecccae8 send libevent's warning messages to our logging framework instead of to the console 2007-08-19 03:54:27 +00:00
Charles Kerr
b0919dca34 ...and, yet another memory leak, this time when trying to add a torrent that can't be added 2007-08-19 03:42:58 +00:00
Charles Kerr
47f1457d67 fix crash-on-shutdown bug reported by BentMyWookie 2007-08-19 02:55:11 +00:00
Charles Kerr
7b2a9f274a accidentally checked in a debugging statement 2007-08-19 02:23:35 +00:00
Charles Kerr
027fa13c5b fix win32 build. (#304, lubomir.marinov) 2007-08-19 02:10:18 +00:00
Charles Kerr
13c91c2d99 upnp.c needs platform.h if VERBOSE_LOG is defined (ticket #305, mtolman) 2007-08-19 02:07:29 +00:00
Charles Kerr
82db9f6cc9 fix a couple of more memory leaks that valgrind found 2007-08-19 00:18:43 +00:00
Charles Kerr
b66efdf998 tracker tweaks 2007-08-19 00:02:23 +00:00
Charles Kerr
1e53e9de72 shut up a compiler warning 2007-08-18 23:32:07 +00:00
Charles Kerr
8f78b809d1 fix minor memory leaks introduced in the last couple of days 2007-08-18 22:35:09 +00:00
Charles Kerr
633ade8004 added mirek's slovakian translation. added mirek, Niels Provos, and TooMuchTime to the `thanks' sectio of AUTHORS 2007-08-18 18:33:47 +00:00
Charles Kerr
ea49180f94 $Id$ 2007-08-18 17:19:49 +00:00
Charles Kerr
43bfc5cd7f update version.sh to exclude third-party. add $Id:$ to the new files s.t. version.sh will find them. 2007-08-18 17:05:51 +00:00
Charles Kerr
b9c2ea46ce add the content-length header. I'm not getting any tracker errors anymore; please let me know if your experience differs 2007-08-18 15:47:08 +00:00
Charles Kerr
39a43cbc08 * more work on the tracker... getting closer.
* oops!  make sure autoconf is giving the `0.80+' in the User-Agent header.
2007-08-18 08:28:57 +00:00
Charles Kerr
3a45686c3f push event_del() through the libevent pipe too. 2007-08-18 06:59:20 +00:00
Charles Kerr
9cb2dcb63d better error reporting in the new tracker code 2007-08-18 06:06:53 +00:00
Charles Kerr
3f777e3cb9 before the first scrape, set leechers/seeders/downloads to -1 to represent n/a 2007-08-18 03:11:08 +00:00
Charles Kerr
35b727788e do all the libevent enqueuing from a single thread. 2007-08-18 03:02:32 +00:00
Charles Kerr
8713d3468c don't cache the connection; these are one-shot requests 2007-08-17 05:00:59 +00:00
Charles Kerr
d5cfbf9426 this seems to fix the double-start bug reported by joshe 2007-08-17 04:50:45 +00:00
Charles Kerr
34e8174ee8 shut down the libevent thread gracefully on shutdown 2007-08-17 03:37:45 +00:00
Charles Kerr
0c60e29934 whee 2007-08-17 03:13:42 +00:00
Charles Kerr
c449a4665d fix shutdown error in the new tracker code, reported by joshe 2007-08-17 03:03:28 +00:00
Charles Kerr
5c3d45767e fix crash-on-startup bug reported by Lacrocivious 2007-08-16 20:59:09 +00:00
Charles Kerr
5f5a743790 the new tracker code seems to be working, so now it's time for me to learn yet again how much better users are at noticing bugs than I am. :) 2007-08-16 20:00:06 +00:00
Josh Elsasser
3d65dcd13e I'm an idiot. Base 2 is not the same thing as base 16. 2007-08-16 18:34:44 +00:00
Josh Elsasser
3d0e98b2c7 Save client name from azureus or extended handshake, overriding name deduced from peer id. 2007-08-15 23:03:50 +00:00
Josh Elsasser
7301b39c8b Rework utf-8 string concat function a little and make it more widely available. 2007-08-15 23:02:56 +00:00