|
@@ -44,7 +44,7 @@ func TestPassiveConnection(t *testing.T) {
|
|
|
SendFirst: []byte("send first"),
|
|
SendFirst: []byte("send first"),
|
|
|
}
|
|
}
|
|
|
dest, err := tcpServer.Start()
|
|
dest, err := tcpServer.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer tcpServer.Close()
|
|
defer tcpServer.Close()
|
|
|
|
|
|
|
|
serverPort := tcp.PickPort()
|
|
serverPort := tcp.PickPort()
|
|
@@ -72,18 +72,18 @@ func TestPassiveConnection(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
|
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
|
|
IP: []byte{127, 0, 0, 1},
|
|
IP: []byte{127, 0, 0, 1},
|
|
|
Port: int(serverPort),
|
|
Port: int(serverPort),
|
|
|
})
|
|
})
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
{
|
|
{
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err := conn.Read(response)
|
|
nBytes, err := conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(string(response[:nBytes]), Equals, "send first")
|
|
assert(string(response[:nBytes]), Equals, "send first")
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -91,14 +91,14 @@ func TestPassiveConnection(t *testing.T) {
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
{
|
|
{
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err := conn.Read(response)
|
|
nBytes, err := conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -246,7 +246,7 @@ func TestProxyOverKCP(t *testing.T) {
|
|
|
MsgProcessor: xor,
|
|
MsgProcessor: xor,
|
|
|
}
|
|
}
|
|
|
dest, err := tcpServer.Start()
|
|
dest, err := tcpServer.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer tcpServer.Close()
|
|
defer tcpServer.Close()
|
|
|
|
|
|
|
|
serverUserID := protocol.NewID(uuid.New())
|
|
serverUserID := protocol.NewID(uuid.New())
|
|
@@ -376,22 +376,22 @@ func TestProxyOverKCP(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(serverConfig, proxyConfig, clientConfig)
|
|
servers, err := InitializeServerConfigs(serverConfig, proxyConfig, clientConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
|
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
|
|
IP: []byte{127, 0, 0, 1},
|
|
IP: []byte{127, 0, 0, 1},
|
|
|
Port: int(clientPort),
|
|
Port: int(clientPort),
|
|
|
})
|
|
})
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
payload := "dokodemo request."
|
|
payload := "dokodemo request."
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
|
|
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err = conn.Read(response)
|
|
nBytes, err = conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
|
assert(conn.Close(), IsNil)
|
|
assert(conn.Close(), IsNil)
|
|
|
|
|
|
|
@@ -405,14 +405,14 @@ func TestBlackhole(t *testing.T) {
|
|
|
MsgProcessor: xor,
|
|
MsgProcessor: xor,
|
|
|
}
|
|
}
|
|
|
dest, err := tcpServer.Start()
|
|
dest, err := tcpServer.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer tcpServer.Close()
|
|
defer tcpServer.Close()
|
|
|
|
|
|
|
|
tcpServer2 := tcp.Server{
|
|
tcpServer2 := tcp.Server{
|
|
|
MsgProcessor: xor,
|
|
MsgProcessor: xor,
|
|
|
}
|
|
}
|
|
|
dest2, err := tcpServer2.Start()
|
|
dest2, err := tcpServer2.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer tcpServer2.Close()
|
|
defer tcpServer2.Close()
|
|
|
|
|
|
|
|
serverPort := tcp.PickPort()
|
|
serverPort := tcp.PickPort()
|
|
@@ -471,19 +471,19 @@ func TestBlackhole(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
|
conn, err := net.DialTCP("tcp", nil, &net.TCPAddr{
|
|
|
IP: []byte{127, 0, 0, 1},
|
|
IP: []byte{127, 0, 0, 1},
|
|
|
Port: int(serverPort2),
|
|
Port: int(serverPort2),
|
|
|
})
|
|
})
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
payload := "dokodemo request."
|
|
payload := "dokodemo request."
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -505,7 +505,7 @@ func TestForward(t *testing.T) {
|
|
|
MsgProcessor: xor,
|
|
MsgProcessor: xor,
|
|
|
}
|
|
}
|
|
|
dest, err := tcpServer.Start()
|
|
dest, err := tcpServer.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer tcpServer.Close()
|
|
defer tcpServer.Close()
|
|
|
|
|
|
|
|
serverPort := tcp.PickPort()
|
|
serverPort := tcp.PickPort()
|
|
@@ -541,22 +541,22 @@ func TestForward(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
{
|
|
{
|
|
|
noAuthDialer, err := xproxy.SOCKS5("tcp", net.TCPDestination(net.LocalHostIP, serverPort).NetAddr(), nil, xproxy.Direct)
|
|
noAuthDialer, err := xproxy.SOCKS5("tcp", net.TCPDestination(net.LocalHostIP, serverPort).NetAddr(), nil, xproxy.Direct)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
conn, err := noAuthDialer.Dial("tcp", "google.com:80")
|
|
conn, err := noAuthDialer.Dial("tcp", "google.com:80")
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
payload := "test payload"
|
|
payload := "test payload"
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
|
|
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err = conn.Read(response)
|
|
nBytes, err = conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
|
assert(conn.Close(), IsNil)
|
|
assert(conn.Close(), IsNil)
|
|
|
}
|
|
}
|
|
@@ -571,7 +571,7 @@ func TestUDPConnection(t *testing.T) {
|
|
|
MsgProcessor: xor,
|
|
MsgProcessor: xor,
|
|
|
}
|
|
}
|
|
|
dest, err := udpServer.Start()
|
|
dest, err := udpServer.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer udpServer.Close()
|
|
defer udpServer.Close()
|
|
|
|
|
|
|
|
clientPort := tcp.PickPort()
|
|
clientPort := tcp.PickPort()
|
|
@@ -599,24 +599,24 @@ func TestUDPConnection(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(clientConfig)
|
|
servers, err := InitializeServerConfigs(clientConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
{
|
|
{
|
|
|
conn, err := net.DialUDP("udp", nil, &net.UDPAddr{
|
|
conn, err := net.DialUDP("udp", nil, &net.UDPAddr{
|
|
|
IP: []byte{127, 0, 0, 1},
|
|
IP: []byte{127, 0, 0, 1},
|
|
|
Port: int(clientPort),
|
|
Port: int(clientPort),
|
|
|
})
|
|
})
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
payload := "dokodemo request."
|
|
payload := "dokodemo request."
|
|
|
for i := 0; i < 5; i++ {
|
|
for i := 0; i < 5; i++ {
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
|
|
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err = conn.Read(response)
|
|
nBytes, err = conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -630,16 +630,16 @@ func TestUDPConnection(t *testing.T) {
|
|
|
IP: []byte{127, 0, 0, 1},
|
|
IP: []byte{127, 0, 0, 1},
|
|
|
Port: int(clientPort),
|
|
Port: int(clientPort),
|
|
|
})
|
|
})
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
payload := "dokodemo request."
|
|
payload := "dokodemo request."
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
|
|
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err = conn.Read(response)
|
|
nBytes, err = conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
|
assert(conn.Close(), IsNil)
|
|
assert(conn.Close(), IsNil)
|
|
|
}
|
|
}
|
|
@@ -721,7 +721,7 @@ func TestDomainSniffing(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
{
|
|
{
|
|
|
transport := &http.Transport{
|
|
transport := &http.Transport{
|
|
@@ -735,7 +735,7 @@ func TestDomainSniffing(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
resp, err := client.Get("https://www.github.com/")
|
|
resp, err := client.Get("https://www.github.com/")
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(resp.StatusCode, Equals, 200)
|
|
assert(resp.StatusCode, Equals, 200)
|
|
|
|
|
|
|
|
assert(resp.Write(ioutil.Discard), IsNil)
|
|
assert(resp.Write(ioutil.Discard), IsNil)
|
|
@@ -751,7 +751,7 @@ func TestDialV2Ray(t *testing.T) {
|
|
|
MsgProcessor: xor,
|
|
MsgProcessor: xor,
|
|
|
}
|
|
}
|
|
|
dest, err := tcpServer.Start()
|
|
dest, err := tcpServer.Start()
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
defer tcpServer.Close()
|
|
defer tcpServer.Close()
|
|
|
|
|
|
|
|
userID := protocol.NewID(uuid.New())
|
|
userID := protocol.NewID(uuid.New())
|
|
@@ -821,22 +821,22 @@ func TestDialV2Ray(t *testing.T) {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
servers, err := InitializeServerConfigs(serverConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
client, err := core.New(clientConfig)
|
|
client, err := core.New(clientConfig)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
conn, err := core.Dial(context.Background(), client, dest)
|
|
conn, err := core.Dial(context.Background(), client, dest)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
|
|
|
|
|
payload := "commander request."
|
|
payload := "commander request."
|
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
nBytes, err := conn.Write([]byte(payload))
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(nBytes, Equals, len(payload))
|
|
assert(nBytes, Equals, len(payload))
|
|
|
|
|
|
|
|
response := make([]byte, 1024)
|
|
response := make([]byte, 1024)
|
|
|
nBytes, err = conn.Read(response)
|
|
nBytes, err = conn.Read(response)
|
|
|
- assert(err, IsNil)
|
|
|
|
|
|
|
+ common.Must(err)
|
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
assert(response[:nBytes], Equals, xor([]byte(payload)))
|
|
|
assert(conn.Close(), IsNil)
|
|
assert(conn.Close(), IsNil)
|
|
|
|
|
|