lotus/node/modules/lp2p/relay.go
2020-05-25 13:39:50 +03:00

29 lines
766 B
Go

package lp2p
import (
"fmt"
"github.com/libp2p/go-libp2p"
coredisc "github.com/libp2p/go-libp2p-core/discovery"
routing "github.com/libp2p/go-libp2p-core/routing"
discovery "github.com/libp2p/go-libp2p-discovery"
)
func NoRelay() func() (opts Libp2pOpts, err error) {
return func() (opts Libp2pOpts, err error) {
// always disabled, it's an eclipse attack vector
opts.Opts = append(opts.Opts, libp2p.DisableRelay())
return
}
}
// TODO: should be use baseRouting or can we use higher level router here?
func Discovery(router BaseIpfsRouting) (coredisc.Discovery, error) {
crouter, ok := router.(routing.ContentRouting)
if !ok {
return nil, fmt.Errorf("no suitable routing for discovery")
}
return discovery.NewRoutingDiscovery(crouter), nil
}