Commit Graph

1765 Commits

Author SHA1 Message Date
Mukund Sivaraman 196ae72a85 Don't move all the rest of peers if current peer is choked
Only move the last peer into place.
2008-08-22 16:30:02 +00:00
Mukund Sivaraman 75d2e74a64 Use stricter type for enums 2008-08-22 16:13:52 +00:00
Mukund Sivaraman b79e6561c0 Remove unused missingBlockCount 2008-08-22 16:03:49 +00:00
Charles Kerr c32491ab3a (libT) remove a little more dead code 2008-08-22 15:33:55 +00:00
Charles Kerr f8d38a180e according to vraa's profiling, the highest CPU hit other than encryption is in peerPulse(). do we really need to call it every 50 msec? change the peerPulse() interval to 250 msec. 2008-08-22 15:15:02 +00:00
Charles Kerr f661504d66 (libT) say goodbye to the last `ii' variable in libT 2008-08-22 15:13:01 +00:00
Charles Kerr ef68e36a0d (libT) more dead code removal: tr_compareUint32(), tr_compareUint64(), tr_strcmp(), tr_strcasecmp() 2008-08-22 14:52:20 +00:00
Mukund Sivaraman 7f749d1284 Sort piece_data_time in descending order.
Also fix code style in some places.
2008-08-22 02:34:22 +00:00
Mukund Sivaraman 59351991f6 Further fix/cleanup compare code 2008-08-22 02:15:37 +00:00
Charles Kerr d323a99cdd undo part of r6616 to address the assertion failure reported by andersos and Waldorf 2008-08-22 01:27:00 +00:00
Charles Kerr 7e4fb99f8c * add DISABLE_GETTEXT preprocessor directive to turn off i18n in libtransmission for embedded devices.
* remove `wchar.h' #include from shttpd that broke the compile on embedded devices.
2008-08-21 21:04:57 +00:00
Charles Kerr ca45125259 (libT) more dead code removal: tr_compareTime() and tr_compareDouble() 2008-08-21 20:39:57 +00:00
Charles Kerr 3df44dad3d maybe fix m1b's tracker issue 2008-08-21 20:18:34 +00:00
Charles Kerr 1105dc0038 (libT) remove some dead functions: tr_calloc(), tr_compareUint16(), tr_compareUint32() 2008-08-21 19:03:56 +00:00
Charles Kerr 2d2d173275 (libT) avoid an unnecessary memory alloc 2008-08-21 18:40:40 +00:00
Charles Kerr 3f25d101e0 fix metainfo bug from earlier today. (m1b, andersos) 2008-08-21 17:03:44 +00:00
Charles Kerr 58881d45be more metainfo/bencode cleanup 2008-08-21 16:12:17 +00:00
Charles Kerr dcecf09d96 bencode cleanup: remove unused functions and unnecessary #includes 2008-08-21 14:57:59 +00:00
Charles Kerr 1db57b1468 more metainfo cleanup 2008-08-20 21:01:17 +00:00
Charles Kerr 41258ced7e get rid of strlcat_utf8() 2008-08-20 19:21:57 +00:00
Charles Kerr 9eb2f15fff allocate torrent/resume filenames on the heap instead of the stack 2008-08-20 19:00:52 +00:00
Charles Kerr 3b7499a79b make tr_bencDictFindType() private. 2008-08-20 18:42:45 +00:00
Mukund Sivaraman 2ed1e6ee9d Use signed integers for storing the random values 2008-08-20 16:19:47 +00:00
Mukund Sivaraman d712f22b21 Rename function to indicate its stupidity 2008-08-20 14:55:23 +00:00
Mukund Sivaraman e84275e429 Replace the random number generator inside peer-mgr with a
stupid faster one.
2008-08-20 14:36:15 +00:00
Mukund Sivaraman 4796e40d27 Inline tr_compareUint16() in this case 2008-08-20 13:54:31 +00:00
Mukund Sivaraman ed7685dd1a Make tr_bitfieldHas() a macro 2008-08-20 13:45:52 +00:00
Charles Kerr 6e23743c33 (libT) do proper JSON escaping 2008-08-19 23:11:35 +00:00
Charles Kerr 812b6a1218 roll back the last two diffs (r6582 and r6583) in favor of a simpler/cleaner/better fix 2008-08-18 03:44:09 +00:00
Charles Kerr 0396d9691f (libT) better handling of non-ascii characters when parsing JSON files 2008-08-18 03:10:59 +00:00
Mukund Sivaraman e44f96c88c Send UTF-8 characters straight out in the JSON without encoding further
The code still handles escaping of control characters and double quotes.

Bugs #1089, #1169 and #1190 may be fixed by this commit.
2008-08-17 21:53:24 +00:00
Mukund Sivaraman 87513aa8f8 Add UTF-8 charset to Content-Type HTTP headers 2008-08-17 21:16:22 +00:00
Mukund Sivaraman 317281f87c Don't show an error when transmission is run twice
Instead, present the main window. This commit also auto-generates
the dbus bindings.
2008-08-17 12:39:26 +00:00
Charles Kerr d06f101e57 #220: lazy bitfields 2008-08-16 21:06:57 +00:00
Charles Kerr 93898401fb more connection management changes 2008-08-16 16:00:49 +00:00
Charles Kerr c3eb56a6e0 (libT) some more peer connection management: (1) reset `numFails' to zero after a successful connect (2) tweak the reconnect intervals a bit 2008-08-16 06:07:11 +00:00
Charles Kerr 52efe10ec5 a few attempts to reduce the "router death" load: lower the total number of connections made per second. increase the intervals for reconnecting to some peers. simplify the code a bit. 2008-08-16 05:12:55 +00:00
Charles Kerr 94ac86bec6 (libT) route all outbound peer protocol messages through the outMessages buffer, to ensure that they're sent in sequence. previously the outbound pex message wasn't queued in this way. 2008-08-16 05:11:28 +00:00
Charles Kerr 24362e1b94 (libT) fix a couple of compiler warnings from gcc -Wmissing-prototypes -Wdeclaration-after-statement 2008-08-15 20:28:43 +00:00
Charles Kerr 7b8b26bcbb fix shttpd issue reported by Gimp_ 2008-08-15 19:45:46 +00:00
Charles Kerr d7ab0d8a15 possible quick-fix for the "wasted data due to collisions" bug reported in http://forum.transmissionbt.com/viewtopic.php?f=3&t=5643. surely it's not this easy, but let's see 2008-08-14 20:17:55 +00:00
Charles Kerr d6b2cbae9b (libT) add unit tests for tr_bitfieldAddRange() 2008-08-14 14:38:13 +00:00
Charles Kerr 94c106388b (libT) don't use goto when we don't have to :) 2008-08-14 11:45:12 +00:00
Mukund Sivaraman 11ad6c7087 Optimize tr_bitFieldAddRange()
Also add comments documenting the usage of these functions.
2008-08-14 11:31:25 +00:00
Mukund Sivaraman 39c8cdce5f Replace values.h with limits.h 2008-08-14 11:14:57 +00:00
Mukund Sivaraman de62de3e19 Replace random number generation code 2008-08-14 11:11:25 +00:00
Mukund Sivaraman 3895b39d60 Fix leak of torrents 2008-08-14 10:39:27 +00:00
Mukund Sivaraman b6791332cd Respect non-standard install paths for web interface files 2008-08-14 10:35:11 +00:00
Charles Kerr f4a5315ec4 #1156: make the RPC callbacks a little more flexible to make thread issues easier on the mac client 2008-08-14 02:12:29 +00:00
Charles Kerr 0048047647 (libT) tr_bitfieldRemRange speedup. (muks) 2008-08-13 19:25:08 +00:00
Charles Kerr 540c68ee01 update the regression tests to hammer tr_bitfieldRemRange() a little harder 2008-08-13 18:55:27 +00:00
Charles Kerr dd51caee94 #1186: crash by maliciously-crafted .torrent files w/piece length of zero 2008-08-13 14:19:25 +00:00
Charles Kerr 939eed339a (libT) recognize BitSpirit peer-ids. 2008-08-12 17:33:36 +00:00
Charles Kerr fb6db8d5ef readability tweak: remove thread names. (muks) 2008-08-12 14:03:03 +00:00
Charles Kerr c75c512ff1 readability improvments #1, #2, #3, #4. (muks) 2008-08-12 13:51:11 +00:00
Charles Kerr 51aff87443 lots of C correctness tweaks suggested by sparse/cgcc 2008-08-11 19:05:02 +00:00
Charles Kerr 647dc88f21 (libT) safer environmental variable handling (muks) 2008-08-11 18:33:59 +00:00
Charles Kerr 05e80bea43 (libT) #1179: when creating a torrent, don't add an announce-list if there's only one tracker 2008-08-11 17:29:53 +00:00
Charles Kerr 17cde72891 (libT) #1176: memory leaks in libtransmission 2008-08-11 17:00:23 +00:00
Charles Kerr aac6a6fdbf (libT) #1178: Add missing va_end()s 2008-08-11 04:40:29 +00:00
Charles Kerr 2e6443a53d #1168: reading past the end of KTorrent's pex added.f strings 2008-08-10 14:58:11 +00:00
Charles Kerr 822238ca33 that's the trouble with quick fixes. 2008-08-09 23:44:31 +00:00
Charles Kerr 58fb922ac1 silence the logspam described in http://forum.transmissionbt.com/viewtopic.php?f=4&t=5588& 2008-08-09 16:17:59 +00:00
Charles Kerr 6937164c93 back out the changes from r6415. 2008-08-08 22:44:32 +00:00
Charles Kerr efadcd8926 #1155: when creating new torrents > 2 GiB, piece size should be 2 MiB 2008-08-07 19:25:19 +00:00
Charles Kerr eec87200e1 possible fix for #1149 2008-08-07 05:55:40 +00:00
Charles Kerr 98e1b995e0 possible fix for #1134: revert libtransmission/web.c back to r6354 2008-08-06 23:33:29 +00:00
Charles Kerr c6026a3b66 #1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero#1143: crash in 1.30 when adding torrents: div by zero 2008-08-06 11:39:30 +00:00
Charles Kerr b068dc07a6 #1129 alternate fix: / should redirect to, not replace, /transmission/web 2008-08-06 00:24:05 +00:00
Charles Kerr 74dd613895 #1135: crashes when adding torrent, with "assert( ( info->pieceSize % tor->blockSize ) == 0 );" 2008-08-05 20:27:40 +00:00
Charles Kerr 427e714060 1129: You must add "/transmission/web/" to your IP to view web interface 2008-08-05 16:41:09 +00:00
Charles Kerr b860119cd3 minor text cleanup 2008-08-01 16:43:22 +00:00
Charles Kerr 28de948233 #1126: crash on quit 2008-08-01 13:46:03 +00:00
Charles Kerr 61258969c2 dead code removal 2008-08-01 04:05:22 +00:00
Charles Kerr 81785b5633 #1126: crash on quit 2008-07-31 13:06:59 +00:00
Charles Kerr 978b60b8ad Make it a little easier to trace backwards from "Unspecified I/O error" to find out what the real problem is. 2008-07-30 14:46:45 +00:00
Charles Kerr 9006f75edb #1117: crash on exit in curl_multi_socket_action() 2008-07-29 18:53:41 +00:00
Charles Kerr 28db5be802 #1123: unreachable peers need to be handled better 2008-07-29 00:52:02 +00:00
Charles Kerr 703f96aeb3 #1122: faster http processing 2008-07-29 00:51:07 +00:00
Charles Kerr 96ae464283 rename `pulse' as peerPulse() and trackerPulse() to make backtraces easier to read 2008-07-28 19:47:16 +00:00
Charles Kerr 72880446d8 (daemon) #1107: transmission-remote -t[n] -i should display webseeding info 2008-07-27 14:10:32 +00:00
Charles Kerr 771f299c53 (rpc) to lower the bandwidth/cpu used up by very large torrent lists, allow finer-grained control over which fields to return in the `torrent-get' request. 2008-07-26 14:47:07 +00:00
Charles Kerr d8c098f7a8 (libT) ensure that .torrents and stats aren't lost when migrating to 1.30 from < 1.20. Thanks to Michael Dürwald for reporting this bug. 2008-07-25 19:55:09 +00:00
Charles Kerr fc87510be3 (gtk) #1108: transmission includes several unlocalized strings 2008-07-25 11:50:17 +00:00
Charles Kerr 20b283584b one more piece of Aloisius' performance patch: set SO_SNDBUF to 2x MTU 2008-07-24 20:58:58 +00:00
Charles Kerr 61e588d3d6 (libT) make unrecognized peer_ids a little more readable for the peers tab. 2008-07-24 18:53:17 +00:00
Charles Kerr d6ede8d09e (libT) make the licensing consistent across all the files which only contain my code 2008-07-22 23:28:28 +00:00
Charles Kerr 5da99a7360 #1099: transmission-remote confuses -ph, -pn and -pl (priorities) options with the -p (port) option 2008-07-21 19:24:35 +00:00
Charles Kerr c06be77724 #1101 (rpc): add individual file progress to torrent-get's "files" message 2008-07-21 18:42:51 +00:00
Charles Kerr 7372c4f39f add more rpc unit tests. man page cleanups. 2008-07-21 16:11:47 +00:00
Charles Kerr 4bff7981b7 update snapshot of Jean Gressmann's JSON parser 2008-07-21 16:11:00 +00:00
Charles Kerr 43b99f425a (libT) fix minor PEX memory leak reported by valgrind 2008-07-18 19:50:38 +00:00
Mitchell Livingston dc1a870e7f eliminate 2 tiny memory leaks from the last commit 2008-07-18 04:57:38 +00:00
Mitchell Livingston f49b471454 the mac app now includes and works with the web ui 2008-07-18 04:54:11 +00:00
Charles Kerr 2eb89eb2a7 (libT) fix some minor warnings foudn by clang's scan-build and reported by m1b 2008-07-17 20:33:34 +00:00
Charles Kerr 9650fcc0e2 (rpc) serve the clutch static files faster 2008-07-17 14:45:31 +00:00
Charles Kerr 6ffe3bcec5 (rpc) possible fix for the new breakage caused by the shttpd upgrade in r6349 2008-07-17 04:27:03 +00:00
Charles Kerr 2281c39c1f (third-party) upgrade shttpd from 1.39 to the latest, 1.41 2008-07-16 23:55:49 +00:00
Charles Kerr 2bd8dbf33a (rpc) allocate a bit in torrent-set/torrent-get for detailed peer information 2008-07-16 20:31:17 +00:00
Charles Kerr af626c9e0b (clutch) fix error with setting the incoming port via clutch preferences. reported by lolek in irc 2008-07-16 20:06:28 +00:00