Commit Graph

133 Commits

Author SHA1 Message Date
Charles Kerr 931558aea3 (trunk libT) fix DNS timing issue reported by gn0s1s in irc 2010-01-28 18:25:18 +00:00
Charles Kerr dd41b5c257 (trunk libT) #2819 "announce URLs containing raw IP addresses won't announce/scrape in 1.82" -- possible fix 2010-01-28 17:24:23 +00:00
Charles Kerr a334b422c3 (trunk) remove unnecessary #includes 2010-01-28 13:33:40 +00:00
Charles Kerr a888c4d425 (trunk libT) web.c: add a cache for unresolvable hostnames 2010-01-27 06:40:12 +00:00
Charles Kerr 3ace0afaae (trunk libT) #2792 "since 1.80 update downloads failing" -- try to handle non-resolving tracker addresses without blocking in curl 2010-01-26 07:22:50 +00:00
Charles Kerr c2adab97b2 (trunk libT) fix typo from prev commit 2010-01-25 04:26:08 +00:00
Charles Kerr 4164b17977 (trunk libT) extend the lifespan of the cached DNS entries 2010-01-25 04:24:48 +00:00
Charles Kerr 1d1b09b75b (trunk libT) #2804 "segmentation fault add-by-url when url scheme is ftp" -- fixed in trunk for 1.83 2010-01-25 04:00:08 +00:00
Charles Kerr ae966e0725 (trunk libT) increase the announce timeout from 30 seconds to 45 seconds. 2010-01-24 23:32:49 +00:00
Charles Kerr 7e5e4db797 (trunk libT) #2783 "blocklist is empty" -- fix this 1.82 regression. apparently update.transmissionbt.com doesn't like it when you make the ":80" in the Host: header explicit instead of implicit... so probably other web servers have the same problem too. 2010-01-24 19:22:22 +00:00
Charles Kerr d97a04b001 (trunk libT) when adding the Host: header by hand, make include the host's port 2010-01-23 07:51:51 +00:00
Charles Kerr 2be24ec9a8 (trunk libT) #2783 "starting with r9992, IP blocklist is empty" -- when replacing a URL's hostname with an IP address before passing the URL to curl, manually set the Host: header to the original hostname. (Xref: #2781) 2010-01-22 07:27:19 +00:00
Charles Kerr 0f6214d9ae (trunk libT) if we're calling evdns_init(), we probably ought to call evdns_shutdown() on exit... 2010-01-22 03:39:21 +00:00
Charles Kerr 1f44272678 (trunk libT) #2781 "1.80 freezes on startup" -- possible fix. implement nonblocking dns before we hand the URLs over to libcurl 2010-01-22 02:40:11 +00:00
Charles Kerr e2feb075b9 (trunk libT) reinstate proxies in the http announce 2010-01-10 20:15:56 +00:00
Charles Kerr 2ac553361a (trunk libT) #2416 "crash in event_queue_insert" -- I think this is happening if we queue up two changes, one to listen for read/write, and then a second one to delete the polling, in kqueue's event mechanism, at libcurl's request. Let's try disabling kqueue in libevent and use poll/select instead. 2010-01-10 19:52:01 +00:00
Mitchell Livingston 14da64ec06 assorted small cleanup and log removal 2010-01-10 16:26:30 +00:00
Mitchell Livingston 5af45426d4 random code optimization: when escaping http, use an if with a lot less comparisons rather than a switch 2010-01-10 14:56:04 +00:00
Mitchell Livingston 8f6e1dedf5 revert r9505, which appears to cause a crash on launch 2010-01-10 14:36:53 +00:00
Charles Kerr 5a60e4549d (trunk libT) #2416 "crash in event_queue_insert" -- another guess, based on the idea that we might queue two actions (one to insert, one to delete) on the same event before libevent's dispatcher is invoked 2010-01-10 08:53:17 +00:00
Charles Kerr 69cb1362e3 (trunk libT) #2416 "crash in event_queue_insert" -- see if we can get the program to crash in a different way. 2010-01-09 07:27:45 +00:00
Charles Kerr 0bb355d8df (trunk libT) #2416 "crash in event_queue_insert" -- continue throwing the kitchen sink at this ticket. (1) disable proxies to see if that makes any difference (2) rearrange the sequencing in sock_cb() to unconditionally delete the active event before doing anything else (3) use a libevent timer instead of CURLOPT_TIMEOUT to workaround curl bug http://tinyurl.com/ycm5d3e 2010-01-08 21:45:56 +00:00
Charles Kerr 5c26afdb52 happy new year! 2010-01-04 21:00:47 +00:00
Charles Kerr 339173d1b4 (trunk libT) make sure to restart curl's periodic timer 2010-01-04 20:06:39 +00:00
Charles Kerr 8ae3911477 (trunk libT) #2416 "crash in event_queue_insert" -- I am really quite sick of this bug. It's not reproducible at all under Linux and appears to be a bug in libevent's kqueue implementation. In this commit, we leak the event object on OS X. 2009-12-29 00:00:33 +00:00
Charles Kerr 6151881a03 (trunk libT) #2416 "crash in event_queue_insert" -- instead of freeing libevent's event objects, pool and reuse them. *sigh* 2009-12-28 23:29:59 +00:00
Charles Kerr ee58472ec2 (trunk libT) fix minor bug in r9651 "Reduce SO_SNDBUF and SO_RCVBUF for tracker announce/scrape messages" -- libcurl's CURLOPT_SOCKOPTFUNCTION doesn't return void; it returns an int that is nonzero if an error occurs. 2009-12-28 23:25:50 +00:00
Charles Kerr ac202f13bb (trunk libT) remove dead code -- tr_assert() 2009-12-28 23:11:26 +00:00
Charles Kerr bc86c0b364 (trunk libT) #2416 "crash in event_queue_insert" -- maybe this will finally fix it... 2009-12-26 23:57:25 +00:00
Charles Kerr 8903e1b4e3 (trunk libT) #2416 "crash in event_queue_insert" -- another experimental commit. /as an experiment/ let's just leak that event struct and see if that makes the crash go away. Obviously leaking those objects is not a long term fix but this will help point the way towards the real fix. 2009-12-24 18:50:34 +00:00
Charles Kerr b8d7e76750 (trunk libT) #2416 "crash in event_queue_insert" -- possible fix. it looks like the kqueue client is accessing the event after the callback and after event_del() is being called. *If* that's the case I don't know if it's a libevent bug or if libtransmission is making assumptions it shouldn't've... but it's easy enough to keep the memory in a pool and free it later when it's safer to do so. 2009-12-23 16:12:18 +00:00
Charles Kerr ef650d0398 (trunk libT) it certainly smells like we're using freed memory in the libcurl + libevent code in web.c... let's trash the structures right before free()ing them 2009-12-18 17:32:16 +00:00
Charles Kerr 0601442f58 (trunk libT) #2416 "crash in event_queue_insert" -- another stab at fixing this. yay 2009-12-14 18:24:26 +00:00
Charles Kerr 87aefaf5ff (trunk libT) #1699 "announce to multiple trackers at once" -- fix minor bug in reporting scrape results when an announce returns enough information that a separate scrape isn't necessary. 2009-12-14 17:17:05 +00:00
Charles Kerr ee0de4b06c (trunk libT) keep simplifying web.c... is there anything left to strip out? 2009-12-14 14:25:22 +00:00
Charles Kerr c33aef7e2d (trunk libT) more web.c simplification + handle an unhandled case CURL_POLL_NONE in the socket callback. 2009-12-14 12:54:30 +00:00
Charles Kerr 2653cd5153 (trunk libT) keep simplifying web.c. also, fix an improbable FMR at shutdown 2009-12-14 05:11:33 +00:00
Charles Kerr 6d9e6ececc (trunk libT) remove some more obsolete debug messages and other cruft from web.c 2009-12-13 19:33:02 +00:00
Charles Kerr 485b64a5e3 (trunk libT) it never ends 2009-12-13 17:54:01 +00:00
Charles Kerr a89d2217af (trunk libT) #2416 "crash in event_queue_insert()" 2009-12-11 15:41:34 +00:00
Charles Kerr 5f1f2b1e85 (trunk libT) use curl_multi_socket_action(), even on OS X. 2009-12-10 19:05:21 +00:00
Charles Kerr 1c772bd1fe (trunk libT) finally get rid of the last remnants of tr_timer 2009-12-10 05:52:46 +00:00
Charles Kerr 78ead8c3dd (trunk) update the copyright notices 2009-12-05 02:19:24 +00:00
Charles Kerr 6eec59008c (trunk libT) experimental: Reduce SO_SNDBUF and SO_RCVBUF for tracker announce/scrape messages. Reduce SO_RCVBUF for outgoing peer connections on seeding torrents. 2009-12-02 05:30:46 +00:00
Charles Kerr 63027e1d5a (trunk libT) resolve "noslashes" vs "keep_slashes" variable name inconsistency between the declaration and the definition of tr_http_escape() 2009-11-29 08:05:47 +00:00
Charles Kerr 9383a6abfd (trunk libT) #2096: add code magnet URL parser and unit tests 2009-11-20 04:38:19 +00:00
Charles Kerr 44df1d5548 (trunk libT) #2112: provide "ipv6=" parameter to trackers 2009-11-10 17:03:23 +00:00
Charles Kerr 55c59fa478 (trunk) fix r9380 #2412 timing issue 2009-10-23 05:48:56 +00:00
Charles Kerr 9affe9ef59 (trunk libT) #2412: tracker query should use bind address 2009-10-22 05:15:34 +00:00
Charles Kerr 459bea37f9 (trunk libT) remove a couple more debugging printf() calls 2009-09-26 13:21:46 +00:00