From e185d734d03d1c8bd9817f6bdfb353443ee5de70 Mon Sep 17 00:00:00 2001 From: "arraykeys@gmail.com" Date: Thu, 31 May 2018 16:26:40 +0800 Subject: [PATCH] =?UTF-8?q?mux=E5=86=85=E7=BD=91=E7=A9=BF=E9=80=8F?= =?UTF-8?q?=E5=88=87=E6=8D=A2smux=E5=88=B0yamux?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: arraykeys@gmail.com --- CHANGELOG | 2 ++ services/mux_bridge.go | 7 ++++--- services/mux_client.go | 3 ++- services/mux_server.go | 3 ++- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index f63bb0c..9f7f636 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,8 @@ proxy更新日志 v4.9 1.修复了HTTP Basic代理返回不合适的头部,导致浏览器不会弹框,个别代理插件无法认证的问题. +2.mux内网穿透切换smux到yamux. + v4.8 1.优化了SPS连接HTTP上级的指令,避免了某些代理不响应的问题. diff --git a/services/mux_bridge.go b/services/mux_bridge.go index ad8921c..4140f50 100644 --- a/services/mux_bridge.go +++ b/services/mux_bridge.go @@ -14,7 +14,8 @@ import ( "github.com/snail007/goproxy/utils" - "github.com/xtaci/smux" + //"github.com/xtaci/smux" + smux "github.com/hashicorp/yamux" ) type MuxBridge struct { @@ -250,9 +251,9 @@ func (s *MuxBridge) callback(inConn net.Conn, serverID, key string) { index := keys[i] s.log.Printf("select client : %s-%s", key, index) session, _ := group.Get(index) - session.(*smux.Session).SetDeadline(time.Now().Add(time.Millisecond * time.Duration(*s.cfg.Timeout))) + //session.(*smux.Session).SetDeadline(time.Now().Add(time.Millisecond * time.Duration(*s.cfg.Timeout))) stream, err := session.(*smux.Session).OpenStream() - session.(*smux.Session).SetDeadline(time.Time{}) + //session.(*smux.Session).SetDeadline(time.Time{}) if err != nil { s.log.Printf("%s client session open stream %s fail, err: %s, retrying...", key, serverID, err) time.Sleep(time.Second * 3) diff --git a/services/mux_client.go b/services/mux_client.go index 9b3efcb..6148c64 100644 --- a/services/mux_client.go +++ b/services/mux_client.go @@ -11,7 +11,8 @@ import ( "github.com/snail007/goproxy/utils" "github.com/golang/snappy" - "github.com/xtaci/smux" + //"github.com/xtaci/smux" + smux "github.com/hashicorp/yamux" ) type MuxClient struct { diff --git a/services/mux_server.go b/services/mux_server.go index 776429c..c3e5acf 100644 --- a/services/mux_server.go +++ b/services/mux_server.go @@ -15,7 +15,8 @@ import ( "github.com/snail007/goproxy/utils" "github.com/golang/snappy" - "github.com/xtaci/smux" + //"github.com/xtaci/smux" + smux "github.com/hashicorp/yamux" ) type MuxServer struct {