MCPcopy Create free account
hub / github.com/bepass-org/proxy / defaultReplyPacketForwardAddress

Function defaultReplyPacketForwardAddress

pkg/socks5/server.go:442–455  ·  view source on GitHub ↗
(_ context.Context, destinationAddr string, packet net.PacketConn, conn net.Conn)

Source from the content-addressed store, hash-verified

440}
441
442func defaultReplyPacketForwardAddress(_ context.Context, destinationAddr string, packet net.PacketConn, conn net.Conn) (net.IP, int, error) {
443 udpLocal := packet.LocalAddr()
444 udpLocalAddr, ok := udpLocal.(*net.UDPAddr)
445 if !ok {
446 return nil, 0, fmt.Errorf("connect to %v failed: local address is %s://%s", destinationAddr, udpLocal.Network(), udpLocal.String())
447 }
448
449 tcpLocal := conn.LocalAddr()
450 tcpLocalAddr, ok := tcpLocal.(*net.TCPAddr)
451 if !ok {
452 return nil, 0, fmt.Errorf("connect to %v failed: local address is %s://%s", destinationAddr, tcpLocal.Network(), tcpLocal.String())
453 }
454 return tcpLocalAddr.IP, udpLocalAddr.Port, nil
455}

Callers

nothing calls this directly

Calls 2

NetworkMethod · 0.45
StringMethod · 0.45

Tested by

no test coverage detected