Commit Graph

178 Commits

Author SHA1 Message Date
Jordan Lee 1f2bccd17b (libT) recycle the peer id used for public torrents after N hours of use 2013-02-02 13:42:50 +00:00
Jordan Lee 1b5cc093e6 (libT) when announcing a magnet link for the first time, send 'left=0' 2013-01-30 19:59:55 +00:00
Jordan Lee f75027d5e9 make all the log functions/structs/enums use a single 'tr_log' namespace, such as tr_logGetQueue, tr_logAddInfo, tr_logIsLevelActive 2013-01-25 23:34:20 +00:00
Jordan Lee 399c3233b7 remove a couple of unnecessary torrentIsLocked() assertions for #5168 2012-12-12 20:57:13 +00:00
Jordan Lee a2d2a10226 (trunk, libT) #5165: fix r13625 oops 2012-12-07 01:53:31 +00:00
Jordan Lee 3d38723ad9 Follow more common whitespace style conventions in the C code (libtransmission, daemon, utils, cli, gtk). 2012-12-05 17:29:46 +00:00
Jordan Lee f226d8a03f (trunk libT) #4914 if a tracker has no scrape URL but the announce response contains any scrape fields, that's as close to a scrape as we're going to get, so use those fields. 2012-05-22 20:21:00 +00:00
Jordan Lee e9e76fa970 (trunk libT) #4888: when scraping magnet links, don't send a left=0 argument to the tracker. 2012-05-20 14:14:59 +00:00
Jordan Lee 6948852013 (trunk libT) #4894 -- don't use evbuffer_add_printf() and evbuffer_pullup() together. 2012-05-17 17:40:31 +00:00
Mitchell Livingston 3eb8b12fa8 #4704 req->left = tr_cpLeftUntilComplete( &tor->completion ) should end with a semicolon 2012-01-11 22:31:02 +00:00
Jordan Lee ed56cd1193 (trunk libT) #4526 "do not skip scrape unless all three scrape fields came with announce" -- add field initializers. 2011-10-14 00:27:14 +00:00
Jordan Lee c9421c4041 (trunk libT) #4530 "lastAnnounceResult is not properly set" -- fixed. 2011-10-09 00:21:36 +00:00
Jordan Lee bc4e3f137c (trunk libT) #4526 "do not skip scrape unless all three scrape fields came with announce" -- fixed. 2011-10-09 00:18:18 +00:00
Jordan Lee 177f2398a5 (trunk libT) #4396 "Scrape requests not showing in logfile" -- when the announce response contains scrape information, add a log message saying that the next scrape has been rescheduled. 2011-08-14 14:45:54 +00:00
Jordan Lee 60f9191fdc (trunk libT) modify announcer's scrape triggers as per discussion with Elbandi 2011-07-31 00:58:05 +00:00
Jordan Lee 3928a9d8e9 (trunk libT) #3219 "Don't scrape paused torrents" -- allow this as a 'hidden' option in settings.json, but don't add it to the GUI or to RPC. 2011-07-23 17:14:12 +00:00
Jordan Lee b4ffdaac42 (trunk libT) #4277 "Checkmarks for leechers" -- possible fix.
It appears 2.30 and 2.31 might be making too many assumptions about which peers are seeds.
2011-06-25 19:29:25 +00:00
Jordan Lee 34642e7259 (trukn libT) lessen the importance of error messages returned by trackers in a multi-tracker torrent. It's all too often that people will load up a .torrent file with dozens of announce URLs, many of them dead... 2011-06-25 18:47:35 +00:00
Jordan Lee bcf89fa9c3 (trunk libT) modify how the "stops" sorted container is used s.t. the container's uniqueness requirements are met. 2011-06-19 18:26:04 +00:00
Jordan Lee 50ceaafeb8 (trunk libT) very minor copyediting: remove a little unwanted whitespace 2011-04-30 00:08:24 +00:00
Jordan Lee 5681ea73e2 (trunk libT) heap pruning: avoid unnecessary malloc+memcpy+frees in announcer.
1. when creating announce URLs in announcer-http.c
2. when creating scrape URLs in announcer-http.c
3. when deep-logging what announces are in a torrent's queue in announcer.c
2011-04-27 20:41:47 +00:00
Jordan Lee 2043356876 (trunk libT) constify the tr_scrape_request argument to scrape_request_delegate(). 2011-04-27 17:30:53 +00:00
Jordan Lee 96c180fd73 (trunk libT) fix 2.30b1 memory corruption bug when editing trackers.
The problem was that the new number of trackers was not being kept and the old count was retained. So if the count changed, tr_torrentTrackers() could return dangling pointers to the caller.
2011-04-11 19:44:16 +00:00
Mitchell Livingston 2b79fd7186 #4175 fix typo 2011-04-10 16:26:55 +00:00
Jordan Lee e825bd66c7 (trunk libT) #4175 "very bizarre and unwieldly logfile in 2.30b2" -- fixed. 2011-04-10 14:15:52 +00:00
Jordan Lee e2b7728637 6789ABCDE 2011-04-10 05:27:14 +00:00
Jordan Lee 9b96ced90a (trunk libT) #4175 "very bizarre and unwieldy logfile in 2.30b2" -- another test commit for gunzip :) 2011-04-10 03:57:37 +00:00
Jordan Lee 42fbf1f646 (trunk libT) #4175 "bizarre and unwieldly logfile in 2.30b2" -- possible fix for gunzip to test 2011-04-10 00:05:18 +00:00
Jordan Lee 35eb016209 (trunk libT) use get_next_scrape_time() inside the scrape error handler.
get_next_scrape_time() was introduced in r12297. The rationale is that by rounding all scrape times to their nearest 10th second, they will tend to occur in batches and improve multiscrape.
2011-04-07 20:00:26 +00:00
Jordan Lee 4a5415e84c (trunk libT) #3931 "'Announce is Queued' but torrent doesn't announce itself to trackers" -- add more debugging information for the next announce interval when an announce error is encountered, as requested by Sardok in comment:70 of #3931 2011-04-07 19:54:30 +00:00
Jordan Lee 7cef8dc8a8 (trunk libT) trivial commit fixing typo in the comments from r12297 2011-04-07 06:54:03 +00:00
Mitchell Livingston 3e451b2bf9 small cleanup when determining if two announce URLs differ only by scheme 2011-04-03 03:25:13 +00:00
Jordan Lee 5bee93361b (trunk libT) fix UMR bug reported by wereHamster 2011-04-02 23:33:51 +00:00
Jordan Lee 11c4194da8 (trunk libT) better multiscrape 2011-04-02 07:44:19 +00:00
Jordan Lee 873396de2d (trunk libT) announcer.c: fold the tiers and trackers into fewer mallocs/frees 2011-03-31 20:26:43 +00:00
Jordan Lee c8bec40e3f (trunk libT) fix potential null pointer dereference in announcer.c 2011-03-31 03:37:50 +00:00
Jordan Lee 9f122a021a (trunk libT) better scrape management on private trackers.
If a private tracker scrape says that there are no downloaders in the swarm, mark all the peers in the private swarm as seeds. This can greatly reduce unnecessary overhead on large seedboxes. We don't do this same trick on public torrents, since a public tracker won't know of all the peers.
2011-03-29 15:18:25 +00:00
Jordan Lee 1101ba8d57 (trunk libT) strip trailing whitespace 2011-03-28 13:37:46 +00:00
Jordan Lee b54ebeafd7 (trunk libT) remove the tr_session argument from the announce/scrape response callbacks 2011-03-26 12:06:04 +00:00
Jordan Lee 324f0f470c (trunk libT) copyediting: '#include "crypto.h"' cleanup 2011-03-25 01:21:31 +00:00
Jordan Lee 375694eda9 (trunk) copyediting: remove some unneeded #includes, and annotate some needed ones 2011-03-24 21:49:42 +00:00
Jordan Lee b4d36aeb54 (trunk) #4138 "use stdbool.h instead of tr_bool" -- done. 2011-03-22 15:19:54 +00:00
Jordan Lee 40defc8fb2 (trunk libT) #117 "UDP tracker protocol support" -- fix trivial r12141 log message typo: s/Unsupported ur/Unsupported url/ 2011-03-20 15:33:45 +00:00
Jordan Lee f4b4ddd231 (trunk libT) better shutdown management of libutp and UDP trackers in tr_sessionClose().
This is a little overlapping since the utp code can be closed more-or-less immediately, but the udp manager needs to stay open in order to process the udp tracker connection requests before sending out event=stopped. Moreover DNS resolver can be shut down after the UDP tracker is shutdown.
2011-03-17 18:51:31 +00:00
Jordan Lee 501f2e106f (trunk libT) move tr_lpdAnnounceMore() out of the announcer module
We can stop local peer discovery immediately during shutdown, but need to leave the announcer running for the event=stopped messages. So it doesn't make sense to keep them on the same periodic timer.
2011-03-17 12:45:29 +00:00
Jordan Lee 6835374661 (trunk libT) move tr_dhtUpkeep() out of the announcer module
During shutdown, we can stop DHT almost immediately, but need to leave the announcer running for the DHT tracker event=stopped messages. So it doesn't make sense to keep them on the same periodic timer.
2011-03-17 12:34:43 +00:00
Jordan Lee 374ed10f3b (trunk) it's bad form to #include so many system headers in libtransmission/utils.h... 2011-03-16 18:04:23 +00:00
Jordan Lee 591b95286f Show whether a tracker is http or udp. Without that context, it could be confusing to see the same tracker twice in a tier 2011-03-15 17:03:09 +00:00
Jordan Lee 15e2e7d491 (trunk libT) annnouncer.c: as discussed with Waldorf, massage the tracker lists a bit:
1. remove duplicate URLs caused by implicit vs. explicit port numbers
2. if two announce URLs are duplicates /except/ for their scheme, put them in the same tier.
3. try announce URLs with a "udp" scheme before trying ones with an "http" scheme.
2011-03-15 03:21:25 +00:00
Jordan Lee 297c24a8a0 (trunk libT) more announce.c work: better handling of incrementing the retry interval on scrape failures 2011-03-14 16:52:47 +00:00