mirror of
https://github.com/v2fly/v2ray-core.git
synced 2025-01-17 23:06:30 -05:00
test cases for socks4
This commit is contained in:
parent
d77ba76ccf
commit
3747e45978
@ -1,10 +1,7 @@
|
|||||||
package protocol
|
package protocol
|
||||||
|
|
||||||
import (
|
import (
|
||||||
_ "fmt"
|
|
||||||
|
|
||||||
"github.com/v2ray/v2ray-core/common/errors"
|
"github.com/v2ray/v2ray-core/common/errors"
|
||||||
_ "github.com/v2ray/v2ray-core/common/log"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type SocksVersion4Error struct {
|
type SocksVersion4Error struct {
|
||||||
|
37
proxy/socks/protocol/socks4_test.go
Normal file
37
proxy/socks/protocol/socks4_test.go
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
package protocol
|
||||||
|
|
||||||
|
import (
|
||||||
|
"bytes"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/v2ray/v2ray-core/testing/unit"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestSocks4AuthenticationRequestRead(t *testing.T) {
|
||||||
|
assert := unit.Assert(t)
|
||||||
|
|
||||||
|
rawRequest := []byte{
|
||||||
|
0x04, // version
|
||||||
|
0x01, // command
|
||||||
|
0x00, 0x35,
|
||||||
|
0x72, 0x72, 0x72, 0x72,
|
||||||
|
}
|
||||||
|
_, request4, err := ReadAuthentication(bytes.NewReader(rawRequest))
|
||||||
|
assert.Error(err).HasCode(1000)
|
||||||
|
assert.Byte(request4.Version).Named("Version").Equals(0x04)
|
||||||
|
assert.Byte(request4.Command).Named("Command").Equals(0x01)
|
||||||
|
assert.Uint16(request4.Port).Named("Port").Equals(53)
|
||||||
|
assert.Bytes(request4.IP[:]).Named("IP").Equals([]byte{0x72, 0x72, 0x72, 0x72})
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestSocks4AuthenticationResponseToBytes(t *testing.T) {
|
||||||
|
assert := unit.Assert(t)
|
||||||
|
|
||||||
|
response := &Socks4AuthenticationResponse{
|
||||||
|
result: byte(0x10),
|
||||||
|
port: 443,
|
||||||
|
ip: []byte{1, 2, 3, 4},
|
||||||
|
}
|
||||||
|
responseBytes := response.ToBytes(nil)
|
||||||
|
assert.Bytes(responseBytes).Equals([]byte{0x00, 0x10, 0x01, 0xBB, 0x01, 0x02, 0x03, 0x04})
|
||||||
|
}
|
@ -37,23 +37,6 @@ func TestAuthenticationRequestRead(t *testing.T) {
|
|||||||
assert.Byte(request.authMethods[0]).Named("Auth Method").Equals(0x02)
|
assert.Byte(request.authMethods[0]).Named("Auth Method").Equals(0x02)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestAuthentication4RequestRead(t *testing.T) {
|
|
||||||
assert := unit.Assert(t)
|
|
||||||
|
|
||||||
rawRequest := []byte{
|
|
||||||
0x04, // version
|
|
||||||
0x01, // command
|
|
||||||
0x00, 0x35,
|
|
||||||
0x72, 0x72, 0x72, 0x72,
|
|
||||||
}
|
|
||||||
_, request4, err := ReadAuthentication(bytes.NewReader(rawRequest))
|
|
||||||
assert.Error(err).HasCode(1000)
|
|
||||||
assert.Byte(request4.Version).Named("Version").Equals(0x04)
|
|
||||||
assert.Byte(request4.Command).Named("Command").Equals(0x01)
|
|
||||||
assert.Uint16(request4.Port).Named("Port").Equals(53)
|
|
||||||
assert.Bytes(request4.IP[:]).Named("IP").Equals([]byte{0x72, 0x72, 0x72, 0x72})
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestAuthenticationResponseWrite(t *testing.T) {
|
func TestAuthenticationResponseWrite(t *testing.T) {
|
||||||
assert := unit.Assert(t)
|
assert := unit.Assert(t)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user