mydispatcher

package
v0.9.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 26, 2023 License: MPL-2.0 Imports: 30 Imported by: 2

Documentation

Overview

Package mydispatcher Package dispatcher implement the rate limiter and the online device counter

Index

Constants

This section is empty.

Variables

View Source
var File_app_mydispatcher_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) Descriptor() ([]byte, []int)

Deprecated: Use Config.ProtoReflect.Descriptor instead.

func (*Config) GetSettings

func (x *Config) GetSettings() *SessionConfig

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) ProtoReflect

func (x *Config) ProtoReflect() protoreflect.Message

func (*Config) Reset

func (x *Config) Reset()

func (*Config) String

func (x *Config) String() string

type DNSThenOthersSniffResult added in v0.7.3

type DNSThenOthersSniffResult struct {
	// contains filtered or unexported fields
}

func (DNSThenOthersSniffResult) Domain added in v0.7.3

func (f DNSThenOthersSniffResult) Domain() string

func (DNSThenOthersSniffResult) IsProtoSubsetOf added in v0.7.3

func (f DNSThenOthersSniffResult) IsProtoSubsetOf(protocolName string) bool

func (DNSThenOthersSniffResult) Protocol added in v0.7.3

func (DNSThenOthersSniffResult) Protocol() string

type DefaultDispatcher

type DefaultDispatcher struct {
	Limiter     *limiter.Limiter
	RuleManager *rule.Manager
	// 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 (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, dns 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

type SizeStatWriter struct {
	Counter stats.Counter
	Writer  buf.Writer
}

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

type SniffResult interface {
	Protocol() string
	Domain() string
}

func CompositeResult added in v0.7.3

func CompositeResult(domainResult SniffResult, protocolResult SniffResult) SniffResult

type Sniffer

type Sniffer struct {
	// contains filtered or unexported fields
}

func NewSniffer

func NewSniffer(ctx context.Context) *Sniffer

func (*Sniffer) Sniff

func (s *Sniffer) Sniff(c context.Context, payload []byte, network net.Network) (SniffResult, error)

func (*Sniffer) SniffMetadata added in v0.7.3

func (s *Sniffer) SniffMetadata(c context.Context) (SniffResult, error)

type SnifferIsProtoSubsetOf added in v0.7.3

type SnifferIsProtoSubsetOf interface {
	IsProtoSubsetOf(protocolName string) bool
}

type SnifferResultComposite added in v0.7.3

type SnifferResultComposite interface {
	ProtocolForDomainResult() string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL