Documentation ¶
Index ¶
- Constants
- Variables
- func EncodeConfig(c *Config) ([]byte, error)
- func FingerprintKey(k ssh.PublicKey) string
- func GenerateKey(seed string) ([]byte, error)
- func GoStats()
- func HandleSocksStream(l *Logger, server *socks5.Server, connStats *ConnStats, src io.ReadWriteCloser)
- func HandleTCPStream(l *Logger, connStats *ConnStats, src io.ReadWriteCloser, remote string)
- func NewDetermRand(seed []byte) io.Reader
- func NewRWCConn(rwc io.ReadWriteCloser) net.Conn
- func NewWebSocketConn(websocketConn *websocket.Conn) net.Conn
- func ParseAuth(auth string) (string, string)
- func Pipe(src io.ReadWriteCloser, dst io.ReadWriteCloser) (int64, int64)
- func SleepSignal(d time.Duration)
- type Config
- type ConnStats
- type DetermRand
- type GetSSHConn
- type HTTPServer
- type Logger
- type Remote
- type TCPProxy
- type User
- type UserIndex
- type Users
Constants ¶
View Source
const DetermRandIter = 2048
View Source
const ProtocolVersion = "chisel-v3"
ProtocolVersion of chisel. When backwards incompatible changes are made, this will be incremented to signify a protocol mismatch.
Variables ¶
View Source
var BuildVersion = "0.0.0-src"
View Source
var UserAllowAll = regexp.MustCompile("")
Functions ¶
func EncodeConfig ¶
func FingerprintKey ¶
func GenerateKey ¶
func HandleSocksStream ¶
func HandleSocksStream(l *Logger, server *socks5.Server, connStats *ConnStats, src io.ReadWriteCloser)
func HandleTCPStream ¶
func HandleTCPStream(l *Logger, connStats *ConnStats, src io.ReadWriteCloser, remote string)
func NewDetermRand ¶
func NewRWCConn ¶
func NewRWCConn(rwc io.ReadWriteCloser) net.Conn
func Pipe ¶
func Pipe(src io.ReadWriteCloser, dst io.ReadWriteCloser) (int64, int64)
func SleepSignal ¶
SleepSignal sleeps for the given duration, or until a SIGHUP is received
Types ¶
type Config ¶
func DecodeConfig ¶
type DetermRand ¶
type DetermRand struct {
// contains filtered or unexported fields
}
type GetSSHConn ¶
type HTTPServer ¶
HTTPServer extends net/http Server and adds graceful shutdowns
func (*HTTPServer) Close ¶
func (h *HTTPServer) Close() error
func (*HTTPServer) GoListenAndServe ¶
func (h *HTTPServer) GoListenAndServe(addr string, handler http.Handler) error
func (*HTTPServer) Wait ¶
func (h *HTTPServer) Wait() error
type Logger ¶
type Logger struct {
Info, Debug bool
// contains filtered or unexported fields
}
Logger is ...
func NewLoggerFlag ¶
type Remote ¶
func DecodeRemote ¶
type TCPProxy ¶
type TCPProxy struct { *Logger // contains filtered or unexported fields }
func NewTCPProxy ¶
func NewTCPProxy(logger *Logger, ssh GetSSHConn, index int, remote *Remote) *TCPProxy
type UserIndex ¶
UserIndex is a reloadable user source
func NewUserIndex ¶
NewUserIndex creates a source for users
Click to show internal directories.
Click to hide internal directories.