提交 fc6bab7b 作者: Juan Batiz-Benet

net/conn: moved zero addr error

上级 43452fde
......@@ -2,6 +2,7 @@ package conn
import (
"fmt"
"strings"
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
......@@ -23,6 +24,10 @@ func (d *Dialer) Dial(ctx context.Context, network string, remote peer.Peer) (Co
return nil, fmt.Errorf("No remote address for network %s", network)
}
if strings.HasPrefix(raddr.String(), "/ip4/0.0.0.0") {
return nil, fmt.Errorf("Attempted to connect to zero address: %s", raddr)
}
remote.SetType(peer.Remote)
remote, err := d.Peerstore.Add(remote)
if err != nil {
......
......@@ -5,7 +5,6 @@ package swarm
import (
"errors"
"fmt"
"strings"
"sync"
conn "github.com/jbenet/go-ipfs/net/conn"
......@@ -133,16 +132,6 @@ func (s *Swarm) Dial(peer peer.Peer) (conn.Conn, error) {
Peerstore: s.peers,
}
// If we are attempting to connect to the zero addr, fail out early
raddr := peer.NetAddress("tcp")
if raddr == nil {
return nil, fmt.Errorf("No remote address for network tcp")
}
if strings.HasPrefix(raddr.String(), "/ip4/0.0.0.0") {
return nil, fmt.Errorf("Attempted to connect to loopback address: %s", raddr)
}
c, err = d.Dial(s.Context(), "tcp", peer)
if err != nil {
return nil, err
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论