prysm-pulse/beacon-chain/p2p/dial_relay_node.go

32 lines
678 B
Go
Raw Normal View History

package p2p
import (
"context"
"github.com/libp2p/go-libp2p/core/host"
"github.com/libp2p/go-libp2p/core/peer"
"go.opencensus.io/trace"
)
// MakePeer from multiaddress string.
func MakePeer(addr string) (*peer.AddrInfo, error) {
maddr, err := multiAddrFromString(addr)
if err != nil {
return nil, err
}
return peer.AddrInfoFromP2pAddr(maddr)
}
func dialRelayNode(ctx context.Context, h host.Host, relayAddr string) error {
ctx, span := trace.StartSpan(ctx, "p2p_dialRelayNode")
defer span.End()
p, err := MakePeer(relayAddr)
if err != nil {
return err
}
2020-07-11 15:18:25 +00:00
ctx, cancel := context.WithTimeout(ctx, maxDialTimeout)
defer cancel()
return h.Connect(ctx, *p)
}