Documentation ¶
Overview ¶
Package dispather implement the rate limiter and the onlie device counter
Index ¶
- Variables
- type Config
- type DNSThenOthersSniffResult
- type DefaultDispatcher
- func (*DefaultDispatcher) Close() error
- func (d *DefaultDispatcher) Dispatch(ctx context.Context, destination net.Destination) (*transport.Link, error)
- func (d *DefaultDispatcher) DispatchLink(ctx context.Context, destination net.Destination, outbound *transport.Link) error
- func (d *DefaultDispatcher) Init(config *Config, om outbound.Manager, router routing.Router, pm policy.Manager, ...) error
- func (*DefaultDispatcher) Start() error
- func (*DefaultDispatcher) Type() interface{}
- type SessionConfig
- type SizeStatWriter
- type SniffResult
- type Sniffer
- type SnifferIsProtoSubsetOf
- type SnifferResultComposite
Constants ¶
This section is empty.
Variables ¶
View Source
var File_config_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Settings *SessionConfig `protobuf:"bytes,1,opt,name=settings,proto3" json:"settings,omitempty"` // contains filtered or unexported fields }
func (*Config) Descriptor
deprecated
func (*Config) GetSettings ¶
func (x *Config) GetSettings() *SessionConfig
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) ProtoReflect ¶
func (x *Config) ProtoReflect() protoreflect.Message
type DNSThenOthersSniffResult ¶
type DNSThenOthersSniffResult struct {
// contains filtered or unexported fields
}
func (DNSThenOthersSniffResult) Domain ¶
func (f DNSThenOthersSniffResult) Domain() string
func (DNSThenOthersSniffResult) IsProtoSubsetOf ¶
func (f DNSThenOthersSniffResult) IsProtoSubsetOf(protocolName string) bool
func (DNSThenOthersSniffResult) Protocol ¶
func (DNSThenOthersSniffResult) Protocol() string
type DefaultDispatcher ¶
type DefaultDispatcher struct { Limiter *limiter.Limiter RuleManager *rule.RuleManager // contains filtered or unexported fields }
DefaultDispatcher is a default implementation of Dispatcher.
func (*DefaultDispatcher) Close ¶
func (*DefaultDispatcher) Close() error
Close implements common.Closable.
func (*DefaultDispatcher) Dispatch ¶
func (d *DefaultDispatcher) Dispatch(ctx context.Context, destination net.Destination) (*transport.Link, error)
Dispatch implements routing.Dispatcher.
func (*DefaultDispatcher) DispatchLink ¶
func (d *DefaultDispatcher) DispatchLink(ctx context.Context, destination net.Destination, outbound *transport.Link) error
DispatchLink implements routing.Dispatcher.
func (*DefaultDispatcher) Init ¶
func (d *DefaultDispatcher) Init(config *Config, om outbound.Manager, router routing.Router, pm policy.Manager, sm stats.Manager, dc dns.Client) error
Init initializes DefaultDispatcher.
func (*DefaultDispatcher) Start ¶
func (*DefaultDispatcher) Start() error
Start implements common.Runnable.
func (*DefaultDispatcher) Type ¶
func (*DefaultDispatcher) Type() interface{}
Type implements common.HasType.
type SessionConfig ¶
type SessionConfig struct {
// contains filtered or unexported fields
}
func (*SessionConfig) Descriptor
deprecated
func (*SessionConfig) Descriptor() ([]byte, []int)
Deprecated: Use SessionConfig.ProtoReflect.Descriptor instead.
func (*SessionConfig) ProtoMessage ¶
func (*SessionConfig) ProtoMessage()
func (*SessionConfig) ProtoReflect ¶
func (x *SessionConfig) ProtoReflect() protoreflect.Message
func (*SessionConfig) Reset ¶
func (x *SessionConfig) Reset()
func (*SessionConfig) String ¶
func (x *SessionConfig) String() string
type SizeStatWriter ¶
func (*SizeStatWriter) Close ¶
func (w *SizeStatWriter) Close() error
func (*SizeStatWriter) Interrupt ¶
func (w *SizeStatWriter) Interrupt()
func (*SizeStatWriter) WriteMultiBuffer ¶
func (w *SizeStatWriter) WriteMultiBuffer(mb buf.MultiBuffer) error
type SniffResult ¶
func CompositeResult ¶
func CompositeResult(domainResult SniffResult, protocolResult SniffResult) SniffResult
type Sniffer ¶
type Sniffer struct {
// contains filtered or unexported fields
}
func NewSniffer ¶
func (*Sniffer) SniffMetadata ¶
func (s *Sniffer) SniffMetadata(c context.Context) (SniffResult, error)
type SnifferIsProtoSubsetOf ¶
type SnifferResultComposite ¶
type SnifferResultComposite interface {
ProtocolForDomainResult() string
}
Click to show internal directories.
Click to hide internal directories.