2
0
mirror of synced 2025-02-24 22:58:28 +00:00

82 Commits

Author SHA1 Message Date
Matt Joiner
c41aa941f3 dht: Export some useful variables 2015-06-29 19:36:08 +10:00
Matt Joiner
4a8ba4faaf dht: Suppress error during bootstrapping because Server already closed 2015-06-29 19:34:42 +10:00
Matt Joiner
4f293ca75b Several trivial fixes 2015-06-28 16:39:04 +10:00
Matt Joiner
a6b5ac60ad Fix rare crash due to bad DHT node IDs 2015-06-08 18:16:29 +10:00
Matt Joiner
71f5a1882a Fix a few data races 2015-06-03 00:00:25 +10:00
Matt Joiner
5de6abd6a7 Fix race to set IPBlocklist on DHT before it bootstraps and serves 2015-06-02 23:58:49 +10:00
Matt Joiner
83685f2a4b dht: Improve behaviour when adding new root nodes 2015-05-20 22:26:33 +10:00
Matt Joiner
f42e27319f dht: Use maxNodes hint in node table size 2015-05-20 22:24:39 +10:00
Matt Joiner
b706150607 dht: Implement the DHT security extension 2015-05-20 22:23:50 +10:00
Matt Joiner
c5208569ca Apply sortimports 2015-04-30 00:31:34 +10:00
Matt Joiner
526d9d738e Rewrite imports to local bencode and metainfo 2015-04-27 14:55:01 +10:00
Milos Gajdos
bdaeaf80c9 Added BootstrapNodes to dht.ServerConfig
This is beneficial to users who are running their own private trackers
or have outbound connections to ports 6881 disallowed on firewalls.
2015-04-02 23:35:30 +01:00
Matt Joiner
502bb455e8 dht: Remove obsolete function Server.AnnouncePeer 2015-04-01 17:38:17 +11:00
Matt Joiner
4cb3e94a91 dht: Apply blocklist to incoming packets 2015-04-01 17:37:32 +11:00
Matt Joiner
6b81d57ca2 dht: Clean-up interface, add loads of documentation 2015-04-01 17:29:55 +11:00
Matt Joiner
3aa78763aa Use rogpeppe's sortimports to fix this goimports ordering madness 2015-03-26 17:18:08 +11:00
Matt Joiner
ec25ef417e bitbucket.org/anacrolix/sync moved to github 2015-03-20 16:46:39 +11:00
Matt Joiner
842a32ae0c Rewrite import paths for migration from Bitbucket 2015-03-20 16:37:44 +11:00
Matt Joiner
a372b68abb dht: Handle responses through a callback
Trying to reduce number of goroutines
2015-02-21 15:00:48 +11:00
Matt Joiner
4ca6b4e2c7 Fix some stuff Rob Clifford broke through stress testing 2015-02-06 14:54:59 +11:00
Matt Joiner
9d640cd42d Use CopyExact 2015-01-29 14:21:42 +11:00
Matt Joiner
b3380f1cee dht: Provide Announce, that combines get_peers and announce_peer 2015-01-29 14:20:21 +11:00
Matt Joiner
04e5880d09 Comments 2015-01-29 14:17:27 +11:00
Matt Joiner
67b7c5adc8 dht: Reduce memory use 2015-01-22 00:41:06 +11:00
Matt Joiner
c303ce09d8 Fix a few tests 2015-01-11 21:42:57 +11:00
Matt Joiner
d54c5ddf24 Remove a bunch of dead code 2014-12-28 12:51:09 +11:00
Matt Joiner
e0d936e920 dht: Various improvements and removal of cruft 2014-12-26 17:21:48 +11:00
Matt Joiner
dbf72c1033 dht: Some peer sent me a bad info_hash 2014-12-20 10:10:53 +11:00
Matt Joiner
20d4549430 dht: Use both bootstrap addrs, as they seem to take turns going down 2014-12-20 10:09:11 +11:00
Matt Joiner
b52f866e90 dht: We can now message nodes with no ID if there's nothing better 2014-12-09 00:25:49 -06:00
Matt Joiner
fa501ed06a dht: Limit the size of peer discovery backlog 2014-12-08 21:57:53 -06:00
Matt Joiner
e926a8d65c dht: During get_peers, put discovered nodes in a backlog for later querying 2014-12-08 20:00:42 -06:00
Matt Joiner
78eb25535d dht: Cap nodes to 10k, drop nodes that timeout if we're out of space 2014-12-08 19:09:11 -06:00
Matt Joiner
ac57158982 dht: Store transactions by key, and fix partial deadlock 2014-12-08 16:59:25 -06:00
Matt Joiner
35ba3c44e1 dht: Retry queries twice before timing out 2014-12-06 21:21:20 -06:00
Matt Joiner
51306ccbb2 Expose various DHT state 2014-12-06 21:19:02 -06:00
Matt Joiner
948de5629b dht: Seemed to be wasting a lot of memory here 2014-12-03 01:08:18 -06:00
Matt Joiner
ea88bad291 dht: Don't log messages that have been truncated 2014-12-02 18:43:28 -06:00
Matt Joiner
d2f8114154 dht: Receiving UDP source port 0 isn't an error apparently 2014-12-02 14:55:41 -06:00
Matt Joiner
2668a2f1cc dht: Don't log messages that fail to decode on the first byte 2014-12-01 19:12:26 -06:00
Matt Joiner
fec0ac6ea5 dht: Improve bad KRPC message screening 2014-12-01 17:01:55 -06:00
Matt Joiner
b1da5d0656 Log the type for a rare DHT crash 2014-12-01 03:29:06 -06:00
Matt Joiner
69969d0d73 dht: Error while sending a find_node during bootstrap is not fatal 2014-11-29 20:31:07 -06:00
Matt Joiner
a1d81abb0d router.bittorrent.com is in the level1 blocklist so use the alternative bootstrap addr 2014-11-28 19:45:12 -06:00
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
1c78c81075 Add a passive flag for DHT, that disables responding to queries 2014-11-28 12:04:38 -06:00
Matt Joiner
2a8a86734b dht: Reduce allocations in calculating ID distance 2014-11-19 20:02:03 -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
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
d7764a5c23 dht: Reduce announce peer parallelism now that node goodness is fixed 2014-11-17 18:03:28 -06:00