Documentation
¶
Index ¶
- func CopyBufferWithTimeout(dst io.Writer, src io.Reader, buf []byte) (written int64, err error)
- func MakeProxyAuthMiddleware(next http.Handler, checkFunc AuthCheckFunc) http.Handler
- type AuthCheckFunc
- type AuthFuncOption
- type DialerFactoryIface
- type GracefulShutdownTimeoutOption
- type ListenAddrOption
- type NetConnTimeoutReadWriter
- type Option
- type RandIpDialerFactory
- type Server
- type StaticDialerFactory
- type WithHttpServerOption
- type WithHttpTransportOption
- type WithLoggerOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CopyBufferWithTimeout ¶
CopyBufferWithTimeout is a copy of io.CopyBuffer but with retries on timeouts
func MakeProxyAuthMiddleware ¶
func MakeProxyAuthMiddleware(next http.Handler, checkFunc AuthCheckFunc) http.Handler
Types ¶
type AuthCheckFunc ¶
type AuthFuncOption ¶
type AuthFuncOption struct {
// contains filtered or unexported fields
}
func WithAuthFunc ¶
func WithAuthFunc(authFunc AuthCheckFunc) *AuthFuncOption
type DialerFactoryIface ¶
type GracefulShutdownTimeoutOption ¶
type GracefulShutdownTimeoutOption struct {
// contains filtered or unexported fields
}
func WithGracefulShutdownTimeout ¶
func WithGracefulShutdownTimeout(timeout time.Duration) *GracefulShutdownTimeoutOption
type ListenAddrOption ¶
type ListenAddrOption struct {
// contains filtered or unexported fields
}
func WithListenAddr ¶
func WithListenAddr(addr string) *ListenAddrOption
type NetConnTimeoutReadWriter ¶
type NetConnTimeoutReadWriter struct {
// contains filtered or unexported fields
}
NetConnTimeoutReadWriter sets net.Conn read/write deadlines on read
type RandIpDialerFactory ¶
type RandIpDialerFactory struct {
// contains filtered or unexported fields
}
RandIpDialerFactory provides dialer with random IP from provided network prefix
func MakeRandIpDialerFactory ¶
func MakeRandIpDialerFactory(randReader *rand.Rand, prefix netip.Prefix) *RandIpDialerFactory
func (*RandIpDialerFactory) GetDialer ¶
func (f *RandIpDialerFactory) GetDialer() *net.Dialer
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
func MakeServer ¶
func MakeServer(dFactory DialerFactoryIface, options ...Option) *Server
type StaticDialerFactory ¶
type StaticDialerFactory struct {
// contains filtered or unexported fields
}
StaticDialerFactory provides user specified dialer if user provided dialer is unspecified provides empty dialer struct
func MakeNoIpDialerFactory ¶
func MakeNoIpDialerFactory(dialer *net.Dialer) *StaticDialerFactory
func (*StaticDialerFactory) GetDialer ¶
func (f *StaticDialerFactory) GetDialer() *net.Dialer
type WithHttpServerOption ¶
type WithHttpServerOption struct {
// contains filtered or unexported fields
}
func WithHttpServer ¶
func WithHttpServer(httpServer *http.Server) *WithHttpServerOption
type WithHttpTransportOption ¶
type WithHttpTransportOption struct {
// contains filtered or unexported fields
}
WithHttpTransportOption allows to set preconfigured HTTP transport when proxy serves non HTTPS (HTTP only) requests
func WithHttpTransport ¶
func WithHttpTransport(transport *http.Transport) *WithHttpTransportOption
type WithLoggerOption ¶
type WithLoggerOption struct {
// contains filtered or unexported fields
}
func WithLogger ¶
func WithLogger(logger *zap.Logger) *WithLoggerOption
Click to show internal directories.
Click to hide internal directories.