Documentation ¶
Index ¶
- func RegisterProxyFactory(proxyConfType reflect.Type, factory func(*BaseProxy) Proxy)
- type BaseProxy
- func (pxy *BaseProxy) Close()
- func (pxy *BaseProxy) Context() context.Context
- func (pxy *BaseProxy) GetConfigurer() v1.ProxyConfigurer
- func (pxy *BaseProxy) GetLimiter() *rate.Limiter
- func (pxy *BaseProxy) GetLoginMsg() *msg.Login
- func (pxy *BaseProxy) GetName() string
- func (pxy *BaseProxy) GetResourceController() *controller.ResourceController
- func (pxy *BaseProxy) GetUsedPortsNum() int
- func (pxy *BaseProxy) GetUserInfo() plugin.UserInfo
- func (pxy *BaseProxy) GetWorkConnFromPool(src, dst net.Addr) (workConn net.Conn, err error)
- type GetWorkConnFn
- type HTTPProxy
- type HTTPSProxy
- type Manager
- type Options
- type Proxy
- func NewHTTPProxy(baseProxy *BaseProxy) Proxy
- func NewHTTPSProxy(baseProxy *BaseProxy) Proxy
- func NewProxy(ctx context.Context, options *Options) (pxy Proxy, err error)
- func NewSTCPProxy(baseProxy *BaseProxy) Proxy
- func NewSUDPProxy(baseProxy *BaseProxy) Proxy
- func NewTCPMuxProxy(baseProxy *BaseProxy) Proxy
- func NewTCPProxy(baseProxy *BaseProxy) Proxy
- func NewUDPProxy(baseProxy *BaseProxy) Proxy
- func NewXTCPProxy(baseProxy *BaseProxy) Proxy
- type STCPProxy
- type SUDPProxy
- type TCPMuxProxy
- type TCPProxy
- type UDPProxy
- type XTCPProxy
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BaseProxy ¶
type BaseProxy struct {
// contains filtered or unexported fields
}
func (*BaseProxy) GetConfigurer ¶
func (pxy *BaseProxy) GetConfigurer() v1.ProxyConfigurer
func (*BaseProxy) GetLimiter ¶
func (*BaseProxy) GetLoginMsg ¶
func (*BaseProxy) GetResourceController ¶
func (pxy *BaseProxy) GetResourceController() *controller.ResourceController
func (*BaseProxy) GetUsedPortsNum ¶
func (*BaseProxy) GetUserInfo ¶
func (*BaseProxy) GetWorkConnFromPool ¶
GetWorkConnFromPool try to get a new work connections from pool for quickly response, we immediately send the StartWorkConn message to frpc after take out one from pool
type GetWorkConnFn ¶
type HTTPProxy ¶
type HTTPProxy struct { *BaseProxy // contains filtered or unexported fields }
func (*HTTPProxy) GetRealConn ¶
type HTTPSProxy ¶
type HTTPSProxy struct { *BaseProxy // contains filtered or unexported fields }
func (*HTTPSProxy) Close ¶
func (pxy *HTTPSProxy) Close()
func (*HTTPSProxy) Run ¶
func (pxy *HTTPSProxy) Run() (remoteAddr string, err error)
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func NewManager ¶
func NewManager() *Manager
type Options ¶
type Options struct { UserInfo plugin.UserInfo LoginMsg *msg.Login PoolCount int ResourceController *controller.ResourceController GetWorkConnFn GetWorkConnFn Configurer v1.ProxyConfigurer ServerCfg *v1.ServerConfig }
type Proxy ¶
type Proxy interface { Context() context.Context Run() (remoteAddr string, err error) GetName() string GetConfigurer() v1.ProxyConfigurer GetWorkConnFromPool(src, dst net.Addr) (workConn net.Conn, err error) GetUsedPortsNum() int GetResourceController() *controller.ResourceController GetUserInfo() plugin.UserInfo GetLimiter() *rate.Limiter GetLoginMsg() *msg.Login Close() }
func NewHTTPProxy ¶
func NewHTTPSProxy ¶
func NewSTCPProxy ¶
func NewSUDPProxy ¶
func NewTCPMuxProxy ¶
func NewTCPProxy ¶
func NewUDPProxy ¶
func NewXTCPProxy ¶
type TCPMuxProxy ¶
type TCPMuxProxy struct { *BaseProxy // contains filtered or unexported fields }
func (*TCPMuxProxy) Close ¶
func (pxy *TCPMuxProxy) Close()
func (*TCPMuxProxy) Run ¶
func (pxy *TCPMuxProxy) Run() (remoteAddr string, err error)
Click to show internal directories.
Click to hide internal directories.