无多路复用版本

This commit is contained in:
wenyifan
2022-09-05 14:21:33 +08:00
parent 1c49851d13
commit c4c6f1c4ff
5 changed files with 86 additions and 16 deletions

View File

@ -59,6 +59,40 @@ func handlerClient(conn net.Conn, serverAddress string, fakeAddressSNI string) {
dial.NetConn().SetDeadline(time.Now())
dial.NetConn().SetDeadline(time.Time{})
go io.Copy(conn, dial.NetConn())
go io.Copy(dial.NetConn(), conn)
p := &PackAppData{Conn: dial.NetConn()}
go io.Copy(conn, p)
go io.Copy(p, conn)
}
func MyCopy(src io.ReadWriteCloser, dst io.ReadWriteCloser) {
buf := make([]byte, 32*1024)
for {
nr, er := src.Read(buf)
if nr > 0 {
nw, ew := dst.Write(buf[0:nr])
if nw < 0 || nr < nw {
nw = 0
if ew == nil {
fmt.Printf("err1:\n")
}
}
if ew != nil {
fmt.Printf("err2:%v\n", ew)
break
}
if nr != nw {
fmt.Printf("nr != nw \n")
break
}
}
if er != nil {
if er != io.EOF {
fmt.Printf("err3:%v\n", er)
} else {
fmt.Println("EOF")
}
break
}
}
}