Browse Source

Fix http outbound

Get correct TLS negotiated protocol when stats setting exists
Darhwa 5 years ago
parent
commit
cae278dd00
1 changed files with 6 additions and 1 deletions
  1. 6 1
      proxy/http/client.go

+ 6 - 1
proxy/http/client.go

@@ -197,8 +197,13 @@ func setUpHTTPTunnel(ctx context.Context, dest net.Destination, target string, u
 		return nil, err
 	}
 
+	iConn := rawConn
+	if statConn, ok := iConn.(*internet.StatCouterConnection); ok {
+		iConn = statConn.Connection
+	}
+
 	nextProto := ""
-	if tlsConn, ok := rawConn.(*tls.Conn); ok {
+	if tlsConn, ok := iConn.(*tls.Conn); ok {
 		if err := tlsConn.Handshake(); err != nil {
 			rawConn.Close()
 			return nil, err