ipc

package
v0.0.0-...-83e92ab Latest Latest
Warning

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

Go to latest
Published: Nov 23, 2015 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FlagDebug      = uint64(1) << iota // debug output from executor
	FlagCover                          // collect coverage
	FlagThreaded                       // use multiple threads to mitigate blocked syscalls
	FlagCollide                        // collide syscalls to provoke data races
	FlagDedupCover                     // deduplicate coverage in executor
	FlagDropPrivs                      // impersonate nobody user
	FlagStrace                         // run executor under strace
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Env

type Env struct {
	In  []byte
	Out []byte

	StatExecs    uint64
	StatRestarts uint64
	// contains filtered or unexported fields
}

func MakeEnv

func MakeEnv(bin string, timeout time.Duration, flags uint64) (*Env, error)

func (*Env) Close

func (env *Env) Close() error

func (*Env) Exec

func (env *Env) Exec(p *prog.Prog) (output, strace []byte, cov [][]uint32, failed, hanged bool, err0 error)

Exec starts executor binary to execute program p and returns information about the execution: output: process output strace: strace output if env is created with FlagStrace cov: per-call coverage, len(cov) == len(p.Calls) failed: true if executor has detected a kernel bug hanged: program hanged and was killed err0: failed to start process, or executor has detected a logical error

Jump to

Keyboard shortcuts

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