From c747de37d3c96f7fa50844cc5b6297f88c33fa08 Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Sun, 2 Jan 2022 15:58:57 +0400 Subject: [PATCH] use the transport.Upgrader interface --- p2p/transport/tcp/tcp.go | 5 ++--- p2p/transport/tcp/tcp_test.go | 34 ++++++++++++++-------------------- 2 files changed, 16 insertions(+), 23 deletions(-) diff --git a/p2p/transport/tcp/tcp.go b/p2p/transport/tcp/tcp.go index 1405c6c200..d21dcb0793 100644 --- a/p2p/transport/tcp/tcp.go +++ b/p2p/transport/tcp/tcp.go @@ -12,7 +12,6 @@ import ( "github.com/libp2p/go-libp2p-core/peer" "github.com/libp2p/go-libp2p-core/transport" - tptu "github.com/libp2p/go-libp2p-transport-upgrader" rtpt "github.com/libp2p/go-reuseport-transport" logging "github.com/ipfs/go-log/v2" @@ -106,7 +105,7 @@ func WithConnectionTimeout(d time.Duration) Option { type TcpTransport struct { // Connection upgrader for upgrading insecure stream connections to // secure multiplex connections. - Upgrader *tptu.Upgrader + Upgrader transport.Upgrader // Explicitly disable reuseport. disableReuseport bool @@ -121,7 +120,7 @@ var _ transport.Transport = &TcpTransport{} // NewTCPTransport creates a tcp transport object that tracks dialers and listeners // created. It represents an entire TCP stack (though it might not necessarily be). -func NewTCPTransport(upgrader *tptu.Upgrader, opts ...Option) (*TcpTransport, error) { +func NewTCPTransport(upgrader transport.Upgrader, opts ...Option) (*TcpTransport, error) { tr := &TcpTransport{ Upgrader: upgrader, connectTimeout: defaultConnectTimeout, // can be set by using the WithConnectionTimeout option diff --git a/p2p/transport/tcp/tcp_test.go b/p2p/transport/tcp/tcp_test.go index 35b0aad7b7..21a12bd0fd 100644 --- a/p2p/transport/tcp/tcp_test.go +++ b/p2p/transport/tcp/tcp_test.go @@ -3,11 +3,13 @@ package tcp import ( "testing" - csms "github.com/libp2p/go-conn-security-multistream" "github.com/libp2p/go-libp2p-core/crypto" "github.com/libp2p/go-libp2p-core/peer" "github.com/libp2p/go-libp2p-core/sec" "github.com/libp2p/go-libp2p-core/sec/insecure" + "github.com/libp2p/go-libp2p-core/transport" + + csms "github.com/libp2p/go-conn-security-multistream" mplex "github.com/libp2p/go-libp2p-mplex" ttransport "github.com/libp2p/go-libp2p-testing/suites/transport" tptu "github.com/libp2p/go-libp2p-transport-upgrader" @@ -22,15 +24,13 @@ func TestTcpTransport(t *testing.T) { peerA, ia := makeInsecureMuxer(t) _, ib := makeInsecureMuxer(t) - ta, err := NewTCPTransport(&tptu.Upgrader{ - Secure: ia, - Muxer: new(mplex.Transport), - }) + ua, err := tptu.New(ia, new(mplex.Transport)) + require.NoError(t, err) + ta, err := NewTCPTransport(ua) + require.NoError(t, err) + ub, err := tptu.New(ib, new(mplex.Transport)) require.NoError(t, err) - tb, err := NewTCPTransport(&tptu.Upgrader{ - Secure: ib, - Muxer: new(mplex.Transport), - }) + tb, err := NewTCPTransport(ub) require.NoError(t, err) zero := "/ip4/127.0.0.1/tcp/0" @@ -46,11 +46,8 @@ func TestTcpTransportCantDialDNS(t *testing.T) { dnsa, err := ma.NewMultiaddr("/dns4/example.com/tcp/1234") require.NoError(t, err) - _, sm := makeInsecureMuxer(t) - tpt, err := NewTCPTransport(&tptu.Upgrader{ - Secure: sm, - Muxer: new(mplex.Transport), - }) + var u transport.Upgrader + tpt, err := NewTCPTransport(u) require.NoError(t, err) if tpt.CanDial(dnsa) { @@ -67,15 +64,12 @@ func TestTcpTransportCantListenUtp(t *testing.T) { utpa, err := ma.NewMultiaddr("/ip4/127.0.0.1/udp/0/utp") require.NoError(t, err) - _, sm := makeInsecureMuxer(t) - tpt, err := NewTCPTransport(&tptu.Upgrader{ - Secure: sm, - Muxer: new(mplex.Transport), - }) + var u transport.Upgrader + tpt, err := NewTCPTransport(u) require.NoError(t, err) _, err = tpt.Listen(utpa) - require.Error(t, err, "shouldnt be able to listen on utp addr with tcp transport") + require.Error(t, err, "shouldn't be able to listen on utp addr with tcp transport") envReuseportVal = false }