controller

package
v0.0.0-...-89d5bac Latest Latest
Warning

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

Go to latest
Published: May 2, 2020 License: AGPL-3.0, AGPL-3.0-or-later Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Controller

type Controller interface {
	WithSyscallTrace(io.Writer)
	Streams() (*io.PipeWriter, *io.PipeReader, *io.PipeReader)
	SetStreams(*io.PipeWriter, *io.PipeReader, *io.PipeReader)
	Pid() int
	SetPid(int)

	Activate() error
	Attach() error
	Detach() error
	End() error
	Restore() error

	TakeCheckpoint() error
	InitialCheckpoint() (*state.State, error)
	Checkpoints() []*state.State
	State() (*state.State, error)

	SendFunction(function string) error
	SendRequest(request interface{}) (interface{}, error)

	AwaitMessage(messageType string) Message
	SendMessage(messageType string, data interface{}) error

	AwaitSignal(waitingFor syscall.Signal)
	PauseAtSignal(waitingFor syscall.Signal)

	Continue()
	ContinueWith(signal syscall.Signal)
	ContinueTid(tid int, signal syscall.Signal)
	SendSignalCont(signal syscall.Signal) error
	SendSignal(signal syscall.Signal) error

	Stop() error
	SetRegs(state *state.State) error
	ClearMemRefs() error
}

func NewController

func NewController() Controller

type Message

type Message struct {
	Type string      `json:"type"`
	Data interface{} `json:"data"`
}

type Streams

type Streams struct {
	Stdin  *io.PipeWriter
	Stdout *io.PipeReader
	Stderr *io.PipeReader
}

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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