tailscale_stub.go 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. //go:build !with_tailscale
  2. package include
  3. import (
  4. "context"
  5. "github.com/sagernet/sing-box/adapter"
  6. "github.com/sagernet/sing-box/adapter/certificate"
  7. "github.com/sagernet/sing-box/adapter/endpoint"
  8. "github.com/sagernet/sing-box/adapter/service"
  9. C "github.com/sagernet/sing-box/constant"
  10. "github.com/sagernet/sing-box/dns"
  11. "github.com/sagernet/sing-box/log"
  12. "github.com/sagernet/sing-box/option"
  13. E "github.com/sagernet/sing/common/exceptions"
  14. )
  15. func registerTailscaleEndpoint(registry *endpoint.Registry) {
  16. endpoint.Register[option.TailscaleEndpointOptions](registry, C.TypeTailscale, func(ctx context.Context, router adapter.Router, logger log.ContextLogger, tag string, options option.TailscaleEndpointOptions) (adapter.Endpoint, error) {
  17. return nil, E.New(`Tailscale is not included in this build, rebuild with -tags with_tailscale`)
  18. })
  19. }
  20. func registerTailscaleTransport(registry *dns.TransportRegistry) {
  21. dns.RegisterTransport[option.TailscaleDNSServerOptions](registry, C.DNSTypeTailscale, func(ctx context.Context, logger log.ContextLogger, tag string, options option.TailscaleDNSServerOptions) (adapter.DNSTransport, error) {
  22. return nil, E.New(`Tailscale is not included in this build, rebuild with -tags with_tailscale`)
  23. })
  24. }
  25. func registerTailscaleCertificateProvider(registry *certificate.Registry) {
  26. certificate.Register[option.TailscaleCertificateProviderOptions](registry, C.TypeTailscale, func(ctx context.Context, logger log.ContextLogger, tag string, options option.TailscaleCertificateProviderOptions) (adapter.CertificateProviderService, error) {
  27. return nil, E.New(`Tailscale is not included in this build, rebuild with -tags with_tailscale`)
  28. })
  29. }
  30. func registerDERPService(registry *service.Registry) {
  31. service.Register[option.DERPServiceOptions](registry, C.TypeDERP, func(ctx context.Context, logger log.ContextLogger, tag string, options option.DERPServiceOptions) (adapter.Service, error) {
  32. return nil, E.New(`DERP is not included in this build, rebuild with -tags with_tailscale`)
  33. })
  34. }