Refactor: refactor find process (#2781)

This commit is contained in:
Kr328
2023-06-13 23:25:32 +08:00
committed by GitHub
parent 289025c6ee
commit 13d9e960f7
21 changed files with 656 additions and 474 deletions

View File

@ -12,7 +12,7 @@ import (
"github.com/Dreamacro/clash/transport/socks5"
)
func newClient(source net.Addr, in chan<- C.ConnContext) *http.Client {
func newClient(source net.Addr, originTarget net.Addr, in chan<- C.ConnContext) *http.Client {
return &http.Client{
Transport: &http.Transport{
// from http.DefaultTransport
@ -32,7 +32,7 @@ func newClient(source net.Addr, in chan<- C.ConnContext) *http.Client {
left, right := net.Pipe()
in <- inbound.NewHTTP(dstAddr, source, right)
in <- inbound.NewHTTP(dstAddr, source, originTarget, right)
return left, nil
},

View File

@ -15,7 +15,7 @@ import (
)
func HandleConn(c net.Conn, in chan<- C.ConnContext, cache *cache.LruCache) {
client := newClient(c.RemoteAddr(), in)
client := newClient(c.RemoteAddr(), c.LocalAddr(), in)
defer client.CloseIdleConnections()
conn := N.NewBufferedConn(c)

View File

@ -41,7 +41,7 @@ func handleUpgrade(conn net.Conn, request *http.Request, in chan<- C.ConnContext
left, right := net.Pipe()
in <- inbound.NewHTTP(dstAddr, conn.RemoteAddr(), right)
in <- inbound.NewHTTP(dstAddr, conn.RemoteAddr(), conn.LocalAddr(), right)
bufferedLeft := N.NewBufferedConn(left)
defer bufferedLeft.Close()