diff --git a/transport/internet/sockopt_linux_test.go b/transport/internet/sockopt_linux_test.go deleted file mode 100644 index 1d2cfc4ce..000000000 --- a/transport/internet/sockopt_linux_test.go +++ /dev/null @@ -1,48 +0,0 @@ -package internet_test - -import ( - "context" - "syscall" - "testing" - - "v2ray.com/core/common" - "v2ray.com/core/common/net" - "v2ray.com/core/testing/servers/tcp" - . "v2ray.com/core/transport/internet" -) - -func TestSockOptMark(t *testing.T) { - t.Skip("requires CAP_NET_ADMIN") - - tcpServer := tcp.Server{ - MsgProcessor: func(b []byte) []byte { - return b - }, - } - dest, err := tcpServer.Start() - common.Must(err) - defer tcpServer.Close() - - const mark = 1 - ctx := context.Background() - ctx = ContextWithStreamSettings(ctx, &MemoryStreamConfig{ - SocketSettings: &SocketConfig{ - Mark: mark, - }, - }) - dialer := DefaultSystemDialer{} - conn, err := dialer.Dial(ctx, nil, dest) - common.Must(err) - defer conn.Close() - - rawConn, err := conn.(*net.TCPConn).SyscallConn() - common.Must(err) - err = rawConn.Control(func(fd uintptr) { - m, err := syscall.GetsockoptInt(int(fd), syscall.SOL_SOCKET, syscall.SO_MARK) - common.Must(err) - if mark != m { - t.Fatal("unexpected conneciton mark", m, " want ", mark) - } - }) - common.Must(err) -} diff --git a/transport/internet/sockopt_test.go b/transport/internet/sockopt_test.go index 4bf6ea603..504c6a208 100644 --- a/transport/internet/sockopt_test.go +++ b/transport/internet/sockopt_test.go @@ -2,16 +2,18 @@ package internet_test import ( "context" + "syscall" "testing" "v2ray.com/core/common" "v2ray.com/core/common/buf" "v2ray.com/core/common/compare" + "v2ray.com/core/common/net" "v2ray.com/core/testing/servers/tcp" . "v2ray.com/core/transport/internet" ) -func TestSockOptMark(t *testing.T) { +func TestTCPFastOpen(t *testing.T) { tcpServer := tcp.Server{ MsgProcessor: func(b []byte) []byte { return b @@ -41,3 +43,39 @@ func TestSockOptMark(t *testing.T) { t.Fatal(err) } } + +func TestSockOptMark(t *testing.T) { + t.Skip("requires CAP_NET_ADMIN") + + tcpServer := tcp.Server{ + MsgProcessor: func(b []byte) []byte { + return b + }, + } + dest, err := tcpServer.Start() + common.Must(err) + defer tcpServer.Close() + + const mark = 1 + ctx := context.Background() + ctx = ContextWithStreamSettings(ctx, &MemoryStreamConfig{ + SocketSettings: &SocketConfig{ + Mark: mark, + }, + }) + dialer := DefaultSystemDialer{} + conn, err := dialer.Dial(ctx, nil, dest) + common.Must(err) + defer conn.Close() + + rawConn, err := conn.(*net.TCPConn).SyscallConn() + common.Must(err) + err = rawConn.Control(func(fd uintptr) { + m, err := syscall.GetsockoptInt(int(fd), syscall.SOL_SOCKET, syscall.SO_MARK) + common.Must(err) + if mark != m { + t.Fatal("unexpected conneciton mark", m, " want ", mark) + } + }) + common.Must(err) +}