]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Switch back to using the UTP redesign
authorMatt Joiner <anacrolix@gmail.com>
Thu, 4 Dec 2014 01:58:02 +0000 (19:58 -0600)
committerMatt Joiner <anacrolix@gmail.com>
Thu, 4 Dec 2014 01:58:02 +0000 (19:58 -0600)
client.go

index 26dc55a4625589b71588d531471798f6367e584c..88c6702babb920d739ffd0f984c216eae13acb71 100644 (file)
--- a/client.go
+++ b/client.go
@@ -441,9 +441,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
                }
@@ -896,10 +902,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() {