client

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2022 License: Apache-2.0 Imports: 36 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseVisitor added in v0.14.0

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

type ByProxyStatusResp added in v0.15.0

type ByProxyStatusResp []ProxyStatusResp

func (ByProxyStatusResp) Len added in v0.15.0

func (a ByProxyStatusResp) Len() int

func (ByProxyStatusResp) Less added in v0.15.0

func (a ByProxyStatusResp) Less(i, j int) bool

func (ByProxyStatusResp) Swap added in v0.15.0

func (a ByProxyStatusResp) Swap(i, j int)

type Control

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

func NewControl

func NewControl(ctx context.Context, runID string, conn net.Conn, session *fmux.Session,
	clientCfg config.ClientCommonConf,
	pxyCfgs map[string]config.ProxyConf,
	visitorCfgs map[string]config.VisitorConf,
	serverUDPPort int,
	authSetter auth.Setter) *Control

func (*Control) Close added in v0.13.0

func (ctl *Control) Close() error

func (*Control) ClosedDoneCh added in v0.22.0

func (ctl *Control) ClosedDoneCh() <-chan struct{}

ClosedDoneCh returns a channel which will be closed after all resources are released

func (*Control) GracefulClose added in v1.0.0

func (ctl *Control) GracefulClose(d time.Duration) error

func (*Control) HandleNewProxyResp added in v0.15.0

func (ctl *Control) HandleNewProxyResp(inMsg *msg.NewProxyResp)

func (*Control) HandleReqWorkConn added in v0.15.0

func (ctl *Control) HandleReqWorkConn(inMsg *msg.ReqWorkConn)

func (*Control) ReloadConf added in v0.22.0

func (ctl *Control) ReloadConf(pxyCfgs map[string]config.ProxyConf, visitorCfgs map[string]config.VisitorConf) error

func (*Control) Run

func (ctl *Control) Run()

type GeneralResponse added in v0.13.0

type GeneralResponse struct {
	Code int
	Msg  string
}

type ProxyStatusResp added in v0.15.0

type ProxyStatusResp struct {
	Name       string `json:"name"`
	Type       string `json:"type"`
	Status     string `json:"status"`
	Err        string `json:"err"`
	LocalAddr  string `json:"local_addr"`
	Plugin     string `json:"plugin"`
	RemoteAddr string `json:"remote_addr"`
}

func NewProxyStatusResp added in v0.15.0

func NewProxyStatusResp(status *proxy.WorkingStatus, serverAddr string) ProxyStatusResp

type STCPVisitor added in v1.0.0

type STCPVisitor struct {
	*BaseVisitor
	// contains filtered or unexported fields
}

func (*STCPVisitor) Close added in v1.0.0

func (sv *STCPVisitor) Close()

func (*STCPVisitor) Run added in v1.0.0

func (sv *STCPVisitor) Run() (err error)

type SUDPVisitor added in v1.0.0

type SUDPVisitor struct {
	*BaseVisitor
	// contains filtered or unexported fields
}

func (*SUDPVisitor) Close added in v1.0.0

func (sv *SUDPVisitor) Close()

func (*SUDPVisitor) Run added in v1.0.0

func (sv *SUDPVisitor) Run() (err error)

SUDP Run start listen a udp port

type Service

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

Service is a client service.

func NewService

func NewService(cfg config.ClientCommonConf, pxyCfgs map[string]config.ProxyConf, visitorCfgs map[string]config.VisitorConf, cfgFile string) (svr *Service, err error)

func (*Service) Close added in v0.13.0

func (svr *Service) Close()

func (*Service) GetController added in v0.22.0

func (svr *Service) GetController() *Control

func (*Service) GracefulClose added in v1.0.0

func (svr *Service) GracefulClose(d time.Duration)

func (*Service) ReloadConf added in v0.22.0

func (svr *Service) ReloadConf(pxyCfgs map[string]config.ProxyConf, visitorCfgs map[string]config.VisitorConf) error

func (*Service) Run

func (svr *Service) Run() error

type StatusResp added in v0.15.0

type StatusResp struct {
	TCP   []ProxyStatusResp `json:"tcp"`
	UDP   []ProxyStatusResp `json:"udp"`
	HTTP  []ProxyStatusResp `json:"http"`
	HTTPS []ProxyStatusResp `json:"https"`
	STCP  []ProxyStatusResp `json:"stcp"`
	XTCP  []ProxyStatusResp `json:"xtcp"`
	SUDP  []ProxyStatusResp `json:"sudp"`
}

type Visitor added in v0.14.0

type Visitor interface {
	Run() error
	Close()
}

Visitor is used for forward traffics from local port tot remote service.

func NewVisitor added in v0.14.0

func NewVisitor(ctx context.Context, ctl *Control, cfg config.VisitorConf) (visitor Visitor)

type VisitorManager added in v0.22.0

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

func NewVisitorManager added in v0.22.0

func NewVisitorManager(ctx context.Context, ctl *Control) *VisitorManager

func (*VisitorManager) Close added in v0.22.0

func (vm *VisitorManager) Close()

func (*VisitorManager) Reload added in v0.22.0

func (vm *VisitorManager) Reload(cfgs map[string]config.VisitorConf)

func (*VisitorManager) Run added in v0.22.0

func (vm *VisitorManager) Run()

type XTCPVisitor added in v1.0.0

type XTCPVisitor struct {
	*BaseVisitor
	// contains filtered or unexported fields
}

func (*XTCPVisitor) Close added in v1.0.0

func (sv *XTCPVisitor) Close()

func (*XTCPVisitor) Run added in v1.0.0

func (sv *XTCPVisitor) Run() (err error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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