From: Matt Joiner Date: Thu, 20 Feb 2020 06:04:11 +0000 (+1100) Subject: Remove ClientConfig.ProxyURL and DefaultHTTPUserAgent X-Git-Tag: v1.14.0^0 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=71f18f1042752127c27e1247cfe207e215912db2;p=btrtrc.git 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. --- diff --git a/client.go b/client.go index 451788c5..8bb1ca38 100644 --- a/client.go +++ b/client.go @@ -10,8 +10,6 @@ import ( "fmt" "io" "net" - "net/http" - "net/url" "strconv" "strings" "time" @@ -217,12 +215,6 @@ func NewClient(cfg *ClientConfig) (cl *Client, err error) { } } - if cl.config.HTTPProxy == nil && cl.config.ProxyURL != "" { - if fixedURL, err := url.Parse(cl.config.ProxyURL); err == nil { - cl.config.HTTPProxy = http.ProxyURL(fixedURL) - } - } - sockets, err := listenAll(cl.listenNetworks(), cl.config.ListenHost, cl.config.ListenPort, cl.firewallCallback) if err != nil { return diff --git a/config.go b/config.go index 692b0751..ee41ba02 100644 --- a/config.go +++ b/config.go @@ -19,8 +19,6 @@ import ( "github.com/anacrolix/torrent/storage" ) -var DefaultHTTPUserAgent = "Go-Torrent/1.0" - // Probably not safe to modify this after it's given to a Client. type ClientConfig struct { // Store torrent file data in this directory unless .DefaultStorage is @@ -76,11 +74,6 @@ type ClientConfig struct { // Chooses the crypto method to use when receiving connections with header obfuscation. CryptoSelector mse.CryptoSelector - // Sets usage of Socks5 Proxy. Authentication should be included in the url if needed. - // Examples: socks5://demo:demo@192.168.99.100:1080 - // http://proxy.domain.com:3128 - ProxyURL string - IPBlocklist iplist.Ranger DisableIPv6 bool `long:"disable-ipv6"` DisableIPv4 bool @@ -89,11 +82,8 @@ type ClientConfig struct { Debug bool `help:"enable debugging"` Logger log.Logger - // HTTPProxy defines proxy for HTTP requests. - // Format: func(*Request) (*url.URL, error), - // or result of http.ProxyURL(HTTPProxy). - // By default, it is composed from ClientConfig.ProxyURL, - // if not set explicitly in ClientConfig struct + // Defines proxy for HTTP requests, such as for trackers. It's commonly set from the result of + // "net/http".ProxyURL(HTTPProxy). HTTPProxy func(*http.Request) (*url.URL, error) // HTTPUserAgent changes default UserAgent for HTTP requests HTTPUserAgent string @@ -150,7 +140,7 @@ func (cfg *ClientConfig) SetListenAddr(addr string) *ClientConfig { func NewDefaultClientConfig() *ClientConfig { cc := &ClientConfig{ - HTTPUserAgent: DefaultHTTPUserAgent, + HTTPUserAgent: "Go-Torrent/1.0", ExtendedHandshakeClientVersion: "go.torrent dev 20181121", Bep20: "-GT0002-", UpnpID: "anacrolix/torrent",