tun_default.go 800 B

12345678910111213141516171819202122232425262728293031323334
  1. //go:build !linux && !windows && !android
  2. package tun
  3. import (
  4. "github.com/xtls/xray-core/common/errors"
  5. "gvisor.dev/gvisor/pkg/tcpip/stack"
  6. )
  7. type DefaultTun struct {
  8. }
  9. // DefaultTun implements Tun
  10. var _ Tun = (*DefaultTun)(nil)
  11. // DefaultTun implements GVisorTun
  12. var _ GVisorTun = (*DefaultTun)(nil)
  13. // NewTun builds new tun interface handler
  14. func NewTun(options TunOptions) (Tun, error) {
  15. return nil, errors.New("Tun is not supported on your platform")
  16. }
  17. func (t *DefaultTun) Start() error {
  18. return errors.New("Tun is not supported on your platform")
  19. }
  20. func (t *DefaultTun) Close() error {
  21. return errors.New("Tun is not supported on your platform")
  22. }
  23. func (t *DefaultTun) newEndpoint() (stack.LinkEndpoint, error) {
  24. return nil, errors.New("Tun is not supported on your platform")
  25. }