Commit Graph

1841 Commits

Author SHA1 Message Date
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
Charles Kerr d26c3af13d (rpc) fix minor memory leak in the RPC server 2008-07-16 19:36:46 +00:00
Charles Kerr 1a1f195216 (rpc) better handling of multiple concurrent RPC connections 2008-07-16 17:47:20 +00:00
Charles Kerr 70a405f1a0 (gtk) add "Launch Clutch" button to the web tab in the preferences dialog. that way users won't have to dig through documentation to find the "http://localhost:port/transmission/clutch" URL. 2008-07-16 02:31:08 +00:00
Charles Kerr cb82d4ad1c (rpc) fix possible password authentication error reported by kman 2008-07-15 20:39:50 +00:00
Charles Kerr c692dff9d5 (gtk) #1088: when the gtk+ client is serving Clutch, torrents added via Clutch aren't shown in gtk+ client 2008-07-15 19:25:46 +00:00
Charles Kerr 2f239319b0 add a portability wrapper ``tr_snprintf()'' around snprintf() 2008-07-15 17:16:57 +00:00
Charles Kerr 5739207640 better nat-pmp error logging. (this will very briefly break the mac build) 2008-07-15 03:26:53 +00:00
Charles Kerr 92c42168ee fix rpc `uploadRatio' field as reported by blueluna 2008-07-15 03:26:01 +00:00
Charles Kerr 7974a1e50a (libT) add proxy port arg as requested by BentMyWookie 2008-07-15 01:03:03 +00:00
Charles Kerr 4813647346 #1084: Make `web' and `clutch' synonymous in the backend 2008-07-14 16:00:20 +00:00
Charles Kerr d5335b710b Update NEWS file to say the Clutch rewrite's been folded into Transmission. 2008-07-11 17:09:53 +00:00
Charles Kerr eb254b8a54 #1042: "Announce allowed: Never" 2008-07-11 11:51:15 +00:00
Charles Kerr 87ff06144a don't break the mac build 2008-07-11 04:19:23 +00:00
Charles Kerr a18f55d217 forgot an #include <sys/stat.h> 2008-07-11 04:11:22 +00:00
Charles Kerr b37a2cfa23 (1) add clutch to the tarball.
(2) on autoconf-based installs, install the clutch files in $(datadir)/transmission/web
(3) new function tr_getClutchDir().  Default implementation follows the XDG spec.
2008-07-11 04:07:14 +00:00
Charles Kerr 45a216bdc2 (daemon) let file download flags and priorities be set by transmission-remote. Add examples to the man page and --help.
(libT) minor tweaks to tr-getopt
(gtk) tweak the preference dialog's "port forwarding" text for clarity as suggested in the forums
2008-07-10 20:59:15 +00:00
Charles Kerr 1b8435aa02 (1) remote: fix bug with specifying torrent id for file list.
(2) very minor cleanup
2008-07-10 14:20:36 +00:00
Charles Kerr 7ea35b8afa (libT) avoid collisions between short & long getopts 2008-07-09 19:39:40 +00:00
Charles Kerr 1010c9d35b (libT) let tr_getopt() support short options' arguments to be embedded, such as -p51413 2008-07-09 15:39:53 +00:00
Charles Kerr 7dcbfaf91b code cleanup 2008-07-09 15:31:35 +00:00
Charles Kerr 9fb3bf6412 sync the man pages with the cli/daemon/remote changes 2008-07-08 17:44:33 +00:00
Charles Kerr 1cd9f2351e have daemon and cli use tr-getopt too. 2008-07-08 16:50:34 +00:00
Charles Kerr 33c817cc1f fold the rewritten getopt code into libT 2008-07-08 14:29:05 +00:00
Charles Kerr 6059240cb2 spec fix: timesCompleted is an int, not a double. 2008-07-07 06:06:00 +00:00
Charles Kerr c8d339c9ee (libT) #319: periodically save the .resume file in case of crash 2008-07-02 01:46:10 +00:00
Charles Kerr 70e21e93ff (libT) #1045: gracefully handle trackers that return a scrape interval that's too low 2008-07-02 01:17:57 +00:00
Charles Kerr 51535b4bf9 (rpc) uploading files via an http form w/file inputs works now. 2008-07-01 02:33:31 +00:00
Charles Kerr aae66cc073 (rpc) get torrent uploads partially working. 2008-06-30 21:11:53 +00:00
Charles Kerr fd06d85aee part 1 of Aloisius' performance patch 2008-06-27 02:42:44 +00:00
Charles Kerr 26261e3bde (rpc) fix crash when quickly toggling rpc on/off reported by John_Clay 2008-06-25 11:34:35 +00:00
Charles Kerr b1cc67ce2b when getting 5xx errors from a tracker, keep increasing the intervals between retries, instead of hammering the tracker at constant intervals. thanks to mape for this suggestion. 2008-06-24 21:39:07 +00:00
Charles Kerr cd6ff83415 (RPC) make all the speed units consistent. 2008-06-22 13:44:50 +00:00
Charles Kerr 751c166e9f (rpc) remove the sort and filter options from the "torrent-get" rpc command. NOTE: probably breaks the mac build; xcode needs to drop "rpc-utils" from its list of libtransmission source files 2008-06-21 15:08:34 +00:00
Charles Kerr cda886028d fix `HAVE' error that broke during the webseed-piece changes last week. Reported by Aloisius in http://forum.transmissionbt.com/viewtopic.php?t=5175 2008-06-21 01:03:31 +00:00
Mitchell Livingston ff4a64aba5 call new versions of Azureus Vuze 2008-06-20 22:05:37 +00:00
Charles Kerr 5c3cb6fbf2 add `isPrivate' to the info section of the torrent-get method 2008-06-20 19:55:34 +00:00
Charles Kerr 625bc10895 (libT) recognize & parse FlashGet peer-ids 2008-06-19 05:48:32 +00:00
Charles Kerr 8dd3e46450 minor bencode cleanup: (1) remove unused BENC_NULL (2) make tr_bencInit() a private static function in bencode.c 2008-06-19 02:53:57 +00:00
Charles Kerr 509dbaae3d senseless RPC changes 2008-06-18 22:01:15 +00:00
Charles Kerr ed29e553f1 (libT) fix compiler warning. 2008-06-17 18:47:31 +00:00
Charles Kerr 75cb355579 (rpc) fix sorting. simplify the spec, folding similar functions together 2008-06-17 16:25:13 +00:00
Charles Kerr 81b510bfd1 #1034: fix optimistic unchoke bug reported by Aloisius 2008-06-17 15:19:12 +00:00
Charles Kerr 16e3803082 small tr_torrentStat() speedup suggested by BentMyWookie 2008-06-17 14:25:23 +00:00
Charles Kerr 9ca2a3e0f8 (rpc) tweaks to the rpc spec. 2008-06-17 04:47:20 +00:00
Charles Kerr e8694f7f66 fix tr_strcasecmp in the case where HAVE_STRCASECMP is not defined 2008-06-16 22:15:53 +00:00
Charles Kerr 518f277e9f (RPC) add utility arguments for torrent-info: sort by (activity|age|id|name|progress|ratio|state|tracker), filter by (active|all|downloading|paused|seeding) 2008-06-16 22:11:50 +00:00
Charles Kerr fa92408627 #1032: recognize bitlord/bitcomet in the inspector's peers column 2008-06-16 17:26:19 +00:00
Charles Kerr 6779afac43 ensure JSON_int_t is an int64_t 2008-06-16 04:03:06 +00:00
Charles Kerr 6cce27bf54 (rpc) simplify the rpc accessors 2008-06-16 03:47:50 +00:00
Charles Kerr 25a20d172d tr_peerMgrHasConnections(): take webseeds into account, as suggested by BentMyWookie 2008-06-12 16:28:39 +00:00
Charles Kerr effb78d674 unify the daemon and gtk client's config files so that you can easily swap back and forth between clients and keep the same torrents and preferences. 2008-06-12 16:25:36 +00:00
Charles Kerr a029f4e34a tr_ctorSetDownloadDir(): handle NULL download dirs more gracefully. 2008-06-11 23:40:27 +00:00
Charles Kerr af8e44a5e7 maybe *now* 1.30 is feature complete: by popular demand, add proxy support for SOCKS4/SOCKS5. This will break the mac build temporarily. 2008-06-11 20:45:53 +00:00
Charles Kerr 71c2cdd1ea #966: allow blocklist support in the daemon. add extra info in the man page explaining how to add blocklists. 2008-06-11 20:09:36 +00:00
Charles Kerr f8314b364b fix an oops from the previous commit. hi, titer 2008-06-11 19:04:48 +00:00
Charles Kerr 85c26e9f7d fix a pair of webseed bugs reported by BentMyWookie 2008-06-11 19:01:16 +00:00
Charles Kerr f0229ed8ad (libT) allow custom blocklists... now all you need to do is place a file in the blocklists/ folder and Transmission will automatically use it the next time it starts. 2008-06-11 16:15:45 +00:00
Charles Kerr d2459fa2af fix ACL parsing error introduced by the shttpd auth code change. 2008-06-11 15:17:59 +00:00
Charles Kerr bc26bcb705 maybe fix the forced-recheck-on-startup bug that pea_, John_Clay, and Gimp_ reported over the last two days 2008-06-11 02:19:40 +00:00
Charles Kerr 13424ed977 (libT) add NULL pointer checks to tr_torrentStart(), tr_torrentStop() 2008-06-10 19:25:18 +00:00
Charles Kerr cd314c1af8 (libT) poll the RPC request queue more frequently if there have been recent requests. 2008-06-10 17:13:56 +00:00
Charles Kerr b94893a4c9 wire up the backend proxy support. 2008-06-10 16:16:31 +00:00
Charles Kerr 393ebbc24a more webseed work. 2008-06-10 02:36:52 +00:00
Charles Kerr 61b41adf1a have idle webseeds return a speed of -1 instead of 0 so that we can differentiate between stalled and idle. document this in transmission.h. 2008-06-10 01:46:36 +00:00
Charles Kerr 837f997e6c (libT) new API for webseed statistics: tr_torrentGetWebSpeeds() 2008-06-10 01:38:12 +00:00
Charles Kerr 9f23502411 use "1.0f" instead of "1f" 2008-06-10 00:31:06 +00:00
Charles Kerr eb72d44d94 fix oops from previous commit. hi, titer 2008-06-10 00:28:59 +00:00
Charles Kerr adbbf82302 (libT) make tr_torrentAmountFinished() look at the same pieces as tr_torrentAvailability() for consistency's sake as requested by BentMyWookie 2008-06-09 23:58:31 +00:00
Charles Kerr 0fced3a431 #1007: check_auth space delimiter bug 2008-06-09 23:28:14 +00:00
Charles Kerr 51f1126a6d (libT) make tr_torrentAvailability() a lot faster in the case where the torrent is complete, and a little faster in the genral case too. 2008-06-09 23:11:15 +00:00
Charles Kerr 52cd591d5c (libT) make tr_torrentAmountFinished() much faster when the torrent is complete 2008-06-09 23:05:14 +00:00
Charles Kerr dce24eb1f0 libT: first cut at implementing the internal peers' request queues as pieces rather than blocks, as discussed with erdgeist and denis, to avoid a couple of nasty CPU bottlenecks. 2008-06-09 22:53:45 +00:00
Charles Kerr 9f2d7c2c67 (libT) if there are webseeds, update the available amount accordingly 2008-06-09 02:38:27 +00:00
Charles Kerr ef3203a765 roll back the completion changes in r6072; it caused a crash 2008-06-09 00:59:33 +00:00
Mitchell Livingston 1c00343a02 fix minor memory leak when setting the rpc acl 2008-06-08 04:23:56 +00:00
Charles Kerr 7f8ef25acc whoops, left some test scaffolding code in r6073 2008-06-07 21:28:47 +00:00
Charles Kerr e3e3bee8b5 #800 initial support for GetRight-style fetching of data through http and ftp servers specified in the .torrent's "url-list" tag 2008-06-07 21:26:41 +00:00
Charles Kerr e212eeceb7 add first draft of tr_bitfieldFindTrue() courtesy of erdgeist 2008-06-07 14:41:31 +00:00
Charles Kerr 041561f232 minor refactoring of tr_bitfield to (a) simplify the tests and (b) make things easier to read 2008-06-07 01:44:54 +00:00
Charles Kerr 8732aa3bbc fix bitfield error reported by denis 2008-06-07 00:43:42 +00:00
Charles Kerr 7b88afdca7 (libT) 1. tweak tr_bitfieldTestFast(). 2. add tr_memdup() 2008-06-06 23:53:30 +00:00
Charles Kerr 2878d0d32e bitfield speedups written by denis__. Thanks! 2008-06-05 20:21:56 +00:00
Charles Kerr c0e5efbc03 fix some stub code 2008-06-05 17:32:36 +00:00
Charles Kerr f861f39711 maybe fix the tracker authentication problems reported by demio 2008-06-05 16:35:33 +00:00
Charles Kerr d3d4047da0 fix handshake.c crash reported by wereHamster 2008-06-05 16:25:22 +00:00
Charles Kerr ab17f553c4 get RPC password protections working in libT and the gtk+ client. mac, daemon, and cli need to be synced. 2008-06-05 16:23:03 +00:00
Charles Kerr 4d29a29003 (rpc server) fix ACL error reported by pea_ 2008-06-05 04:02:46 +00:00
Charles Kerr 32f71e1725 (libT RPC server): poll more frequently for new commands after we've received the first one. 2008-06-05 02:07:17 +00:00
Charles Kerr b92e88b29c fix tracker crash caused by the new add/remove tracker code reported by BentMyWookie 2008-06-04 23:46:32 +00:00
Charles Kerr 34d5433769 (gtk) more work on the RPC preferences tab: the ACL editor works now & is wired up... 2008-06-04 19:46:37 +00:00
Charles Kerr c724a73fb4 RPC ACL: (1) add a new call for testing ACLs (2) add wildcard notation support (3) add regression tests for the ACL tester and wildcard handler 2008-06-04 17:14:58 +00:00
Charles Kerr 3a3397ca84 modify the torrent-list response as per Gimp_'s request 2008-06-04 07:06:47 +00:00
Charles Kerr 1dd2abc711 fix the error message leak reported by BentMyWookie in the new ACL code 2008-06-04 06:36:50 +00:00
Charles Kerr 6ec33f5e23 (libT) handle a NULL third argument to tr_sessionSetRPCACL() 2008-06-04 04:49:45 +00:00
Charles Kerr 044bfbad39 add tr_torrentSetDoneDate() too 2008-06-03 19:42:54 +00:00
Charles Kerr 870c4d7650 add tr_torrentSetAddedDate() and tr_torrentSetActivityDate() 2008-06-03 19:22:22 +00:00
Charles Kerr e1a23350d4 (1) add a doneDate to tr_torrent and tr_stat. (2) save tr_torrent.doneDate and tr_torrent.activityDate between sessions in the .resume file. 2008-06-03 19:16:12 +00:00
Charles Kerr 547056b50b #988: Optimistic unchoke can unchoke uninterested peers 2008-06-03 04:29:56 +00:00
Charles Kerr ccaf782dd6 (libT) if the ACL passed in via tr_sessionInitFull() can't be parsed, log an tr_err() and use a TR_DEFAULT_RPC_ACL as the fallback. 2008-06-02 19:57:16 +00:00
Charles Kerr f8d40cdf00 (libT): added an ACL tester to tr_sessionSetRPCACL() and return an error string if the ACL can't be parsed. 2008-06-02 19:44:19 +00:00
Charles Kerr 53a426c738 add in some very simple bitfield tests, and add a #define option to turn it into a speed test 2008-06-02 15:52:16 +00:00
Charles Kerr 5db4ca7fa3 #981: add tr_stat.dateAdded to libT; add "sort by age" to gtk+ client 2008-06-02 04:41:55 +00:00
Charles Kerr 8db94c5862 #224 (creating multi-tracker torrents): add multitracker support in libT's makemeta API, and in the gtk+ interface. This probably breaks the mac build... 2008-06-01 05:36:23 +00:00
Charles Kerr f6dd06c367 r5987 tweak: silence a couple of console debugging messages that snuck into the commit 2008-06-01 01:55:05 +00:00
Charles Kerr 07c1b28e9e #838 (Adding trackers to existing torrents): add a backend API for this (tr_torrentSetAnnounceList) and implement a GUI for it in the gtk+ client. 2008-06-01 01:40:32 +00:00
Charles Kerr 0a023367b6 fix r5985 oops. I shouldn't make commits when I'm in a hurry. 2008-05-31 15:15:54 +00:00
Charles Kerr cdf5cb87d6 another tweak for calculating tr_stat.desiredAvailable faster, suggested by BentMyWookie 2008-05-31 05:22:10 +00:00
Charles Kerr c00a3a97b7 fix r5979 oops 2008-05-31 00:20:59 +00:00
Charles Kerr 5141a65d45 experimental message batcher as discussed in http://forum.transmissionbt.com/viewtopic.php?p=24251#24251 2008-05-31 00:16:26 +00:00
Charles Kerr e391ef6e1a on shutdown, close the most active torrents first. That way if we can't get everyting closed in a reasonable amount of time, at least we get the ones that affect stats first. 2008-05-30 17:22:26 +00:00
Charles Kerr f3db37ab1b add a couple of more ways to short-circuit the tr_stat.desiredAvailable test in tr_torrentStat(), as suggested by BentMyWookie 2008-05-30 16:49:03 +00:00
Charles Kerr 5ed97a1c04 refactor out some dead code in net.c, and probably give jhujhiti fits 2008-05-30 15:43:10 +00:00
Charles Kerr 0705eaa1c0 minor speedups in tr_torrentStat() and in bitfield manipulation 2008-05-30 15:40:46 +00:00
Charles Kerr 468a883f23 API cleanup: s/tr_torrentRates/tr_sessionGetSpeed/ 2008-05-30 15:19:07 +00:00
Charles Kerr e9c7e76c07 #980 optimistic unchoking is broken 2008-05-30 12:58:55 +00:00
Charles Kerr 93ee8b8c49 #972: Update to the 2008/05/29 snapshot of libnatpmp 2008-05-29 13:39:39 +00:00
Charles Kerr eb02b3e494 #972: merge upstream version of Jean Gressmann's JSON_parser 2008-05-29 03:24:26 +00:00
Charles Kerr 2c59589c6c * When loading a torrent, warn if no announce URLs are found.
* When possible, use the torrent name in metainfo warning messages.
2008-05-29 00:38:31 +00:00
Charles Kerr f61205e708 fix svn id property 2008-05-28 17:17:12 +00:00
Charles Kerr e6070f04f2 remove more dead code 2008-05-28 16:56:38 +00:00
Charles Kerr cd6ef35854 (libT) remove dead code 2008-05-28 16:52:31 +00:00
Charles Kerr ad2146cc24 #972 (partial) Transmission fails to compile with Sun Studio due to funky C code 2008-05-28 13:03:34 +00:00
Charles Kerr 36223c112e #971: transmission can't create torrent with empty "Announce URL" 2008-05-27 21:55:57 +00:00
Charles Kerr dce2c25fb1 possible fix for r5932/r5933 error reported by John_Clay. 2008-05-27 18:37:42 +00:00
Charles Kerr 70b395fb85 dead code removal. 2008-05-26 13:13:24 +00:00
Charles Kerr f5400da1bb (libT) shave a few bytes from tr_info and tr_torrent's memory footprints. 2008-05-26 12:52:38 +00:00
Charles Kerr 70fcc56beb (libT) (1) shave a few bytes from tr_peer and tr_ratecontrol's footprints. (2) remove some dead code. 2008-05-26 12:14:35 +00:00
Charles Kerr 0ab37e45d5 (rpc)
1. fix #968: 'transmission-remote -r' deletes all
2. fix error in escaping control characters when serializing tr_benc to JSON
3. fix small memory leak in rpc command parsing
2008-05-24 18:22:16 +00:00
Charles Kerr 7bfe7cc471 remove unused functions tr_torrentSetActiveCallback() and tr_torrentClearActiveCallback() 2008-05-23 20:33:54 +00:00
Charles Kerr 53d8574b11 * change tr_stat.activityDate's and tr_stat.startedDate's type to time_t, since that's how everyone uses them anyway
* add a little more documentation to tr_stat and tr_ctor in transmission.h
2008-05-23 20:04:41 +00:00
Charles Kerr ba8a03024c shave 16 bytes off sizeof(tr_peerIo) 2008-05-23 18:56:42 +00:00
Charles Kerr e44f2b7829 possible fix for the stats error reported in http://forum.transmissionbt.com/viewtopic.php?t=4843, but it's a strange bug. 2008-05-23 18:30:49 +00:00
Charles Kerr d18fb68fbc sine we now have two public ports (peer and rpc), rename "publicPort" as "peerPort" 2008-05-23 16:18:58 +00:00
Charles Kerr f9e8b56816 add `hashString' to torrent-stat's response 2008-05-23 13:18:17 +00:00
Charles Kerr 0621c67c41 more cleanup work:
(1) kill the pointless "tr_tracker_stat" struct.
(2) kill the unused "tr_torrentRemoveSaved()" function.
(3) kill the redundant "nextManualAnnounceTime" variable.
(4) make the TR_ERROR_IS_* macros private.
2008-05-22 23:11:21 +00:00
Charles Kerr 26b5a16630 (libt) more janitorial work on cleaning up tr_session*() and tr_torrent*() functions: session stats, torrent count, and manual update. 2008-05-22 20:44:41 +00:00
Charles Kerr 9fdb8afdf0 (rpc) remove TR_RPC_TORRENT_CLOSING. formalize "torrent-list"'s response in the rpc spec. 2008-05-22 19:24:11 +00:00
Charles Kerr dceabc5661 make tr_stat identical in transmission.h and rpc-spec.txt. 2008-05-22 16:59:51 +00:00
Charles Kerr 90e151cd4d (rpc) make our generated JSON more human-readable. 2008-05-22 16:41:16 +00:00
Charles Kerr 7b209acc1b more janitorial cleanup on the "tr_session*" namespace. Today's victim: tr_handle_status. 2008-05-22 12:31:47 +00:00
Charles Kerr 07ae5bf965 tr_base64_decode() now decodes both data with, and without, newlines. thanks to dm1024 for helping track this down. 2008-05-22 03:42:26 +00:00
Charles Kerr 4398943230 #934: remove invalid tracker addresses 2008-05-21 20:56:12 +00:00
Charles Kerr e406dcc2ab rename tr_torrentClose() as tr_torrentFree() and make it private. change client code to use tr_torrentRemove() instead. This fixes the confusion between the two methods that led to #954 2008-05-21 17:14:58 +00:00
Charles Kerr 8b31bd54cb (rpc) refresh our snapshot of Jean Gressmann's JSON parser 2008-05-21 14:19:49 +00:00
Charles Kerr c7b9c8c043 (#954) rpc: add "torrent-remove" method. rename tr_torrentDelete() as tr_torrentRemove() for consistency with various parts of the code. 2008-05-20 23:58:59 +00:00
Charles Kerr 7beacb3032 (1) RPC "add-torrent" now lets clients embed base64-encoded metainfo directly into the request
(2) remove the RISON code; it didn't make the final cut
(3) add base64 encode/decode utilities and unit tests
2008-05-20 17:33:54 +00:00
Charles Kerr 77233ab16f fix 20-byte memory leak every time we stopped a torrent. :/ 2008-05-20 17:24:29 +00:00
Charles Kerr d7f0e0fa1e * better RPC handling of requests submitted via http POST
* plug a pair of minor memory leaks reported by valgrind.
2008-05-19 18:16:58 +00:00
Charles Kerr 4c82187933 possible fix for the crash in http://forum.transmissionbt.com/viewtopic.php?t=4847 2008-05-19 14:06:44 +00:00
Charles Kerr 9a2cdef770 fix compile error reported by BentMyWookie 2008-05-19 00:22:04 +00:00
Charles Kerr dde9cb49f2 fix the cyclical header dependency, and fix a couple of warnings sniffed out by gcc 4.3 2008-05-19 00:12:31 +00:00
Charles Kerr 2c79888a93 RPC/IPC redesign 2008-05-18 16:44:30 +00:00
Charles Kerr f0b7932b90 minor logging tweak 2008-05-15 22:08:43 +00:00
Charles Kerr 078ea29f37 add tr_strdup_printf() 2008-05-15 15:44:51 +00:00
Charles Kerr bfd89b685d more work on rpc. bug fixes, regression tests, and spec tweaks. 2008-05-13 17:31:09 +00:00
Charles Kerr 6aaa2fd39e fix bug in the benc-to-json converter.
add rison-to-json converter so we can pass commands to transmission in a uri.
add unit tests for the new code.
2008-05-13 12:52:58 +00:00
Charles Kerr 17b9dc7462 make the request/response messages a little terser. add per-torrent speed limit toggles. rename ipc -> rpc. 2008-05-12 23:51:17 +00:00
Charles Kerr 911bce88c9 add benc-to-json conversion + unit tests. 2008-05-12 17:54:57 +00:00
Charles Kerr be9427931a ipc: add session accessor/mutators.
transmission.h: make the session API more consistent.
2008-05-12 16:33:17 +00:00
Charles Kerr 2186d852f1 json ipc: implement torrent-add, torrent-set-file, torrent-get-file 2008-05-12 13:05:06 +00:00
Charles Kerr 63b82714f8 partial implementation of json-ipc backend: torrent start/stop/close/verify/stat/info, as are getting & setting per-torrent peer limits, upload speeds, and download speeds. this is a work in progress. 2008-05-12 00:41:55 +00:00
Charles Kerr 6eb8c5132e remove benc2php, since we're going to be using json now. 2008-05-11 23:13:50 +00:00
Charles Kerr 44d3d2e080 plug a small memory leak in the last patch 2008-05-11 22:55:15 +00:00
Charles Kerr e607f26893 add json-to-benc parser 2008-05-11 22:42:53 +00:00
Charles Kerr 33839f77be new utility for iterating through torrents: tr_torrentNext() 2008-05-10 00:19:00 +00:00
Charles Kerr cc9d22c5df bang on ipcparse.c for a bit. 2008-05-09 20:59:34 +00:00
Charles Kerr 25b426f7a6 #929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status 2008-05-09 17:51:05 +00:00
Charles Kerr fb8dccf179 undo the curl timeout option from earlier today 2008-05-09 04:00:14 +00:00
Charles Kerr e19149bbb7 #751: tear down some of the scaffolding used in tracking down this bug. 2008-05-08 20:30:27 +00:00
Charles Kerr 20986a5dac raise the timeout interval that we tell curl to use 2008-05-08 17:15:06 +00:00
Charles Kerr f48b2b24e9 tell webcurl to timeout tracker requests after 30 seconds 2008-05-08 17:05:43 +00:00
Charles Kerr f5725af93a remove unused TIMEOUT_INTERVAL_SEC and STOP_TIMEOUT_INTERVAL_SEC 2008-05-08 16:15:12 +00:00
Charles Kerr 73d77f8418 add a couple of benc utility functions 2008-05-08 03:25:21 +00:00
Charles Kerr 7b25d0476c remove occurrences of "if( 1 )" 2008-05-06 20:31:05 +00:00
Charles Kerr 86c3ae4fa4 #917: Another minor speedup suggested by BentMyWookie. He enjoys giving new suggestions right *after* I hit "svn commit" :) 2008-05-06 19:49:25 +00:00
Charles Kerr d047c1175d #917: small speedup to r5759 suggested by BentMyWookie 2008-05-06 19:39:16 +00:00
Charles Kerr 0f9ca34848 #917: when seeding, drop peers that have everything you have (instead of just dropping seeds) 2008-05-06 19:06:46 +00:00
Charles Kerr 6ba02efb58 #915: Does too many wake-ups when idle 2008-05-06 15:52:57 +00:00
Charles Kerr ed4e902482 #912: Resume file parsed twice on startup 2008-05-06 01:43:24 +00:00
Charles Kerr 2cd2b35238 fix multitracker problem reported by BentMyWookie 2008-05-05 20:11:03 +00:00
Charles Kerr d561187227 when one of the trackers in a multitracker list is successful, bump it to the top of the tier. 2008-05-05 19:51:53 +00:00
Charles Kerr c5eed39275 add #include <limits.h> to pick up INT_MAX 2008-05-05 19:33:29 +00:00
Charles Kerr 643716c6f0 randomize the announce addresses within multitracker tiers 2008-05-05 18:54:19 +00:00
Mitchell Livingston 85e66062eb remove unused variables 2008-05-05 04:17:52 +00:00
Charles Kerr ecc825a242 #909: not utf8izing the torrent name properly 2008-05-02 01:21:26 +00:00
Charles Kerr c20b9a6df4 experimental speed tweaks:
(1) increase the per-peer read buffer to the size of a block message
(2) pulse the peers more often
(3) reduce the tracker delay on startup
2008-05-01 19:31:58 +00:00
Charles Kerr 362f5b46f4 tweak the clients tests 2008-05-01 19:30:49 +00:00
Mitchell Livingston c62f45a67b the display of our own client's peer-id has to be 100% accurate 2008-05-01 15:56:10 +00:00
Mitchell Livingston b2809267dc for peer id's with 2 major digits, if the tens place is 0, don't show it 2008-04-29 20:44:36 +00:00
Mitchell Livingston 978e53a465 minor adjustments to the client code, and keeping the code pg 2008-04-29 20:34:15 +00:00
Charles Kerr d659df1093 add a couple of debug messages to trac down why Lacrocivious' stats aren't being saved 2008-04-29 18:22:26 +00:00
Charles Kerr c16b901c93 add a few more peers, raided from KTorrent's list 2008-04-29 18:15:49 +00:00
Charles Kerr e18414ad0b tweak the last commit: when parsing peer-ids we don't want locales to postentially change the behavior of isalpha/isdigit/etc 2008-04-29 17:23:33 +00:00
Charles Kerr a362df0a14 #905: update peer_id client lists. add a dozen or so new clients from Azureus (thanks amc1!) 2008-04-29 16:57:16 +00:00
Charles Kerr b05c7820c2 possible fix for #904: "crash on startup in tr_bitfieldHas" 2008-04-29 02:51:02 +00:00
Charles Kerr ecc8401203 #903: "1.11: Not making use of Tier 2 tracker on Tier 1 error" 2008-04-29 01:21:42 +00:00
Charles Kerr ed798be5ac don't use strlcat. 2008-04-28 18:09:17 +00:00
Charles Kerr 1dfc98fc77 fix another crash-on-shutdown in the new web code 2008-04-28 13:29:38 +00:00
Charles Kerr b9c27b23d5 #884: fix after creating a torrent whose last file has 0 bytes 2008-04-27 19:08:10 +00:00
Charles Kerr 3f71ea1f51 fix one of the crash-on-shutdown bugs reported by Gimp_ 2008-04-27 18:27:32 +00:00
Charles Kerr b8fc148fe0 experiment to lower CPU for Gimp_ 2008-04-27 17:22:37 +00:00
Charles Kerr b66af4ab07 curl_easy_getopt(CURLINFO_RESPONSE_CODE) needs a pointer to a long, not an int. 2008-04-27 07:15:20 +00:00
Charles Kerr 3b27e2d2af possibly fix the issue discusssed in http://forum.transmissionbt.com/viewtopic.php?p=22725 2008-04-27 06:44:39 +00:00
Charles Kerr 2f3eba4b01 #899: Hangs when clicking verify data twice 2008-04-27 06:34:34 +00:00
Charles Kerr 42cbbaa57a fix an assertion error: completion.c:113: failed assertion `ccp->sizeWhenDoneLazy >= ccp->sizeNow' 2008-04-26 14:52:05 +00:00
Charles Kerr c4fc897b38 steal some curl configuration options from rtorrent :) 2008-04-25 23:54:02 +00:00
Charles Kerr 73f083cc51 #896: Minor bug: debugging output always goes to stderr 2008-04-25 19:48:53 +00:00
Charles Kerr 03572a0ad5 add tr_webClose() 2008-04-25 19:46:36 +00:00
Charles Kerr 0545e70f5b (gtk) use libT's curl wrapper for port testing & getting the blocklist 2008-04-25 18:35:48 +00:00
Charles Kerr c46269805d #895: tweak 2008-04-25 16:40:14 +00:00
Charles Kerr cffd7f92e2 more hacking on the curl code, based on libcurl's "hiperfifo.c" sample code 2008-04-25 16:07:06 +00:00
Charles Kerr 37d4da23b7 #895: don't scrape running torrents on startup 2008-04-25 16:06:03 +00:00
Charles Kerr 48bec954be remove a debugging printf 2008-04-25 04:37:00 +00:00
Charles Kerr 9f8b596914 Fix "Unknown Error (0)" messages for torrents that haven't been scraped yet. 2008-04-25 04:35:06 +00:00
Charles Kerr dbf3e95cd9 make the tracker response lines more human-readable 2008-04-25 04:26:04 +00:00
Charles Kerr 47021f1a12 fold most of the "deep logging" functions into a single function 2008-04-25 02:57:33 +00:00
Charles Kerr 169e717474 fix failed buildin 2008-04-24 19:49:13 +00:00
Charles Kerr 335ff66baa reported by John_Clay: allow the connection to continue even if the certificate can't be authenticated. 2008-04-24 19:48:27 +00:00
Charles Kerr aa731deaa6 maybe make hudson happy 2008-04-24 19:42:29 +00:00
Charles Kerr 73b1f106a3 maybe work on libcurl < 7.16.3 2008-04-24 19:38:59 +00:00
Charles Kerr 52ea125c45 #894: wont start - cp->doneHave <= cp->completeHave 2008-04-24 15:25:01 +00:00
Charles Kerr a97d175a34 code tweaks 2008-04-24 03:26:36 +00:00
Charles Kerr 7ef2511ca8 #377: preliminary https support. this commit probably breaks mac and cli and is not for the faint of heart. 2008-04-24 01:42:53 +00:00
Mitchell Livingston 3a609ecc87 eliminate warning about unused variable 2008-04-23 13:26:30 +00:00