aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tracker/messages.go12
1 files changed, 7 insertions, 5 deletions
diff --git a/tracker/messages.go b/tracker/messages.go
index f6b70c7..6f0406d 100644
--- a/tracker/messages.go
+++ b/tracker/messages.go
@@ -3,7 +3,6 @@ package tracker
import (
"bytes"
"encoding/binary"
- "fmt"
"io/ioutil"
"log"
"net"
@@ -80,9 +79,9 @@ func (r Request) Get(announce string) (Response, error) {
return res, nil
}
-func ParseAddr(b []byte) ([]string, error) {
+func ParseAddr(b []byte) ([]*net.TCPAddr, error) {
n := len(b) / 6
- s := make([]string, n)
+ a := make([]*net.TCPAddr, n)
var port uint16
for i := 0; i < n; i++ {
@@ -92,7 +91,10 @@ func ParseAddr(b []byte) ([]string, error) {
if err != nil {
return nil, err
}
- s[i] = fmt.Sprintf("%s:%d", net.IP(b[off:off+4]), port)
+ a[i] = &net.TCPAddr{
+ IP: net.IP(b[off : off+4]),
+ Port: int(port),
+ }
}
- return s, nil
+ return a, nil
}