simple.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package option
  2. import (
  3. "github.com/sagernet/sing/common/auth"
  4. "github.com/sagernet/sing/common/json/badoption"
  5. )
  6. type SocksInboundOptions struct {
  7. ListenOptions
  8. Users []auth.User `json:"users,omitempty"`
  9. DomainResolver *DomainResolveOptions `json:"domain_resolver,omitempty"`
  10. }
  11. type HTTPMixedInboundOptions struct {
  12. ListenOptions
  13. Users []auth.User `json:"users,omitempty"`
  14. DomainResolver *DomainResolveOptions `json:"domain_resolver,omitempty"`
  15. SetSystemProxy bool `json:"set_system_proxy,omitempty"`
  16. InboundTLSOptionsContainer
  17. }
  18. type SOCKSOutboundOptions struct {
  19. DialerOptions
  20. ServerOptions
  21. Version string `json:"version,omitempty"`
  22. Username string `json:"username,omitempty"`
  23. Password string `json:"password,omitempty"`
  24. Network NetworkList `json:"network,omitempty"`
  25. UDPOverTCP *UDPOverTCPOptions `json:"udp_over_tcp,omitempty"`
  26. }
  27. type HTTPOutboundOptions struct {
  28. DialerOptions
  29. ServerOptions
  30. Username string `json:"username,omitempty"`
  31. Password string `json:"password,omitempty"`
  32. OutboundTLSOptionsContainer
  33. Path string `json:"path,omitempty"`
  34. Headers badoption.HTTPHeader `json:"headers,omitempty"`
  35. }