fix socks4

This commit is contained in:
rui.zheng 2017-09-04 11:47:58 +08:00
parent 4b6ba653ac
commit b139c3bdac
3 changed files with 7 additions and 4 deletions

View File

@ -261,6 +261,9 @@ func (c *socks4Connector) Connect(conn net.Conn, addr string) (net.Conn, error)
if err != nil {
return nil, err
}
if len(taddr.IP) == 0 {
taddr.IP = net.IPv4(0, 0, 0, 0)
}
req := gosocks4.NewRequest(gosocks4.CmdConnect,
&gosocks4.Addr{

View File

@ -56,7 +56,7 @@ func (addr *Addr) Decode(b []byte) error {
addr.Port = binary.BigEndian.Uint16(b[0:2])
addr.Host = net.IP(b[2 : 2+net.IPv4len]).String()
if b[2]|b[3]|b[4] == 0 {
if b[2]|b[3]|b[4] == 0 && b[5] != 0 {
addr.Type = AddrDomain
}

6
vendor/vendor.json vendored
View File

@ -81,10 +81,10 @@
"revisionTime": "2016-08-31T15:17:26Z"
},
{
"checksumSHA1": "aIhLeVAIrsjs63CwqmU3+GU8yT4=",
"checksumSHA1": "AqX1ZPaQtMCpfiTiA2zGmWadYl0=",
"path": "github.com/ginuerzh/gosocks4",
"revision": "fc196f9d34e35f19a813bff2f092a275131c23bc",
"revisionTime": "2017-02-09T14:09:51Z"
"revision": "c3a6700bad67bd29718fd19212b3dd934aea89b3",
"revisionTime": "2017-09-04T03:46:09Z"
},
{
"checksumSHA1": "4JEexBJToQeQm7fAo2PHVdCU3zM=",