Revert "[relay] Update GO version and QUIC version (#4736)" (#5055)

This reverts commit 8722b79799.
This commit is contained in:
Maycon Santos
2026-01-07 21:02:20 +03:00
committed by GitHub
parent 8722b79799
commit 24df442198
78 changed files with 341 additions and 312 deletions

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -161,7 +161,7 @@ func (c *Client) NewRequest(ctx context.Context, method, path string, body io.Re
func parseResponse[T any](resp *http.Response) (T, error) {
var ret T
if resp.Body == nil {
return ret, fmt.Errorf("body missing, HTTP Error code %d", resp.StatusCode)
return ret, fmt.Errorf("Body missing, HTTP Error code %d", resp.StatusCode)
}
bs, err := io.ReadAll(resp.Body)
if err != nil {
@@ -169,7 +169,7 @@ func parseResponse[T any](resp *http.Response) (T, error) {
}
err = json.Unmarshal(bs, &ret)
if err != nil {
return ret, fmt.Errorf("error code %d, error unmarshalling body: %w", resp.StatusCode, err)
return ret, fmt.Errorf("Error code %d, error unmarshalling body: %w", resp.StatusCode, err)
}
return ret, nil

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -1,4 +1,5 @@
//go:build integration
// +build integration
package rest_test

View File

@@ -19,7 +19,15 @@ import (
)
var (
hmacTokenStore = &hmac.TokenStore{}
hmacTokenStore = &hmac.TokenStore{}
serverListenAddr = "127.0.0.1:1234"
serverURL = "rel://127.0.0.1:1234"
serverCfg = server.Config{
Meter: otel.Meter(""),
ExposedAddress: serverURL,
TLSSupport: false,
AuthValidator: &allow.Auth{},
}
)
func TestMain(m *testing.M) {
@@ -28,20 +36,8 @@ func TestMain(m *testing.M) {
os.Exit(code)
}
// newClientTestServerConfig creates a new server config for client testing with the given address
func newClientTestServerConfig(address string) server.Config {
return server.Config{
Meter: otel.Meter(""),
ExposedAddress: "rel://" + address,
TLSSupport: false,
AuthValidator: &allow.Auth{},
}
}
func TestClient(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50001"
serverCfg := newClientTestServerConfig(serverListenAddr)
srv, err := server.NewServer(serverCfg)
if err != nil {
@@ -68,7 +64,7 @@ func TestClient(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
t.Log("alice connecting to server")
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -76,7 +72,7 @@ func TestClient(t *testing.T) {
defer clientAlice.Close()
t.Log("placeholder connecting to server")
clientPlaceHolder := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "clientPlaceHolder", iface.DefaultMTU)
clientPlaceHolder := NewClient(serverURL, hmacTokenStore, "clientPlaceHolder", iface.DefaultMTU)
err = clientPlaceHolder.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -84,7 +80,7 @@ func TestClient(t *testing.T) {
defer clientPlaceHolder.Close()
t.Log("Bob connecting to server")
clientBob := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "bob", iface.DefaultMTU)
clientBob := NewClient(serverURL, hmacTokenStore, "bob", iface.DefaultMTU)
err = clientBob.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -124,8 +120,6 @@ func TestClient(t *testing.T) {
func TestRegistration(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50101"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv, err := server.NewServer(serverCfg)
if err != nil {
@@ -144,7 +138,7 @@ func TestRegistration(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
_ = srv.Shutdown(ctx)
@@ -163,7 +157,7 @@ func TestRegistration(t *testing.T) {
func TestRegistrationTimeout(t *testing.T) {
ctx := context.Background()
fakeUDPListener, err := net.ListenUDP("udp", &net.UDPAddr{
Port: 50201,
Port: 1234,
IP: net.ParseIP("0.0.0.0"),
})
if err != nil {
@@ -174,7 +168,7 @@ func TestRegistrationTimeout(t *testing.T) {
}(fakeUDPListener)
fakeTCPListener, err := net.ListenTCP("tcp", &net.TCPAddr{
Port: 50201,
Port: 1234,
IP: net.ParseIP("0.0.0.0"),
})
if err != nil {
@@ -184,7 +178,7 @@ func TestRegistrationTimeout(t *testing.T) {
_ = fakeTCPListener.Close()
}(fakeTCPListener)
clientAlice := NewClient("127.0.0.1:50201", hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient("127.0.0.1:1234", hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err == nil {
t.Errorf("failed to connect to server: %s", err)
@@ -198,8 +192,6 @@ func TestRegistrationTimeout(t *testing.T) {
func TestEcho(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50301"
serverCfg := newClientTestServerConfig(serverListenAddr)
idAlice := "alice"
idBob := "bob"
srvCfg := server.ListenerConfig{Address: serverListenAddr}
@@ -227,7 +219,7 @@ func TestEcho(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, idAlice, iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, idAlice, iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -239,7 +231,7 @@ func TestEcho(t *testing.T) {
}
}()
clientBob := NewClient(serverCfg.ExposedAddress, hmacTokenStore, idBob, iface.DefaultMTU)
clientBob := NewClient(serverURL, hmacTokenStore, idBob, iface.DefaultMTU)
err = clientBob.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -290,8 +282,6 @@ func TestEcho(t *testing.T) {
func TestBindToUnavailabePeer(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50401"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv, err := server.NewServer(serverCfg)
@@ -319,7 +309,7 @@ func TestBindToUnavailabePeer(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Errorf("failed to connect to server: %s", err)
@@ -338,8 +328,6 @@ func TestBindToUnavailabePeer(t *testing.T) {
func TestBindReconnect(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50501"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv, err := server.NewServer(serverCfg)
@@ -367,13 +355,13 @@ func TestBindReconnect(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
}
clientBob := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "bob", iface.DefaultMTU)
clientBob := NewClient(serverURL, hmacTokenStore, "bob", iface.DefaultMTU)
err = clientBob.Connect(ctx)
if err != nil {
t.Errorf("failed to connect to server: %s", err)
@@ -395,7 +383,7 @@ func TestBindReconnect(t *testing.T) {
t.Errorf("failed to close client: %s", err)
}
clientAlice = NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice = NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Errorf("failed to connect to server: %s", err)
@@ -441,8 +429,6 @@ func TestBindReconnect(t *testing.T) {
func TestCloseConn(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50601"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv, err := server.NewServer(serverCfg)
@@ -470,13 +456,13 @@ func TestCloseConn(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
bob := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "bob", iface.DefaultMTU)
bob := NewClient(serverURL, hmacTokenStore, "bob", iface.DefaultMTU)
err = bob.Connect(ctx)
if err != nil {
t.Errorf("failed to connect to server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Errorf("failed to connect to server: %s", err)
@@ -506,8 +492,6 @@ func TestCloseConn(t *testing.T) {
func TestCloseRelayConn(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50701"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv, err := server.NewServer(serverCfg)
@@ -534,13 +518,13 @@ func TestCloseRelayConn(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
bob := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "bob", iface.DefaultMTU)
bob := NewClient(serverURL, hmacTokenStore, "bob", iface.DefaultMTU)
err = bob.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, "alice", iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, "alice", iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -566,8 +550,6 @@ func TestCloseRelayConn(t *testing.T) {
func TestCloseByServer(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50801"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv1, err := server.NewServer(serverCfg)
@@ -590,7 +572,7 @@ func TestCloseByServer(t *testing.T) {
idAlice := "alice"
log.Debugf("connect by alice")
relayClient := NewClient(serverCfg.ExposedAddress, hmacTokenStore, idAlice, iface.DefaultMTU)
relayClient := NewClient(serverURL, hmacTokenStore, idAlice, iface.DefaultMTU)
if err = relayClient.Connect(ctx); err != nil {
log.Fatalf("failed to connect to server: %s", err)
}
@@ -625,8 +607,6 @@ func TestCloseByServer(t *testing.T) {
func TestCloseByClient(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:50901"
serverCfg := newClientTestServerConfig(serverListenAddr)
srvCfg := server.ListenerConfig{Address: serverListenAddr}
srv, err := server.NewServer(serverCfg)
@@ -648,7 +628,7 @@ func TestCloseByClient(t *testing.T) {
idAlice := "alice"
log.Debugf("connect by alice")
relayClient := NewClient(serverCfg.ExposedAddress, hmacTokenStore, idAlice, iface.DefaultMTU)
relayClient := NewClient(serverURL, hmacTokenStore, idAlice, iface.DefaultMTU)
err = relayClient.Connect(ctx)
if err != nil {
log.Fatalf("failed to connect to server: %s", err)
@@ -672,8 +652,6 @@ func TestCloseByClient(t *testing.T) {
func TestCloseNotDrainedChannel(t *testing.T) {
ctx := context.Background()
serverListenAddr := "127.0.0.1:51001"
serverCfg := newClientTestServerConfig(serverListenAddr)
idAlice := "alice"
idBob := "bob"
srvCfg := server.ListenerConfig{Address: serverListenAddr}
@@ -701,7 +679,7 @@ func TestCloseNotDrainedChannel(t *testing.T) {
t.Fatalf("failed to start server: %s", err)
}
clientAlice := NewClient(serverCfg.ExposedAddress, hmacTokenStore, idAlice, iface.DefaultMTU)
clientAlice := NewClient(serverURL, hmacTokenStore, idAlice, iface.DefaultMTU)
err = clientAlice.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)
@@ -713,7 +691,7 @@ func TestCloseNotDrainedChannel(t *testing.T) {
}
}()
clientBob := NewClient(serverCfg.ExposedAddress, hmacTokenStore, idBob, iface.DefaultMTU)
clientBob := NewClient(serverURL, hmacTokenStore, idBob, iface.DefaultMTU)
err = clientBob.Connect(ctx)
if err != nil {
t.Fatalf("failed to connect to server: %s", err)

View File

@@ -30,11 +30,11 @@ func (a Addr) String() string {
}
type Conn struct {
session *quic.Conn
session quic.Connection
ctx context.Context
}
func NewConn(session *quic.Conn) net.Conn {
func NewConn(session quic.Connection) net.Conn {
return &Conn{
session: session,
ctx: context.Background(),

View File

@@ -13,16 +13,6 @@ import (
"github.com/netbirdio/netbird/shared/relay/auth/allow"
)
// newManagerTestServerConfig creates a new server config for manager testing with the given address
func newManagerTestServerConfig(address string) server.Config {
return server.Config{
Meter: otel.Meter(""),
ExposedAddress: address,
TLSSupport: false,
AuthValidator: &allow.Auth{},
}
}
func TestEmptyURL(t *testing.T) {
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
@@ -37,10 +27,15 @@ func TestForeignConn(t *testing.T) {
ctx := context.Background()
lstCfg1 := server.ListenerConfig{
Address: "localhost:52101",
Address: "localhost:1234",
}
srv1, err := server.NewServer(newManagerTestServerConfig(lstCfg1.Address))
srv1, err := server.NewServer(server.Config{
Meter: otel.Meter(""),
ExposedAddress: lstCfg1.Address,
TLSSupport: false,
AuthValidator: &allow.Auth{},
})
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -64,9 +59,14 @@ func TestForeignConn(t *testing.T) {
}
srvCfg2 := server.ListenerConfig{
Address: "localhost:52102",
Address: "localhost:2234",
}
srv2, err := server.NewServer(newManagerTestServerConfig(srvCfg2.Address))
srv2, err := server.NewServer(server.Config{
Meter: otel.Meter(""),
ExposedAddress: srvCfg2.Address,
TLSSupport: false,
AuthValidator: &allow.Auth{},
})
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -144,9 +144,9 @@ func TestForeginConnClose(t *testing.T) {
ctx := context.Background()
srvCfg1 := server.ListenerConfig{
Address: "localhost:52201",
Address: "localhost:1234",
}
srv1, err := server.NewServer(newManagerTestServerConfig(srvCfg1.Address))
srv1, err := server.NewServer(serverCfg)
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -170,9 +170,9 @@ func TestForeginConnClose(t *testing.T) {
}
srvCfg2 := server.ListenerConfig{
Address: "localhost:52202",
Address: "localhost:2234",
}
srv2, err := server.NewServer(newManagerTestServerConfig(srvCfg2.Address))
srv2, err := server.NewServer(serverCfg)
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -225,9 +225,9 @@ func TestForeignAutoClose(t *testing.T) {
keepUnusedServerTime = 2 * time.Second
srvCfg1 := server.ListenerConfig{
Address: "localhost:52301",
Address: "localhost:1234",
}
srv1, err := server.NewServer(newManagerTestServerConfig(srvCfg1.Address))
srv1, err := server.NewServer(serverCfg)
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -252,9 +252,9 @@ func TestForeignAutoClose(t *testing.T) {
}
srvCfg2 := server.ListenerConfig{
Address: "localhost:52302",
Address: "localhost:2234",
}
srv2, err := server.NewServer(newManagerTestServerConfig(srvCfg2.Address))
srv2, err := server.NewServer(serverCfg)
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -327,9 +327,9 @@ func TestAutoReconnect(t *testing.T) {
ctx := context.Background()
srvCfg := server.ListenerConfig{
Address: "localhost:52401",
Address: "localhost:1234",
}
srv, err := server.NewServer(newManagerTestServerConfig(srvCfg.Address))
srv, err := server.NewServer(serverCfg)
if err != nil {
t.Fatalf("failed to create server: %s", err)
}
@@ -397,9 +397,14 @@ func TestNotifierDoubleAdd(t *testing.T) {
ctx := context.Background()
listenerCfg1 := server.ListenerConfig{
Address: "localhost:52501",
Address: "localhost:1234",
}
srv, err := server.NewServer(newManagerTestServerConfig(listenerCfg1.Address))
srv, err := server.NewServer(server.Config{
Meter: otel.Meter(""),
ExposedAddress: listenerCfg1.Address,
TLSSupport: false,
AuthValidator: &allow.Auth{},
})
if err != nil {
t.Fatalf("failed to create server: %s", err)
}