mirror of
https://github.com/status-im/libp2p-test-plans.git
synced 2025-02-17 09:16:41 +00:00
* plan/ping: fix test & use go 1.17 * plan/ping: fix dedup path * ping-interop: prepare base module and build script * ping-interop/go-v0.11: introduce legacy ping test (fix original) * ci: add interop reusable workflow * ci: add testground endpoint config * ping-interop: rewrite with new testground build config feature * ping-interop: add v0.20 version * ping-interop: fix build parameters * ci: add ping-interop-go runner * ci: use self hosted runner * ping-interop: name with the current git branch * ping-interop: use external proxy & drop build cache * ping-interop: support dependencies changes in go master * ping-interop: using longer timeout with regulars runners * ping-interop: move to ping * README: add ping/go update intructions * ci: rename compatibility test * ci: add support for forks * ping: add doc * REMOVEME: use a test setup * ping: update libp2p versions * ping: add security compat * ping: smaller compat surface
35 lines
763 B
Go
35 lines
763 B
Go
//go:build v0.17 || v0.19
|
|
// +build v0.17 v0.19
|
|
|
|
package compat
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/libp2p/go-libp2p"
|
|
"github.com/libp2p/go-libp2p-core/host"
|
|
"github.com/libp2p/go-libp2p/config"
|
|
|
|
noise "github.com/libp2p/go-libp2p-noise"
|
|
tls "github.com/libp2p/go-libp2p-tls"
|
|
)
|
|
|
|
func NewLibp2(ctx context.Context, secureChannel string, opts ...config.Option) (host.Host, error) {
|
|
security := getSecurityByName(secureChannel)
|
|
|
|
return libp2p.New(
|
|
append(opts, security)...,
|
|
)
|
|
}
|
|
|
|
func getSecurityByName(secureChannel string) libp2p.Option {
|
|
switch secureChannel {
|
|
case "noise":
|
|
return libp2p.Security(noise.ID, noise.New)
|
|
case "tls":
|
|
return libp2p.Security(tls.ID, tls.New)
|
|
}
|
|
panic(fmt.Sprintf("unknown secure channel: %s", secureChannel))
|
|
}
|