session

package
v1.1.51 Latest Latest
Warning

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

Go to latest
Published: Jul 22, 2020 License: MIT Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var SessionsCtl = SessionsManager{
	Session:      make(map[string]*Session),
	HttpProxyMap: make(map[string]*HttpProxy),
}

Functions

This section is empty.

Types

type HttpProxy added in v1.1.30

type HttpProxy struct {
	Domain           string
	RunId            string
	RemoteIP         string
	RemotePort       int
	UserName         string
	Password         string
	IfHttps          bool
	Description      string
	RemotePortStatus bool
}

服务结构

func (*HttpProxy) UpdateRemotePortStatus added in v1.1.30

func (hp *HttpProxy) UpdateRemotePortStatus()

type Session

type Session struct {
	Id             string
	OS             string
	ARCH           string
	Version        string
	Conn           *net.Conn
	GatewaySession *yamux.Session
	WorkConn       chan net.Conn
}

func (*Session) Task

func (sess *Session) Task()

:TODO 存活检测

type SessionsManager added in v1.1.30

type SessionsManager struct {
	Session      map[string]*Session
	HttpProxyMap map[string]*HttpProxy
}

func (*SessionsManager) AddHttpProxy added in v1.1.30

func (sm *SessionsManager) AddHttpProxy(httpProxy *HttpProxy) error

func (*SessionsManager) CheckRemoteStatus added in v1.1.30

func (sm *SessionsManager) CheckRemoteStatus(targetType, runId, remoteIp string, remotePort int) (bool, error)

检查远端内网端口的可用性,可用true

func (*SessionsManager) ConnectToSSH added in v1.1.30

func (sm *SessionsManager) ConnectToSSH(runId, remoteIP string, remotePort int, userName, passWord string) (stream *yamux.Stream, err error)

func (*SessionsManager) ConnectToSerialPort added in v1.1.30

func (sm *SessionsManager) ConnectToSerialPort(runId string, msgsd *models.ConnectSerialPort) (*yamux.Stream, error)

Connect to Serial Port

func (*SessionsManager) ConnectToTapTun added in v1.1.30

func (sm *SessionsManager) ConnectToTapTun(runId string) (*yamux.Stream, error)

func (*SessionsManager) ConnectToTcp added in v1.1.30

func (sm *SessionsManager) ConnectToTcp(runId, remoteIp string, remotePort int) (*yamux.Stream, error)

Connect to tcp

func (*SessionsManager) ConnectToTls added in v1.1.30

func (sm *SessionsManager) ConnectToTls(runId, remoteIp string, remotePort int) (*yamux.Stream, error)

func (*SessionsManager) ConnectToUdp added in v1.1.30

func (sm *SessionsManager) ConnectToUdp(runId, remoteIp string, remotePort int) (*yamux.Stream, error)

Connect to udp

func (*SessionsManager) ConnectToWs added in v1.1.30

func (sm *SessionsManager) ConnectToWs(runId, targetUrl, protocol, origin string) (*yamux.Stream, error)

func (*SessionsManager) CreateOneHTTP added in v1.1.30

func (sm *SessionsManager) CreateOneHTTP(ctx context.Context, in *pb.HTTPConfig) (*pb.HTTPConfig, error)

grpc

func (*SessionsManager) DelHttpProxy added in v1.1.30

func (sm *SessionsManager) DelHttpProxy(id string)

func (*SessionsManager) DelSession added in v1.1.30

func (sess *SessionsManager) DelSession(id string)

func (*SessionsManager) DeleteOneHTTP added in v1.1.30

func (sm *SessionsManager) DeleteOneHTTP(ctx context.Context, in *pb.HTTPConfig) (*pb.Empty, error)

func (*SessionsManager) GetAllHTTP added in v1.1.30

func (sm *SessionsManager) GetAllHTTP(ctx context.Context, in *pb.Device) (*pb.HTTPList, error)

func (*SessionsManager) GetAllHttpProxy added in v1.1.30

func (sm *SessionsManager) GetAllHttpProxy() map[string]*HttpProxy

func (*SessionsManager) GetOneHTTP added in v1.1.30

func (sm *SessionsManager) GetOneHTTP(ctx context.Context, in *pb.HTTPConfig) (*pb.HTTPConfig, error)

func (*SessionsManager) GetOneHttpProxy added in v1.1.30

func (sm *SessionsManager) GetOneHttpProxy(id string) (*HttpProxy, error)

func (*SessionsManager) GetSession added in v1.1.30

func (sess *SessionsManager) GetSession(id string) (*Session, error)

func (*SessionsManager) GetStream added in v1.1.30

func (sess *SessionsManager) GetStream(id string) (*yamux.Stream, error)

func (*SessionsManager) ListenMulticastUDP added in v1.1.30

func (sm *SessionsManager) ListenMulticastUDP(runId, ip string, port uint) (*yamux.Stream, error)

func (SessionsManager) RunKCP added in v1.1.30

func (sess SessionsManager) RunKCP()

func (SessionsManager) RunTCP added in v1.1.30

func (sess SessionsManager) RunTCP()

func (SessionsManager) RunTLS added in v1.1.30

func (sess SessionsManager) RunTLS()

func (*SessionsManager) ServeHTTP added in v1.1.30

func (sm *SessionsManager) ServeHTTP(w http.ResponseWriter, r *http.Request)

func (*SessionsManager) SetSession added in v1.1.30

func (sess *SessionsManager) SetSession(id string, session *Session)

func (SessionsManager) StartHttpListenAndServ added in v1.1.30

func (sess SessionsManager) StartHttpListenAndServ()

func (*SessionsManager) StartgRpcListenAndServ added in v1.1.30

func (sm *SessionsManager) StartgRpcListenAndServ()

Jump to

Keyboard shortcuts

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