diff --git a/src/server/torr/State.go b/src/server/torr/State.go index 530644d..9b9022d 100644 --- a/src/server/torr/State.go +++ b/src/server/torr/State.go @@ -1,14 +1,14 @@ package torr import ( - "github.com/anacrolix/dht" + "github.com/anacrolix/torrent" ) type BTState struct { LocalPort int PeerID string BannedIPs int - DHTs []*dht.Server + DHTs []torrent.DhtServer Torrents []*Torrent } diff --git a/src/server/web/Info.go b/src/server/web/Info.go index 3db7b1e..1b3d913 100644 --- a/src/server/web/Info.go +++ b/src/server/web/Info.go @@ -7,6 +7,8 @@ import ( "server/utils" + dht2 "github.com/anacrolix/dht" + "github.com/anacrolix/torrent/metainfo" "github.com/labstack/echo" "github.com/labstack/gommon/bytes" @@ -39,10 +41,12 @@ func statePage(c echo.Context) error { for _, dht := range state.DHTs { msg += fmt.Sprintf("%s DHT server at %s:
\n", dht.Addr().Network(), dht.Addr().String()) dhtStats := dht.Stats() - msg += fmt.Sprintf("\t # Nodes: %d (%d good, %d banned)
\n", dhtStats.Nodes, dhtStats.GoodNodes, dhtStats.BadNodes) - msg += fmt.Sprintf("\t Server ID: %x
\n", dht.ID()) - msg += fmt.Sprintf("\t Announces: %d
\n", dhtStats.SuccessfulOutboundAnnouncePeerQueries) - msg += fmt.Sprintf("\t Outstanding transactions: %d
\n", dhtStats.OutstandingTransactions) + if ds, ok := dhtStats.(dht2.ServerStats); ok { + msg += fmt.Sprintf("\t # Nodes: %d (%d good, %d banned)
\n", ds.Nodes, ds.GoodNodes, ds.BadNodes) + msg += fmt.Sprintf("\t Server ID: %x
\n", dht.ID()) + msg += fmt.Sprintf("\t Announces: %d
\n", ds.SuccessfulOutboundAnnouncePeerQueries) + msg += fmt.Sprintf("\t Outstanding transactions: %d
\n", ds.OutstandingTransactions) + } } sort.Slice(state.Torrents, func(i, j int) bool {