Versions in this module Expand all Collapse all v0 v0.7.6 Jun 15, 2024 Changes in this version + const InboundRpcErrorTimeoutTime + const MaxFileDataPacketSize + const MaxWriteFileContextData + const WriteFileContextTimeout + func RunServer() (int, error) + type MServer struct + ClientMap map[base.CommandKey]*shexec.ClientProc + Debug bool + Done bool + InboundRpcErrorSent map[string]time.Time + InboundRpcHandlers map[string]RpcHandler + Lock *sync.Mutex + MainInput *packet.PacketParser + Sender *packet.PacketSender + WriteErrorCh chan bool + WriteErrorChOnce *sync.Once + func (m *MServer) Close() + func (m *MServer) MakeShellStatePacket(reqId string, shellType string, stdinDataCh chan []byte) (*packet.ShellStatePacketType, error) + func (m *MServer) ProcessCommandPacket(pk packet.CommandPacketType) + func (m *MServer) ProcessRpcPacket(pk packet.RpcPacketType) + type ReinitRpcHandler struct + ReqId string + StdinDataCh chan []byte + TimeoutTime time.Time + func (rh *ReinitRpcHandler) DispatchPacket(reqId string, pkArg packet.RpcFollowUpPacketType) + func (rh *ReinitRpcHandler) GetTimeoutTime() time.Time + func (rh *ReinitRpcHandler) UnRegisterCallback() + type RpcHandler interface + DispatchPacket func(reqId string, pk packet.RpcFollowUpPacketType) + GetTimeoutTime func() time.Time + UnRegisterCallback func() + type ShellStateMap struct + CurrentStateMap map[string]string + Lock *sync.Mutex + StateMap map[shellStateMapKey]*packet.ShellState + func MakeShellStateMap() *ShellStateMap + func (sm *ShellStateMap) Clear() + func (sm *ShellStateMap) GetCurrentState(shellType string) (string, *packet.ShellState) + func (sm *ShellStateMap) GetShells() []string + func (sm *ShellStateMap) GetStateByHash(shellType string, hash string) *packet.ShellState + func (sm *ShellStateMap) HasShell(shellType string) bool + func (sm *ShellStateMap) SetCurrentState(shellType string, state *packet.ShellState) error + type WriteFileContext struct + CVar *sync.Cond + Data []*packet.FileDataPacketType + Done bool + Err error + LastActive time.Time + func (wfc *WriteFileContext) DispatchPacket(reqId string, pkArg packet.RpcFollowUpPacketType) + func (wfc *WriteFileContext) GetTimeoutTime() time.Time + func (wfc *WriteFileContext) UnRegisterCallback()