aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-07-22 12:43:37 +0200
committerDimitri Sokolyuk <demon@dim13.org>2016-07-22 12:43:37 +0200
commita916155668a0e5ed117f4bf362d0afff872647d8 (patch)
tree70b5493fc6b25b3c163f5c28fd4fc0a27bfd10f0
parentc7cf369ed820d3468daca2312698a1d2770cd6b9 (diff)
Addr()
-rw-r--r--cmd/btcheck/main.go5
-rw-r--r--tracker/peer.go4
2 files changed, 7 insertions, 2 deletions
diff --git a/cmd/btcheck/main.go b/cmd/btcheck/main.go
index d9162d8..6d79e8b 100644
--- a/cmd/btcheck/main.go
+++ b/cmd/btcheck/main.go
@@ -37,9 +37,10 @@ func main() {
}
pool := make(map[string]tracker.Peer)
for p := range req.Poll(tor.Announce) {
- if _, ok := pool[p.IP]; !ok {
+ addr := p.Addr()
+ if _, ok := pool[addr]; !ok {
log.Println("new peer", p)
- pool[p.IP] = p
+ pool[addr] = p
}
}
}
diff --git a/tracker/peer.go b/tracker/peer.go
index 81b1175..e19b5c3 100644
--- a/tracker/peer.go
+++ b/tracker/peer.go
@@ -20,6 +20,10 @@ func (p Peer) String() string {
return fmt.Sprintf("%v:%v %v", p.IP, p.Port, url.QueryEscape(string(p.ID)))
}
+func (p Peer) Addr() string {
+ return fmt.Sprintf("%v:%v", p.IP, p.Port)
+}
+
type Peers []Peer
func (p *Peers) UnmarshalBencode(b []byte) (int, error) {