config.go | 22 ++++------------------ tracker_scraper.go | 2 +- diff --git a/config.go b/config.go index af7b2c06ff63a5d1becb783373f25f276a04d686..2d9a3afb9168365b2e198f41f86ca6811e6b51a3 100644 --- a/config.go +++ b/config.go @@ -4,7 +4,6 @@ import ( "crypto/tls" "net" "net/http" - "net/url" "time" "github.com/anacrolix/dht" @@ -80,10 +79,10 @@ DisableIPv4Peers bool // Perform logging and any other behaviour that will help debug. Debug bool `help:"enable debugging"` - // HTTP client used to query the tracker endpoint. Default is DefaultHTTPClient - HTTP *http.Client + // For querying HTTP trackers. + TrackerHttpClient *http.Client // HTTPUserAgent changes default UserAgent for HTTP requests - HTTPUserAgent string `long:"http-user-agent"` + HTTPUserAgent string // Updated occasionally to when there's been some changes to client // behaviour in case other clients are assuming anything of us. See also // `bep20`. @@ -124,7 +123,7 @@ } func NewDefaultClientConfig() *ClientConfig { return &ClientConfig{ - HTTP: &http.Client{ + TrackerHttpClient: &http.Client{ Timeout: time.Second * 15, Transport: &http.Transport{ Dial: (&net.Dialer{ @@ -147,19 +146,6 @@ DhtStartingNodes: dht.GlobalBootstrapAddrs, ListenHost: func(string) string { return "" }, UploadRateLimiter: unlimited, DownloadRateLimiter: unlimited, - } -} - -func (cfg *ClientConfig) setProxyURL() { - fixedURL, err := url.Parse(cfg.ProxyURL) - if err != nil { - return - } - - cfg.HTTP.Transport = &http.Transport{ - Proxy: http.ProxyURL(fixedURL), - TLSHandshakeTimeout: 15 * time.Second, - TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, } } diff --git a/tracker_scraper.go b/tracker_scraper.go index 39359dbe464e80b0ec747c519b891a08438e1fc0..7b2b5137e8aa995a08ee1597680698c5b34186c9 100644 --- a/tracker_scraper.go +++ b/tracker_scraper.go @@ -111,7 +111,7 @@ me.t.cl.mu.Lock() req := me.t.announceRequest() me.t.cl.mu.Unlock() res, err := tracker.Announce{ - HttpClient: me.t.cl.config.HTTP, + HttpClient: me.t.cl.config.TrackerHttpClient, UserAgent: me.t.cl.config.HTTPUserAgent, TrackerUrl: me.trackerUrl(ip), Request: req,