From bc822985ab30ab3f6e82e8470b5558b8ae024dba Mon Sep 17 00:00:00 2001 From: Darien Raymond Date: Mon, 21 Nov 2016 23:06:26 +0100 Subject: [PATCH] shadowsocks log --- proxy/shadowsocks/client.go | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/proxy/shadowsocks/client.go b/proxy/shadowsocks/client.go index 928686b8..c16e4110 100644 --- a/proxy/shadowsocks/client.go +++ b/proxy/shadowsocks/client.go @@ -2,7 +2,7 @@ package shadowsocks import ( "errors" - + "io" "sync" "v2ray.com/core/app" "v2ray.com/core/common/alloc" @@ -113,11 +113,19 @@ func (this *Client) Dispatch(destination v2net.Destination, payload *alloc.Buffe return } - v2io.Pipe(responseReader, ray.OutboundOutput()) + if err := v2io.Pipe(responseReader, ray.OutboundOutput()); err != nil { + if err != io.EOF { + log.Info("Shadowsocks|Client: Failed to transport all TCP response: ", err) + } + } }() bufferedWriter.SetCached(false) - v2io.Pipe(ray.OutboundInput(), bodyWriter) + if err := v2io.Pipe(ray.OutboundInput(), bodyWriter); err != nil { + if err != io.EOF { + log.Info("Shadowsocks|Client: Failed to trasnport all TCP request: ", err) + } + } responseMutex.Lock() } @@ -135,7 +143,11 @@ func (this *Client) Dispatch(destination v2net.Destination, payload *alloc.Buffe User: user, } - v2io.Pipe(reader, ray.OutboundOutput()) + if err := v2io.Pipe(reader, ray.OutboundOutput()); err != nil { + if err != io.EOF { + log.Info("Shadowsocks|Client: Failed to transport all UDP response: ", err) + } + } }() writer := &UDPWriter{ @@ -147,7 +159,11 @@ func (this *Client) Dispatch(destination v2net.Destination, payload *alloc.Buffe return errors.New("Shadowsocks|Client: Failed to write payload: " + err.Error()) } } - v2io.Pipe(ray.OutboundInput(), writer) + if err := v2io.Pipe(ray.OutboundInput(), writer); err != nil { + if err != io.EOF { + log.Info("Shadowsocks|Client: Failed to transport all UDP request: ", err) + } + } responseMutex.Lock() }