Versions in this module Expand all Collapse all v0 v0.52.5 Dec 8, 2023 v0.52.4 Dec 8, 2023 Changes in this version + func Register(name string, fn CreatorFn) + type CreatorFn func(options v1.ClientPluginOptions) (Plugin, error) + type ExtraInfo struct + ProxyProtocolHeader *pp.Header + type HTTP2HTTPSPlugin struct + func (p *HTTP2HTTPSPlugin) Close() error + func (p *HTTP2HTTPSPlugin) Handle(conn io.ReadWriteCloser, realConn net.Conn, _ *ExtraInfo) + func (p *HTTP2HTTPSPlugin) Name() string + type HTTPProxy struct + func (hp *HTTPProxy) Auth(req *http.Request) bool + func (hp *HTTPProxy) Close() error + func (hp *HTTPProxy) ConnectHandler(rw http.ResponseWriter, req *http.Request) + func (hp *HTTPProxy) HTTPHandler(rw http.ResponseWriter, req *http.Request) + func (hp *HTTPProxy) Handle(conn io.ReadWriteCloser, realConn net.Conn, _ *ExtraInfo) + func (hp *HTTPProxy) Name() string + func (hp *HTTPProxy) ServeHTTP(rw http.ResponseWriter, req *http.Request) + type HTTPS2HTTPPlugin struct + func (p *HTTPS2HTTPPlugin) Close() error + func (p *HTTPS2HTTPPlugin) Handle(conn io.ReadWriteCloser, realConn net.Conn, _ *ExtraInfo) + func (p *HTTPS2HTTPPlugin) Name() string + type HTTPS2HTTPSPlugin struct + func (p *HTTPS2HTTPSPlugin) Close() error + func (p *HTTPS2HTTPSPlugin) Handle(conn io.ReadWriteCloser, realConn net.Conn, _ *ExtraInfo) + func (p *HTTPS2HTTPSPlugin) Name() string + type Listener struct + func NewProxyListener() *Listener + func (l *Listener) Accept() (net.Conn, error) + func (l *Listener) Addr() net.Addr + func (l *Listener) Close() error + func (l *Listener) PutConn(conn net.Conn) error + type Plugin interface + Close func() error + Handle func(conn io.ReadWriteCloser, realConn net.Conn, extra *ExtraInfo) + Name func() string + func Create(name string, options v1.ClientPluginOptions) (p Plugin, err error) + func NewHTTP2HTTPSPlugin(options v1.ClientPluginOptions) (Plugin, error) + func NewHTTPProxyPlugin(options v1.ClientPluginOptions) (Plugin, error) + func NewHTTPS2HTTPPlugin(options v1.ClientPluginOptions) (Plugin, error) + func NewHTTPS2HTTPSPlugin(options v1.ClientPluginOptions) (Plugin, error) + func NewSocks5Plugin(options v1.ClientPluginOptions) (p Plugin, err error) + func NewStaticFilePlugin(options v1.ClientPluginOptions) (Plugin, error) + func NewUnixDomainSocketPlugin(options v1.ClientPluginOptions) (p Plugin, err error) + type Socks5Plugin struct + Server *gosocks5.Server + func (sp *Socks5Plugin) Close() error + func (sp *Socks5Plugin) Handle(conn io.ReadWriteCloser, realConn net.Conn, _ *ExtraInfo) + func (sp *Socks5Plugin) Name() string + type StaticFilePlugin struct + func (sp *StaticFilePlugin) Close() error + func (sp *StaticFilePlugin) Handle(conn io.ReadWriteCloser, realConn net.Conn, _ *ExtraInfo) + func (sp *StaticFilePlugin) Name() string + type UnixDomainSocketPlugin struct + UnixAddr *net.UnixAddr + func (uds *UnixDomainSocketPlugin) Close() error + func (uds *UnixDomainSocketPlugin) Handle(conn io.ReadWriteCloser, _ net.Conn, extra *ExtraInfo) + func (uds *UnixDomainSocketPlugin) Name() string