Commit Graph

1616 Commits

Author SHA1 Message Date
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