cli

package
v0.0.0-...-32e759c Latest Latest
Warning

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

Go to latest
Published: May 13, 2024 License: MPL-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrTargetNotSupported = errors.New("component not found")
	ErrInstallUserQuit    = errors.New("user denied installation")
	ErrExitCodeValue      = errors.New("exit code not 0")
	ErrSysInfoFail        = errors.New("could not determine necessary details about operating system")
)
View Source
var ErrFileHasNotBeenSignedYet = errors.New("enclave has not been signed yet with 'ego sign'")

ErrFileHasNotBeenSignedYet is returned when the enclave has not been signed yet with 'ego sign', which would create a non-functional bundle.

View Source
var ErrFileIsAlreadyBundled = errors.New("file is already bundled")

ErrFileIsAlreadyBundled is returned when the file is already bundled. Technically, the outer binary is not an enclave either, but this is a more specific error.

View Source
var ErrFileIsNotAnEGoBinary = errors.New("file is not an EGo Binary")

ErrFileIsNotAnEGoBinary is returned when the file is not an enclave, therefore cannot possibly be bundled.

View Source
var ErrLargeHeapWithSmallHeapSize = errors.New("large heap is enabled, but heapSize is too small")

ErrLargeHeapWithSmallHeapSize is returned when a binary is built with ego_largehap, but the heap size is set to less than 512MB.

View Source
var ErrNoLargeHeapWithLargeHeapSize = errors.New("this heapSize requires large heap mode")

ErrNoLargeHeapWithLargeHeapSize is returned when a binary is built without ego_largeheap, but the heap size is set to more than 16GB.

View Source
var ErrNoOEInfo = errors.New("could not find .oeinfo section")

ErrNoOEInfo defines an error when no .oeinfo section could be found. This likely occurs when the binary to sign was not built with ego-go.

View Source
var ErrUnsupportedImportEClient = errors.New("unsupported import: github.com/edgelesssys/ego/eclient")

ErrErrUnsupportedImportEClient is returned when an EGo binary uses the eclient package instead of the enclave package.

Functions

This section is empty.

Types

type Cli

type Cli struct {
	// contains filtered or unexported fields
}

Cli implements the ego commands.

func NewCli

func NewCli(runner launch.Runner, fs afero.Fs) *Cli

NewCli creates a new Cli object.

func (*Cli) Bundle

func (c *Cli) Bundle(filename string, outputFilename string) (reterr error)

Bundle bundles an enclave with the currently installed EGo runtime into a single executable.

func (*Cli) Env

func (c *Cli) Env(filename string, args []string) int

Env runs a command in the EGo environment.

func (*Cli) Install

func (c *Cli) Install(ask func(string) bool, component string) error

Determine relevant information about os and sgx compatibility. Then pass them with osDetails to install

func (*Cli) Marblerun

func (c *Cli) Marblerun(filename string) (int, error)

Marblerun runs a signed executable as a MarbleRun Marble.

func (*Cli) Run

func (c *Cli) Run(filename string, args []string) (int, error)

Run runs a signed executable in standalone mode.

func (*Cli) Sign

func (c *Cli) Sign(filename string) error

Sign signs an executable built with ego-go.

func (*Cli) Signerid

func (c *Cli) Signerid(path string) (string, error)

Signerid returns the SignerID of a signed executable.

func (*Cli) Uniqueid

func (c *Cli) Uniqueid(path string) (string, error)

Uniqueid returns the UniqueID of a signed executable.

Jump to

Keyboard shortcuts

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