Documentation
¶
Index ¶
- func ParseProxyGroup(config map[string]any, proxyMap map[string]C.Proxy, ...) (C.ProxyAdapter, error)
- type Fallback
- func (f *Fallback) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.Conn, error)
- func (f *Fallback) DisableDnsResolve() bool
- func (f *Fallback) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
- func (f *Fallback) MarshalJSON() ([]byte, error)
- func (f *Fallback) Now() string
- func (f *Fallback) SupportUDP() bool
- func (f *Fallback) Unwrap(_ *C.Metadata) C.Proxy
- type GroupCommonOption
- type LoadBalance
- func (lb *LoadBalance) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (c C.Conn, err error)
- func (lb *LoadBalance) DisableDnsResolve() bool
- func (lb *LoadBalance) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (pc C.PacketConn, err error)
- func (lb *LoadBalance) MarshalJSON() ([]byte, error)
- func (lb *LoadBalance) SupportUDP() bool
- func (lb *LoadBalance) Unwrap(metadata *C.Metadata) C.Proxy
- type Relay
- func (r *Relay) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.Conn, error)
- func (r *Relay) DisableDnsResolve() bool
- func (r *Relay) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
- func (r *Relay) MarshalJSON() ([]byte, error)
- func (r *Relay) SupportUDP() bool
- type Selector
- func (s *Selector) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.Conn, error)
- func (s *Selector) DisableDnsResolve() bool
- func (s *Selector) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
- func (s *Selector) MarshalJSON() ([]byte, error)
- func (s *Selector) Now() string
- func (s *Selector) Set(name string) error
- func (s *Selector) SupportUDP() bool
- func (s *Selector) Unwrap(_ *C.Metadata) C.Proxy
- type URLTest
- func (u *URLTest) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (c C.Conn, err error)
- func (u *URLTest) DisableDnsResolve() bool
- func (u *URLTest) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
- func (u *URLTest) MarshalJSON() ([]byte, error)
- func (u *URLTest) Now() string
- func (u *URLTest) SupportUDP() bool
- func (u *URLTest) Unwrap(_ *C.Metadata) C.Proxy
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseProxyGroup ¶
Types ¶
type Fallback ¶
func NewFallback ¶
func NewFallback(option *GroupCommonOption, providers []provider.ProxyProvider) *Fallback
func (*Fallback) DialContext ¶
func (f *Fallback) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.Conn, error)
DialContext implements C.ProxyAdapter
func (*Fallback) DisableDnsResolve ¶
DisableDnsResolve implements C.DisableDnsResolve
func (*Fallback) ListenPacketContext ¶
func (f *Fallback) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
ListenPacketContext implements C.ProxyAdapter
func (*Fallback) MarshalJSON ¶
MarshalJSON implements C.ProxyAdapter
func (*Fallback) SupportUDP ¶
SupportUDP implements C.ProxyAdapter
type GroupCommonOption ¶
type GroupCommonOption struct { outbound.BasicOption Name string `group:"name"` Type string `group:"type"` Proxies []string `group:"proxies,omitempty"` Use []string `group:"use,omitempty"` URL string `group:"url,omitempty"` Interval time.Duration `group:"interval,omitempty"` Lazy bool `group:"lazy,omitempty"` DisableUDP bool `group:"disable-udp,omitempty"` DisableDNS bool `group:"disable-dns,omitempty"` Filter string `group:"filter,omitempty"` }
type LoadBalance ¶
func NewLoadBalance ¶
func NewLoadBalance(option *GroupCommonOption, providers []provider.ProxyProvider, strategy string) (lb *LoadBalance, err error)
func (*LoadBalance) DialContext ¶
func (lb *LoadBalance) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (c C.Conn, err error)
DialContext implements C.ProxyAdapter
func (*LoadBalance) DisableDnsResolve ¶
func (lb *LoadBalance) DisableDnsResolve() bool
DisableDnsResolve implements C.DisableDnsResolve
func (*LoadBalance) ListenPacketContext ¶
func (lb *LoadBalance) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (pc C.PacketConn, err error)
ListenPacketContext implements C.ProxyAdapter
func (*LoadBalance) MarshalJSON ¶
func (lb *LoadBalance) MarshalJSON() ([]byte, error)
MarshalJSON implements C.ProxyAdapter
func (*LoadBalance) SupportUDP ¶
func (lb *LoadBalance) SupportUDP() bool
SupportUDP implements C.ProxyAdapter
type Relay ¶
func NewRelay ¶
func NewRelay(option *GroupCommonOption, providers []provider.ProxyProvider) *Relay
func (*Relay) DialContext ¶
func (r *Relay) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.Conn, error)
DialContext implements C.ProxyAdapter
func (*Relay) DisableDnsResolve ¶
DisableDnsResolve implements C.DisableDnsResolve
func (*Relay) ListenPacketContext ¶
func (r *Relay) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
ListenPacketContext implements C.ProxyAdapter
func (*Relay) MarshalJSON ¶
MarshalJSON implements C.ProxyAdapter
type Selector ¶
func NewSelector ¶
func NewSelector(option *GroupCommonOption, providers []provider.ProxyProvider) *Selector
func (*Selector) DialContext ¶
func (s *Selector) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.Conn, error)
DialContext implements C.ProxyAdapter
func (*Selector) DisableDnsResolve ¶
DisableDnsResolve implements C.DisableDnsResolve
func (*Selector) ListenPacketContext ¶
func (s *Selector) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
ListenPacketContext implements C.ProxyAdapter
func (*Selector) MarshalJSON ¶
MarshalJSON implements C.ProxyAdapter
func (*Selector) SupportUDP ¶
SupportUDP implements C.ProxyAdapter
type URLTest ¶
func NewURLTest ¶
func NewURLTest(option *GroupCommonOption, providers []provider.ProxyProvider, options ...urlTestOption) *URLTest
func (*URLTest) DialContext ¶
func (u *URLTest) DialContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (c C.Conn, err error)
DialContext implements C.ProxyAdapter
func (*URLTest) DisableDnsResolve ¶
DisableDnsResolve implements C.DisableDnsResolve
func (*URLTest) ListenPacketContext ¶
func (u *URLTest) ListenPacketContext(ctx context.Context, metadata *C.Metadata, opts ...dialer.Option) (C.PacketConn, error)
ListenPacketContext implements C.ProxyAdapter
func (*URLTest) MarshalJSON ¶
MarshalJSON implements C.ProxyAdapter
func (*URLTest) SupportUDP ¶
SupportUDP implements C.ProxyAdapter