]> Sergey Matveev's repositories - btrtrc.git/commitdiff
cmd/tracker-announce: Add a port flag
authorMatt Joiner <anacrolix@gmail.com>
Mon, 13 Aug 2018 10:27:42 +0000 (20:27 +1000)
committerMatt Joiner <anacrolix@gmail.com>
Mon, 13 Aug 2018 10:27:42 +0000 (20:27 +1000)
cmd/tracker-announce/main.go
tracker/http.go

index a0085de79c5786567828c50e20cad40b20f23709..f6bede88d02db917c3a47271ad6af2821d472730 100644 (file)
@@ -30,13 +30,17 @@ func argSpec(arg string) (ts *torrent.TorrentSpec, err error) {
 
 func main() {
        flags := struct {
+               Port uint16
                tagflag.StartPos
                Torrents []string `arity:"+"`
-       }{}
+       }{
+               Port: 50007,
+       }
        tagflag.Parse(&flags)
        ar := tracker.AnnounceRequest{
                NumWant: -1,
                Left:    math.MaxUint64,
+               Port:    flags.Port,
        }
        var wg sync.WaitGroup
        for _, arg := range flags.Torrents {
index fbe17b694a75eaceb401b6c59159ab6fab5c3085..2d58017998c5d128fdbba0b53c3c171427146a2c 100644 (file)
@@ -69,6 +69,7 @@ func setAnnounceParams(_url *url.URL, ar *AnnounceRequest, opts Announce) {
 
        q.Set("info_hash", string(ar.InfoHash[:]))
        q.Set("peer_id", string(ar.PeerId[:]))
+       // AFAICT, port is mandatory, and there's no implied port key.
        q.Set("port", fmt.Sprintf("%d", ar.Port))
        q.Set("uploaded", strconv.FormatInt(ar.Uploaded, 10))
        q.Set("downloaded", strconv.FormatInt(ar.Downloaded, 10))