handler.go 425 B

12345678910111213141516171819202122232425262728293031
  1. package tun
  2. import (
  3. "github.com/v2fly/v2ray-core/v5/common/net"
  4. "gvisor.dev/gvisor/pkg/tcpip/stack"
  5. )
  6. var (
  7. tcpQueue = make(chan TCPConn)
  8. udpQueue = make(chan UDPConn)
  9. )
  10. type TCPConn interface {
  11. net.Conn
  12. ID() *stack.TransportEndpointID
  13. }
  14. type UDPConn interface {
  15. net.Conn
  16. ID() *stack.TransportEndpointID
  17. }
  18. func handleTCP(conn TCPConn) {
  19. tcpQueue <- conn
  20. }
  21. func handleUDP(conn UDPConn) {
  22. udpQueue <- conn
  23. }