Documentation
¶
Index ¶
- type AfterHandlerSelectedHook
- type BeforeHandlerSelectionHook
- type Dispatcher
- func (d *Dispatcher) AddAfterHandlerSelectionHook(hook AfterHandlerSelectedHook)
- func (d *Dispatcher) AddBeforeHandlerSelectionHook(hook BeforeHandlerSelectionHook)
- func (p *Dispatcher) AddHandlerErrorObserver(observer i.HandlerErrorObserver)
- func (d *Dispatcher) AddOnFallback(fallback OnFallback)
- func (d *Dispatcher) AddSessionEndHook(hook SessionEndHook)
- func (d *Dispatcher) AddSessionStartHook(hook SessionStartHook)
- func (d *Dispatcher) HandleFlow(ctx context.Context, dst net.Destination, rw buf.ReaderWriter) error
- func (d *Dispatcher) HandlePacketConn(ctx context.Context, dst net.Destination, pc udp.PacketReaderWriter) error
- func (d *Dispatcher) Relay(ctx context.Context, info *session.Info, left, right any, outbound i.Outbound) error
- func (p *Dispatcher) RemoveHandlerErrorObserver(observer i.HandlerErrorObserver)
- type Fallback
- type GetCounters
- type NullSessionErrorLogger
- type OnFallback
- type OnHandlerErrorFunc
- type SessionEndHook
- type SessionErrorLogger
- type SessionStartHook
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AfterHandlerSelectedHook ¶ added in v1.0.7
type BeforeHandlerSelectionHook ¶ added in v1.0.7
type Dispatcher ¶
type Dispatcher struct {
BeforeHandlerSelectionHooks []BeforeHandlerSelectionHook
Router i.Router
OnHandlerSelectedHooks []AfterHandlerSelectedHook
SessionStartHooks []SessionStartHook
SessionEndHooks []SessionEndHook
TimeoutSetting i.TimeoutSetting
OnFallbacks []OnFallback
FallbackTimeout time.Duration
SessionStats bool
RewriteIpv6ToDomain bool
Flows atomic.Int32
PacketConns atomic.Int32
HandlerErrorObservers []i.HandlerErrorObserver
// contains filtered or unexported fields
}
func (*Dispatcher) AddAfterHandlerSelectionHook ¶ added in v1.0.7
func (d *Dispatcher) AddAfterHandlerSelectionHook(hook AfterHandlerSelectedHook)
func (*Dispatcher) AddBeforeHandlerSelectionHook ¶ added in v1.0.7
func (d *Dispatcher) AddBeforeHandlerSelectionHook(hook BeforeHandlerSelectionHook)
func (*Dispatcher) AddHandlerErrorObserver ¶
func (p *Dispatcher) AddHandlerErrorObserver(observer i.HandlerErrorObserver)
func (*Dispatcher) AddOnFallback ¶ added in v1.1.0
func (d *Dispatcher) AddOnFallback(fallback OnFallback)
func (*Dispatcher) AddSessionEndHook ¶ added in v1.0.7
func (d *Dispatcher) AddSessionEndHook(hook SessionEndHook)
func (*Dispatcher) AddSessionStartHook ¶ added in v1.2.1
func (d *Dispatcher) AddSessionStartHook(hook SessionStartHook)
func (*Dispatcher) HandleFlow ¶
func (d *Dispatcher) HandleFlow(ctx context.Context, dst net.Destination, rw buf.ReaderWriter) error
func (*Dispatcher) HandlePacketConn ¶
func (d *Dispatcher) HandlePacketConn(ctx context.Context, dst net.Destination, pc udp.PacketReaderWriter) error
func (*Dispatcher) RemoveHandlerErrorObserver ¶
func (p *Dispatcher) RemoveHandlerErrorObserver(observer i.HandlerErrorObserver)
type GetCounters ¶ added in v1.1.0
type GetCounters interface {
GetCounters(ctx context.Context, info *session.Info, handler i.Outbound) (session.UpCounters, session.DownCounters)
}
type NullSessionErrorLogger ¶ added in v1.0.7
type NullSessionErrorLogger struct{}
func (*NullSessionErrorLogger) LogSessionError ¶ added in v1.0.7
func (n *NullSessionErrorLogger) LogSessionError(info *session.Info, err error)
type OnFallback ¶ added in v1.1.0
type OnHandlerErrorFunc ¶
type SessionEndHook ¶ added in v1.0.7
type SessionErrorLogger ¶ added in v1.0.7
Click to show internal directories.
Click to hide internal directories.