From bb4fc82d4b47977273987f78e4558536ba577312 Mon Sep 17 00:00:00 2001 From: Matt Joiner Date: Tue, 4 May 2021 16:00:22 +1000 Subject: [PATCH] cmd/torrent: Restore parsing of units for upload and download rates https://github.com/anacrolix/torrent/issues/447 --- cmd/torrent/main.go | 20 ++++++++++---------- go.mod | 2 +- go.sum | 2 ++ 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/cmd/torrent/main.go b/cmd/torrent/main.go index 20373831..2271b931 100644 --- a/cmd/torrent/main.go +++ b/cmd/torrent/main.go @@ -165,12 +165,12 @@ var flags struct { type SpewBencodingCmd struct{} type DownloadCmd struct { - Mmap bool `help:"memory-map torrent data"` - TestPeer []string `help:"addresses of some starting peers"` - Seed bool `help:"seed after download is complete"` - Addr string `help:"network listen addr"` - UploadRate tagflag.Bytes `help:"max piece bytes to send per second" default:"-1"` - DownloadRate tagflag.Bytes `help:"max bytes per second down from peers" default:"-1"` + Mmap bool `help:"memory-map torrent data"` + TestPeer []string `help:"addresses of some starting peers"` + Seed bool `help:"seed after download is complete"` + Addr string `help:"network listen addr"` + UploadRate *tagflag.Bytes `help:"max piece bytes to send per second"` + DownloadRate *tagflag.Bytes `help:"max bytes per second down from peers"` PackedBlocklist string PublicIP net.IP Progress bool `default:"true"` @@ -297,11 +297,11 @@ func downloadErr() error { if flags.Addr != "" { clientConfig.SetListenAddr(flags.Addr) } - if flags.UploadRate != -1 { - clientConfig.UploadRateLimiter = rate.NewLimiter(rate.Limit(flags.UploadRate), 256<<10) + if flags.UploadRate != nil { + clientConfig.UploadRateLimiter = rate.NewLimiter(rate.Limit(*flags.UploadRate), 256<<10) } - if flags.DownloadRate != -1 { - clientConfig.DownloadRateLimiter = rate.NewLimiter(rate.Limit(flags.DownloadRate), 1<<20) + if flags.DownloadRate != nil { + clientConfig.DownloadRateLimiter = rate.NewLimiter(rate.Limit(*flags.DownloadRate), 1<<20) } if flags.Quiet { clientConfig.Logger = log.Discard diff --git a/go.mod b/go.mod index f94f27b2..30b55a09 100644 --- a/go.mod +++ b/go.mod @@ -15,7 +15,7 @@ require ( github.com/anacrolix/missinggo/v2 v2.5.0 github.com/anacrolix/multiless v0.1.0 github.com/anacrolix/sync v0.2.0 - github.com/anacrolix/tagflag v1.2.0 + github.com/anacrolix/tagflag v1.3.0 github.com/anacrolix/upnp v0.1.2-0.20200416075019-5e9378ed1425 github.com/anacrolix/utp v0.1.0 github.com/bradfitz/iter v0.0.0-20191230175014-e8f45d346db8 diff --git a/go.sum b/go.sum index 5513f936..e12648a1 100644 --- a/go.sum +++ b/go.sum @@ -137,6 +137,8 @@ github.com/anacrolix/tagflag v1.1.0/go.mod h1:Scxs9CV10NQatSmbyjqmqmeQNwGzlNe0CM github.com/anacrolix/tagflag v1.1.1-0.20200411025953-9bb5209d56c2/go.mod h1:Scxs9CV10NQatSmbyjqmqmeQNwGzlNe0CMUMIxqHIG8= github.com/anacrolix/tagflag v1.2.0 h1:WdSv10SpxOI97++f5FUKnKPFkVGMiPlpYm52XPaMkp4= github.com/anacrolix/tagflag v1.2.0/go.mod h1:Scxs9CV10NQatSmbyjqmqmeQNwGzlNe0CMUMIxqHIG8= +github.com/anacrolix/tagflag v1.3.0 h1:5NI+9CniDnEH0BWA4UcQbERyFPjKJqZnVkItGVIDy/s= +github.com/anacrolix/tagflag v1.3.0/go.mod h1:Scxs9CV10NQatSmbyjqmqmeQNwGzlNe0CMUMIxqHIG8= github.com/anacrolix/torrent v0.0.0-20180622074351-fefeef4ee9eb/go.mod h1:3vcFVxgOASslNXHdivT8spyMRBanMCenHRpe0u5vpBs= github.com/anacrolix/torrent v1.7.1/go.mod h1:uvOcdpOjjrAq3uMP/u1Ide35f6MJ/o8kMnFG8LV3y6g= github.com/anacrolix/torrent v1.9.0/go.mod h1:jJJ6lsd2LD1eLHkUwFOhy7I0FcLYH0tHKw2K7ZYMHCs= -- 2.48.1