mirror of
https://gitee.com/konyshe/goodlink.git
synced 2025-12-24 08:13:00 +08:00
u
This commit is contained in:
@@ -11,9 +11,10 @@ import (
|
||||
func stunT2QProcess1(tc net.Conn, qc quic.Stream, stun_quic_conn quic.Connection) {
|
||||
for {
|
||||
if n, err := io.Copy(tc, qc); n == 0 || err != nil {
|
||||
log.Printf(" stunT2QProcess1 tcp close: %v ==> %v\n", tc.RemoteAddr(), tc.LocalAddr())
|
||||
log.Printf("udp.conn: %v, quic.conn: %v, quic.stream: %v, err: %v\n", tc.RemoteAddr(), stun_quic_conn.RemoteAddr(), qc.StreamID(), err)
|
||||
//log.Printf(" stunT2QProcess1 tcp close: %v ==> %v\n", tc.RemoteAddr(), tc.LocalAddr())
|
||||
tc.Close()
|
||||
log.Printf(" stunT2QProcess1 quic stream close: %v, %v ==> %v\n", qc.StreamID(), stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
//log.Printf(" stunT2QProcess1 quic stream close: %v, %v ==> %v\n", qc.StreamID(), stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
qc.Close()
|
||||
break
|
||||
}
|
||||
@@ -23,9 +24,10 @@ func stunT2QProcess1(tc net.Conn, qc quic.Stream, stun_quic_conn quic.Connection
|
||||
func stunQ2TProcess1(qc quic.Stream, tc net.Conn, stun_quic_conn quic.Connection) {
|
||||
for {
|
||||
if n, err := io.Copy(qc, tc); n == 0 || err != nil {
|
||||
log.Printf(" stunQ2TProcess1 tcp close: %v ==> %v\n", tc.RemoteAddr(), tc.LocalAddr())
|
||||
log.Printf("udp.conn: %v, quic.conn: %v, quic.stream: %v, err: %v\n", tc.RemoteAddr(), stun_quic_conn.RemoteAddr(), qc.StreamID(), err)
|
||||
//log.Printf(" stunQ2TProcess1 tcp close: %v ==> %v\n", tc.RemoteAddr(), tc.LocalAddr())
|
||||
tc.Close()
|
||||
log.Printf(" stunQ2TProcess1 quic stream close: %v, %v ==> %v\n", qc.StreamID(), stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
//log.Printf(" stunQ2TProcess1 quic stream close: %v, %v ==> %v\n", qc.StreamID(), stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
qc.Close()
|
||||
break
|
||||
}
|
||||
|
||||
@@ -14,15 +14,19 @@ func ProcessProxyClient(listener net.Listener, stun_quic_conn quic.Connection) {
|
||||
for {
|
||||
new_tcp_conn, err := listener.Accept()
|
||||
if err == nil {
|
||||
log.Printf(" ProcessProxyClient listener.Accept: %v ==> %v\n", new_tcp_conn.RemoteAddr(), new_tcp_conn.LocalAddr())
|
||||
//log.Printf(" ProcessProxyClient listener.Accept: %v ==> %v\n", new_tcp_conn.RemoteAddr(), new_tcp_conn.LocalAddr())
|
||||
new_quic_stream, err := stun_quic_conn.OpenStreamSync(context.Background())
|
||||
if err == nil {
|
||||
log.Printf(" ProcessProxyClient stun_quic_conn.OpenStreamSync: %v ==> %v\n", stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
//log.Printf(" ProcessProxyClient stun_quic_conn.OpenStreamSync: %v ==> %v\n", stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
go stunT2QProcess1(new_tcp_conn, new_quic_stream, stun_quic_conn)
|
||||
go stunQ2TProcess1(new_quic_stream, new_tcp_conn, stun_quic_conn)
|
||||
continue
|
||||
} else {
|
||||
log.Printf(" ProcessProxyClient stun_quic_conn.OpenStreamSync: %v\n", err)
|
||||
}
|
||||
break
|
||||
} else {
|
||||
log.Printf(" ProcessProxyClient listener.Accept: %v\n", err)
|
||||
}
|
||||
break
|
||||
}
|
||||
|
||||
@@ -19,14 +19,18 @@ func ProcessProxyServer(addr string, stun_quic_conn quic.Connection) {
|
||||
for {
|
||||
new_quic_stream, err := stun_quic_conn.AcceptStream(context.Background())
|
||||
if err == nil {
|
||||
log.Printf(" ProcessProxyServer new_quic_conn.AcceptStream: %v ==> %v\n", stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
//log.Printf(" ProcessProxyServer new_quic_conn.AcceptStream: %v ==> %v\n", stun_quic_conn.RemoteAddr(), stun_quic_conn.LocalAddr())
|
||||
new_tcp_conn, err := net.Dial("tcp", addr)
|
||||
if err == nil {
|
||||
go stunT2QProcess1(new_tcp_conn, new_quic_stream, stun_quic_conn)
|
||||
go stunQ2TProcess1(new_quic_stream, new_tcp_conn, stun_quic_conn)
|
||||
continue
|
||||
} else {
|
||||
log.Printf(" ProcessProxyServer net.Dial: %v\n", err)
|
||||
}
|
||||
break
|
||||
} else {
|
||||
log.Printf(" ProcessProxyServer stun_quic_conn.AcceptStream: %v\n", err)
|
||||
}
|
||||
break
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user