mirror of
https://github.com/XTLS/Xray-core.git
synced 2024-11-25 10:01:28 +00:00
Fix Shadowsocks tests; AEAD drop small UDP packets
https://t.me/projectXray/172063
This commit is contained in:
parent
33755d6e90
commit
8ff43519fd
|
@ -268,6 +268,9 @@ func DecodeUDPPacket(users []*protocol.MemoryUser, payload *buf.Buffer) (*protoc
|
||||||
|
|
||||||
if len(users) > 1 {
|
if len(users) > 1 {
|
||||||
bs := payload.Bytes()
|
bs := payload.Bytes()
|
||||||
|
if len(bs) <= 32 {
|
||||||
|
return nil, nil, newError("len(bs) <= 32")
|
||||||
|
}
|
||||||
|
|
||||||
var aeadCipher *AEADCipher
|
var aeadCipher *AEADCipher
|
||||||
var ivLen int32
|
var ivLen int32
|
||||||
|
|
|
@ -28,7 +28,7 @@ func TestUDPEncoding(t *testing.T) {
|
||||||
Email: "love@example.com",
|
Email: "love@example.com",
|
||||||
Account: toAccount(&Account{
|
Account: toAccount(&Account{
|
||||||
Password: "shadowsocks-password",
|
Password: "shadowsocks-password",
|
||||||
CipherType: CipherType_AES_128_CFB,
|
CipherType: CipherType_AES_128_GCM,
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -65,7 +65,7 @@ func TestTCPRequest(t *testing.T) {
|
||||||
Email: "love@example.com",
|
Email: "love@example.com",
|
||||||
Account: toAccount(&Account{
|
Account: toAccount(&Account{
|
||||||
Password: "tcp-password",
|
Password: "tcp-password",
|
||||||
CipherType: CipherType_CHACHA20,
|
CipherType: CipherType_CHACHA20_POLY1305,
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -81,7 +81,7 @@ func TestTCPRequest(t *testing.T) {
|
||||||
Email: "love@example.com",
|
Email: "love@example.com",
|
||||||
Account: toAccount(&Account{
|
Account: toAccount(&Account{
|
||||||
Password: "password",
|
Password: "password",
|
||||||
CipherType: CipherType_AES_256_CFB,
|
CipherType: CipherType_AES_256_GCM,
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -97,7 +97,7 @@ func TestTCPRequest(t *testing.T) {
|
||||||
Email: "love@example.com",
|
Email: "love@example.com",
|
||||||
Account: toAccount(&Account{
|
Account: toAccount(&Account{
|
||||||
Password: "password",
|
Password: "password",
|
||||||
CipherType: CipherType_CHACHA20_IETF,
|
CipherType: CipherType_AES_128_GCM,
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -139,7 +139,7 @@ func TestUDPReaderWriter(t *testing.T) {
|
||||||
user := &protocol.MemoryUser{
|
user := &protocol.MemoryUser{
|
||||||
Account: toAccount(&Account{
|
Account: toAccount(&Account{
|
||||||
Password: "test-password",
|
Password: "test-password",
|
||||||
CipherType: CipherType_CHACHA20_IETF,
|
CipherType: CipherType_CHACHA20_POLY1305,
|
||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
cache := buf.New()
|
cache := buf.New()
|
||||||
|
|
|
@ -52,10 +52,10 @@ func TestShadowsocksAES256TCP(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_TCP},
|
Network: []net.Network{net.Network_TCP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -150,10 +150,10 @@ func TestShadowsocksAES128UDP(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_UDP},
|
Network: []net.Network{net.Network_UDP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -276,10 +276,10 @@ func TestShadowsocksChacha20TCP(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_TCP},
|
Network: []net.Network{net.Network_TCP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -369,10 +369,10 @@ func TestShadowsocksChacha20Poly1305TCP(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_TCP},
|
Network: []net.Network{net.Network_TCP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -461,10 +461,10 @@ func TestShadowsocksAES256GCMTCP(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_TCP},
|
Network: []net.Network{net.Network_TCP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -560,10 +560,10 @@ func TestShadowsocksAES128GCMUDP(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_UDP},
|
Network: []net.Network{net.Network_UDP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -658,10 +658,10 @@ func TestShadowsocksAES128GCMUDPMux(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_TCP},
|
Network: []net.Network{net.Network_TCP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
@ -757,10 +757,10 @@ func TestShadowsocksNone(t *testing.T) {
|
||||||
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
Listen: net.NewIPOrDomain(net.LocalHostIP),
|
||||||
}),
|
}),
|
||||||
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
ProxySettings: serial.ToTypedMessage(&shadowsocks.ServerConfig{
|
||||||
User: &protocol.User{
|
Users: []*protocol.User{{
|
||||||
Account: account,
|
Account: account,
|
||||||
Level: 1,
|
Level: 1,
|
||||||
},
|
}},
|
||||||
Network: []net.Network{net.Network_TCP},
|
Network: []net.Network{net.Network_TCP},
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue