From 536958b4c05162dc3b03d30b58ccbfa3c34b1bc7 Mon Sep 17 00:00:00 2001 From: koggle Date: Sun, 7 Oct 2018 01:55:39 +0800 Subject: [PATCH 1/2] Update local.go fix less data --- cmd/shadowsocks-local/local.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/cmd/shadowsocks-local/local.go b/cmd/shadowsocks-local/local.go index 604bf9f7..9182c17f 100644 --- a/cmd/shadowsocks-local/local.go +++ b/cmd/shadowsocks-local/local.go @@ -310,7 +310,18 @@ func handleConnection(conn net.Conn) { return } + buf := make([]byte, 4096) + copy(buf, rawaddr) + ss.SetReadTimeout(conn) + if n, err = conn.Read(buf[len(rawaddr):cap(buf)]); err != nil { + return + } + rawaddr = buf[: n+len(rawaddr)] remote, err := createServerConn(rawaddr, addr) + buf = nil + rawaddr = nil + addr = "" + if err != nil { if len(servers.srvCipher) > 1 { log.Println("Failed connect to all available shadowsocks server") From 8f7d90ca649821256a845efa6f38b6ddbc8d087c Mon Sep 17 00:00:00 2001 From: koggle Date: Sun, 7 Oct 2018 02:18:28 +0800 Subject: [PATCH 2/2] Update local.go --- cmd/shadowsocks-local/local.go | 1 - 1 file changed, 1 deletion(-) diff --git a/cmd/shadowsocks-local/local.go b/cmd/shadowsocks-local/local.go index 9182c17f..747113f8 100644 --- a/cmd/shadowsocks-local/local.go +++ b/cmd/shadowsocks-local/local.go @@ -320,7 +320,6 @@ func handleConnection(conn net.Conn) { remote, err := createServerConn(rawaddr, addr) buf = nil rawaddr = nil - addr = "" if err != nil { if len(servers.srvCipher) > 1 {