dialer.go 628 B

12345678910111213141516171819202122232425
  1. package udp
  2. import (
  3. "context"
  4. "v2ray.com/core/common"
  5. "v2ray.com/core/common/net"
  6. "v2ray.com/core/transport/internet"
  7. )
  8. func init() {
  9. common.Must(internet.RegisterTransportDialer(protocolName,
  10. func(ctx context.Context, dest net.Destination, streamSettings *internet.MemoryStreamConfig) (internet.Connection, error) {
  11. var sockopt *internet.SocketConfig
  12. if streamSettings != nil {
  13. sockopt = streamSettings.SocketSettings
  14. }
  15. conn, err := internet.DialSystem(ctx, dest, sockopt)
  16. if err != nil {
  17. return nil, err
  18. }
  19. // TODO: handle dialer options
  20. return internet.Connection(conn), nil
  21. }))
  22. }