Refactor UDP port forwarding and document usage

This commit is contained in:
Vasyl Gello 2024-07-19 07:08:28 +03:00
parent 0783b429fd
commit f529064aa0
4 changed files with 52 additions and 43 deletions

View file

@ -4,7 +4,7 @@ import (
"net"
)
func ReverseProxyUDPConn(mtu uint64, dst net.PacketConn, dstAddr net.Addr, src net.UDPConn) error {
func ReverseProxyUDP(mtu uint64, dst net.PacketConn, dstAddr net.Addr, src net.Conn) error {
buf := make([]byte, mtu)
for {
n, err := src.Read(buf[:])
@ -20,20 +20,3 @@ func ReverseProxyUDPConn(mtu uint64, dst net.PacketConn, dstAddr net.Addr, src n
}
return nil
}
func ReverseProxyUDPPacketConn(mtu uint64, dst net.PacketConn, dstAddr net.Addr, src net.PacketConn) error {
buf := make([]byte, mtu)
for {
n, _, err := src.ReadFrom(buf[:])
if err != nil {
return err
}
if n > 0 {
n, err = dst.WriteTo(buf[:n], dstAddr)
if err != nil {
return err
}
}
}
return nil
}