2
0
mirror of synced 2025-02-24 06:38:14 +00:00

98 Commits

Author SHA1 Message Date
Matt Joiner
ded6c19edb Add the DropMutuallyCompletePeers ClientConfig field 2021-01-05 16:58:45 +11:00
Matt Joiner
6e43db6a89 Document ClientConfig.DisableAcceptRateLimiting 2020-12-21 19:12:50 +11:00
Matt Joiner
e6da640bb2 Tidy up doc, file names, naming 2020-11-09 10:56:45 +11:00
Matt Joiner
a2c7b384df Limit half-open connections at the Client level 2020-09-30 16:56:27 +10:00
Matt Joiner
7ee0fdafe3 Add some client callbacks 2020-07-15 16:16:14 +10:00
Matt Joiner
72bd4f362e Add option to disable webseeds 2020-06-02 16:17:32 +10:00
Matt Joiner
67c9021e97 Support disabling webtorrent 2020-06-01 18:24:46 +10:00
Matt Joiner
3e9a5a4aec Expose ClientConfig.Extensions
Also run the storage failure test with fast disabled for the seeder. This probably would have tickled some issues in the past, so it seems like a good place to try it out.
2020-04-23 13:03:40 +10:00
Matt Joiner
e5f7765dfa Fix small cache transfer tests
Since hashing Peer Addrs in the Torrent pending peers, clients are getting more than one connection to the seeder in the tests and failing.
2020-04-16 14:12:17 +10:00
Matt Joiner
c83738f3f4 Update to latest anacrolix/dht 2020-03-17 13:47:53 +11:00
Matt Joiner
c855c7a366 Differentiate between storage.ClientImpl{,Closer} 2020-02-21 14:12:44 +11:00
Matt Joiner
71f18f1042 Remove ClientConfig.ProxyURL and DefaultHTTPUserAgent
ProxyURL is no longer used for implicit sockets, this will ensure consumers are aware. It's other behaviour is already more correct specified through HTTPProxy.

DefaultHTTPUserAgent was vestigial, and is specified now through the ClientConfig.
2020-02-20 17:04:11 +11:00
Matt Joiner
d24922dc09 Add support for non-IP-based networks
Includes a test with unix sockets. Exposes AddDialer, AddListener, and reworks Peer.
2020-02-20 16:47:37 +11:00
Matt Joiner
538efd12bd Restore the default duplicate request timeout strategy 2020-01-24 17:34:07 +11:00
Matt Joiner
48eb7ff3f2 Expose request strategies 2020-01-24 17:30:57 +11:00
Matt Joiner
2559af0f9c Extract the request timeout stuff into requestStrategyThree 2020-01-14 10:51:09 +11:00
Matt Joiner
baefdfd9ea Disable accept rate limiting by default
It messes with any non-standard usage, like localhost etc. It might even just be a bad idea when interacting with clients that behave like ourselves: opening connections with varying encryption and protocols simultaneously to each peer.
2020-01-04 17:17:56 +11:00
Matt Joiner
6cc65683e5 Revert to log v0.4.0 2020-01-04 16:43:15 +11:00
Matt Joiner
01f9fdb921 Upgrade to log v0.5.0 2020-01-03 15:37:08 +11:00
Matt Joiner
d4e90519e6 Use new anacrolix/multiless, and incorporate Peer.Trusted into peer prioritization 2019-12-23 14:04:07 +11:00
davtoro
82e1c81a9a Possibility to change UPnP ID (#354) 2019-12-16 13:22:24 +11:00
Matt Joiner
f98ff7507e Use default connection tracking values 2019-11-04 12:11:26 +11:00
Matt Joiner
0aef469a4c Use missinggo/v2/conntrack 2019-11-02 22:35:57 +11:00
Matt Joiner
cb1bf0f413 goimports -local 2019-08-21 20:58:40 +10:00
Matt Joiner
5a2c1c9b76 Upgrade to simplified logger 2019-08-21 20:44:12 +10:00
Matt Joiner
9224303c1e Update all imports of dht to v2 2019-08-10 18:46:07 +10:00
Matt Joiner
018de2c96c Improve comments on some config fields 2019-07-23 11:30:05 +10:00
Matt Joiner
958ff01eab Change the default client port 2019-07-19 16:19:21 +10:00
Matt Joiner
1d8873552a Rework header obfuscation and add tests for fallbacks 2019-07-19 13:23:36 +10:00
BruceWang
60e215aa81 Add OnQuery Hook 2019-05-29 15:08:46 +10:00
Matt Joiner
b5a1aabe90 Make the default conntracker instance unlimited for now
There are rate limiting issues in the DHT that need to be resolved.
2019-04-09 12:54:41 +10:00
Matt Joiner
3ba91c4334 Bump protocol strings 2018-11-21 17:06:31 +11:00
Matt Joiner
f4e30656d6 Add initial connection tracking 2018-11-21 17:02:22 +11:00
Matt Joiner
fc4fab91f5 Switch to goimports import sorting
Used to use sortimports, but it's old, and goimports seems to have an opinion now.
2018-11-02 23:12:01 +11:00
Denis Kuzmenok
9dc89ab6dc reverting usage of proxy for http requests 2018-10-31 10:54:10 +11:00
Matt Joiner
ad0c33a50c Fix TLS handshake failures with https trackers
Fixes #276
2018-10-18 11:09:56 +11:00
Matt Joiner
d493604adc Add comments to some ClientConfig fields 2018-09-03 11:48:11 +10:00
Matt Joiner
4db3870836 Reduce default handshake timeout to 3s 2018-07-15 13:01:22 +10:00
Matt Joiner
de08380464 Decide where to set proxy for HTTP trackers
Remove old ClientConfig.setProxyURL, set this directly now through ClientConfig.TrackerHttpClient.Transport.Proxy (if your Client allows it).
2018-07-11 15:10:58 +10:00
Matt Joiner
e3cb94006c Reinstate the reduce dial timeout and update some values
Fixes #263
2018-07-10 11:19:14 +10:00
Matt Joiner
fad06c7ddf sortimports 2018-07-07 11:36:58 +10:00
Matt Joiner
e0f0617b0b Comments and readability 2018-07-07 11:33:48 +10:00
Matt Joiner
0caafd8e87 Allow dropping connections to the same peer ID
Necessary for a test that expects one connection to each other Client.
2018-06-16 16:40:37 +10:00
Matt Joiner
70dfc1f518 Allow disabling accept limiting and modify some constants 2018-06-16 16:37:13 +10:00
Matt Joiner
e97f487d2e Rename Config->ClientConfig and change how defaults work
This is a very breaking change.
2018-06-16 16:30:04 +10:00
Denis
f6ed514c3b added proxy support to the library, using ProxyURL parameter. (#256) 2018-06-08 20:52:36 +10:00
Matt Joiner
e9386d1016 Fix #246 2018-04-12 23:34:31 +10:00
Matt Joiner
b5df073217 Support different hosts for each network
CircleCI's localhost hostname doesn't resolve for IPv6.
2018-04-12 15:06:53 +10:00
Matt Joiner
319e57d1c6 Rework conns to/and allow multiple DHT servers
This will help with #229, and IPv6 support.
2018-04-12 11:41:07 +10:00
Matt Joiner
d950677f67 Expose public IPv4 and IPv6 config options and use them with trackers 2018-03-29 14:29:15 +11:00