use random torrent port in auto mode

this can help port forward overlap with more than one torrserver instance on local network
This commit is contained in:
nikk gitanes
2023-08-10 13:36:54 +03:00
parent e538ded3cc
commit afcd76d7fc

View File

@@ -5,7 +5,6 @@ import (
"fmt"
"log"
"net"
"strconv"
"sync"
"github.com/anacrolix/publicip"
@@ -128,20 +127,21 @@ func (bt *BTServer) configure(ctx context.Context) {
log.Println("Set listen port", settings.BTsets.PeersListenPort)
bt.config.ListenPort = settings.BTsets.PeersListenPort
} else {
lport := 32000
for {
log.Println("Check listen port", lport)
l, err := net.Listen("tcp", ":"+strconv.Itoa(lport))
if l != nil {
l.Close()
}
if err == nil {
break
}
lport++
}
log.Println("Set listen port", lport)
bt.config.ListenPort = lport
// lport := 32000
// for {
// log.Println("Check listen port", lport)
// l, err := net.Listen("tcp", ":"+strconv.Itoa(lport))
// if l != nil {
// l.Close()
// }
// if err == nil {
// break
// }
// lport++
// }
// log.Println("Set listen port", lport)
log.Println("Set listen port to random autoselect (0)")
bt.config.ListenPort = 0 //lport
}
}