@cryptotaxi247 / kubo / commits / 10cd499a8

cmds/swarm connect had broken

Juan Batiz-Benet committed Feb 3, 2015 at 04:57 UTC 10cd499a8b638262440537c8bce286feae63bd84
2 files changed +13 -10
core/commands/swarm.go
+12 -9
@@ -12,6 +12,7 @@ import (
12 iaddr "github.com/jbenet/go-ipfs/util/ipfsaddr"
13
14 context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
15 + ma "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/jbenet/go-multiaddr"
16 )
17
18 type stringList struct {
@@ -172,17 +173,17 @@ ipfs swarm connect /ip4/104.131.131.82/tcp/4001/ipfs/QmaCpDMGvV2BGHeYERUEnRQAwe3
173 return
174 }
175
175 - peers, err := peersWithAddresses(n.Peerstore, addrs)
176 + pis, err := peersWithAddresses(addrs)
177 if err != nil {
178 res.SetError(err, cmds.ErrNormal)
179 return
180 }
181
181 - output := make([]string, len(peers))
182 - for i, p := range peers {
183 - output[i] = "connect " + p.Pretty()
182 + output := make([]string, len(pis))
183 + for i, pi := range pis {
184 + output[i] = "connect " + pi.ID.Pretty()
185
185 - err := n.PeerHost.Connect(ctx, peer.PeerInfo{ID: p})
186 + err := n.PeerHost.Connect(ctx, pi)
187 if err != nil {
188 output[i] += " failure: " + err.Error()
189 } else {
@@ -294,15 +295,17 @@ func parseAddresses(addrs []string) (iaddrs []iaddr.IPFSAddr, err error) {
295
296 // peersWithAddresses is a function that takes in a slice of string peer addresses
297 // (multiaddr + peerid) and returns a slice of properly constructed peers
297 -func peersWithAddresses(ps peer.Peerstore, addrs []string) (pids []peer.ID, err error) {
298 +func peersWithAddresses(addrs []string) (pis []peer.PeerInfo, err error) {
299 iaddrs, err := parseAddresses(addrs)
300 if err != nil {
301 return nil, err
302 }
303
304 for _, iaddr := range iaddrs {
304 - pids = append(pids, iaddr.ID())
305 - ps.AddAddr(iaddr.ID(), iaddr.Multiaddr(), peer.TempAddrTTL)
305 + pis = append(pis, peer.PeerInfo{
306 + ID: iaddr.ID(),
307 + Addrs: []ma.Multiaddr{iaddr.Transport()},
308 + })
309 }
307 - return pids, nil
310 + return pis, nil
311 }
p2p/net/swarm/swarm_dial.go
+1 -1
@@ -301,7 +301,7 @@ func (s *Swarm) dial(ctx context.Context, p peer.ID) (*Conn, error) {
301 ila, _ := s.InterfaceListenAddresses()
302 remoteAddrs = addrutil.Subtract(remoteAddrs, ila)
303 remoteAddrs = addrutil.Subtract(remoteAddrs, s.peers.Addrs(s.local))
304 - log.Debugf("%s swarm dialing %s -- remote:%s local:%s", s.local, p, remoteAddrs, s.ListenAddresses())
304 + log.Debugf("%s swarm dialing %s -- local:%s remote:%s", s.local, p, s.ListenAddresses(), remoteAddrs)
305 if len(remoteAddrs) == 0 {
306 err := errors.New("peer has no addresses")
307 logdial["error"] = err