]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Update to use utp package redesign
authorMatt Joiner <anacrolix@gmail.com>
Tue, 2 Dec 2014 05:35:39 +0000 (23:35 -0600)
committerMatt Joiner <anacrolix@gmail.com>
Tue, 2 Dec 2014 05:35:39 +0000 (23:35 -0600)
client.go

index 24af34da4f8c636e92ac1a654fae409e525c9dc4..6ac5a2298571190d5502d7092e1f7fe70892bffe 100644 (file)
--- a/client.go
+++ b/client.go
@@ -426,9 +426,15 @@ func NewClient(cfg *Config) (cl *Client, err error) {
                cl.listeners = append(cl.listeners, l)
                go cl.acceptConnections(l, false)
        }
-       var utpL *utp.UTPListener
+       var utpL *utp.Listener
        if !cfg.DisableUTP {
-               utpL, err = utp.Listen("utp", listenAddr())
+               var utpAddr *utp.Addr
+               utpAddr, err = utp.ResolveAddr("utp", listenAddr())
+               if err != nil {
+                       err = fmt.Errorf("error resolving utp listen addr: %s", err)
+                       return
+               }
+               utpL, err = utp.Listen("utp", utpAddr)
                if err != nil {
                        return
                }
@@ -881,10 +887,9 @@ func (me *Client) runConnection(sock net.Conn, torrent *torrent, discovery peerS
                })
        }
        if conn.PeerExtensionBytes[7]&0x01 != 0 && me.dHT != nil {
-               addr, _ := me.dHT.LocalAddr().(*net.UDPAddr)
                conn.Post(pp.Message{
                        Type: pp.Port,
-                       Port: uint16(addr.Port),
+                       Port: uint16(AddrPort(me.dHT.LocalAddr())),
                })
        }
        if torrent.haveInfo() {