Commit Graph

552 Commits

Author SHA1 Message Date
Matt Joiner 17a8b8aa17 Make use of IP blocklist and change the client lock to RWMutex
The blocklist is loaded through from the file at TORRENT_BLOCKLIST_FILE or
$HOME/.config/torrent/blocklist.
2014-11-28 19:41:53 -06:00
Matt Joiner 0e3f7a5520 Change all references to github.com/nsf/libtorgo to github.com/anacrolix/libtorgo 2014-11-28 12:13:57 -06:00
Matt Joiner 50e3db173f Allow DHT server config to be passed through when creating a new client 2014-11-28 12:13:08 -06:00
Matt Joiner 1c78c81075 Add a passive flag for DHT, that disables responding to queries 2014-11-28 12:04:38 -06:00
Matt Joiner 88d570291c Implement iplist package, for block lists 2014-11-28 12:04:15 -06:00
Matt Joiner c10fbb2022 Extra time between tracker announces 2014-11-28 08:39:13 -06:00
Matt Joiner 1527321c71 Wasn't actually copying the tiers
http://stackoverflow.com/questions/27055626/concisely-deep-copy-a-slice
2014-11-21 00:54:19 -06:00
Matt Joiner 97074dc060 Improve tracker connect error log message 2014-11-21 00:32:39 -06:00
Matt Joiner 4725a70875 Shuffle tracker tiers after adding trackers 2014-11-21 00:32:27 -06:00
Matt Joiner e5588b620f TODO 2014-11-21 00:11:13 -06:00
Matt Joiner 1a401e82f5 Merge trackers by magnet links if the torrent is already present 2014-11-21 00:10:52 -06:00
Matt Joiner 06aff91f8c Don't open new connections or announce when new connections aren't wanted 2014-11-21 00:09:55 -06:00
Matt Joiner 9c37205dde Include trackers in WriteStatus 2014-11-21 00:07:42 -06:00
Matt Joiner 1942d5b73b Fix default torrent client address, and leaked resources 2014-11-21 00:07:04 -06:00
Matt Joiner 64cb5bb50c Add PendingData call to download strategy interface 2014-11-21 00:05:09 -06:00
Matt Joiner 26a5fffcca Fix accidental pass by value 2014-11-21 00:04:45 -06:00
Matt Joiner 0f54c2f79e Use a buffer to reduce syscall.Write calls 2014-11-21 00:04:07 -06:00
Matt Joiner 285ecb8418 tracker: Add an explicit URL() method
Needed for merging tracker lists.
2014-11-20 23:39:56 -06:00
Matt Joiner c4bae8f4c2 Ignore failures due to FUSE not available 2014-11-20 16:28:14 -06:00
Matt Joiner ae28507f30 tracker/udp: Triage errors in tests to real hosts 2014-11-20 16:24:49 -06:00
Matt Joiner e4a0493bd0 No longer require FUSE to run fs test 2014-11-20 12:50:53 -06:00
Matt Joiner c57ea76b88 Support disabling UTP 2014-11-19 20:02:20 -06:00
Matt Joiner 2a8a86734b dht: Reduce allocations in calculating ID distance 2014-11-19 20:02:03 -06:00
Matt Joiner a893e685b0 Don't allocate pieces map unless necessary when filling responsive requests 2014-11-19 20:01:32 -06:00
Matt Joiner 8518b54cde torrentfs tests: Use dynamic port 2014-11-19 20:01:03 -06:00
Matt Joiner d70f6bcd20 loghttp: The status server should run on the default mux 2014-11-19 20:00:43 -06:00
Matt Joiner dd240b66c4 Simple connection pruner 2014-11-18 22:03:21 -06:00
Matt Joiner eacc624115 Expose a Torrent "handle", that implements ReaderAt 2014-11-18 21:58:36 -06:00
Matt Joiner c8327a8fe2 Log bad metadata packets instead of crashing 2014-11-18 21:57:27 -06:00
Matt Joiner 3dd43c6099 buffer WriteStatus and always write torrents in the same order 2014-11-18 21:56:50 -06:00
Matt Joiner a87566b9f6 dht: Handle truncated KRPC packets better, requires an update to bencode package 2014-11-18 21:54:53 -06:00
Matt Joiner e1f720c770 Triage a possible bug blocking while closing UTPConns 2014-11-18 21:53:57 -06:00
Matt Joiner 358f089515 Set a minimum dial timeout 2014-11-18 21:53:00 -06:00
Matt Joiner 23c205b935 TODO 2014-11-18 21:51:49 -06:00
Matt Joiner 7be828bb4c util/loghttp: Don't implicitly expose pprof 2014-11-18 21:51:36 -06:00
Matt Joiner a323e55f12 Improve unknown xt parameter encoding error message 2014-11-18 14:36:56 -06:00
Matt Joiner 06e240e198 Expose a wrapped metainfo type with helper methods 2014-11-18 14:36:27 -06:00
Matt Joiner 00e2d42870 util: LoggedHTTPServe uses its own mux for use as a HTTP status server 2014-11-18 14:35:32 -06:00
Matt Joiner 1057ac8055 Adding a duplicate magnet returns the existing torrent 2014-11-18 14:34:13 -06:00
Matt Joiner 482dde8e3f Fix race condition calculating reduced dial timeout 2014-11-18 14:33:07 -06:00
Matt Joiner c63d36c1b6 Improve client status write-out 2014-11-18 14:32:51 -06:00
Matt Joiner abfa44d6e4 Count accepted connections 2014-11-18 14:31:47 -06:00
Matt Joiner a8c49a2a83 dht: Improve Server.GetPeers so new nodes are fed directly back into the current discovery 2014-11-18 12:38:13 -06:00
Matt Joiner cd5c1f8298 cmd/dht-ping: Various improvements more like a real ping program 2014-11-18 12:36:36 -06:00
Matt Joiner f8da0c5b07 cmd/dht-get-peers: Add -once flag to do a single scrape 2014-11-18 09:56:37 -06:00
Matt Joiner a6914e5897 cmd/dht-get-peers: Expose debug HTTP 2014-11-18 09:56:05 -06:00
Matt Joiner 541f11aed4 Ensure the parallel dial invariant 2014-11-17 18:04:33 -06:00
Matt Joiner 8cae78cbf1 Reduce dial timeouts when there are lots of peers in the backlog 2014-11-17 18:04:09 -06:00
Matt Joiner d7764a5c23 dht: Reduce announce peer parallelism now that node goodness is fixed 2014-11-17 18:03:28 -06:00
Matt Joiner a14f38a21c dht: Move packet processing into a separate function 2014-11-17 18:03:03 -06:00