Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExecuteCommandFromArguments

func ExecuteCommandFromArguments(arguments map[string]interface{}) error

    ExecuteCommandFromArguments processes the command from the arguments

    func ParseServices

    func ParseServices(ports []string) ([]policy.Service, error)

      ParseServices parses strings with the services and returns them in an validated slice

      Types

      type CLIRequest

      type CLIRequest struct {
      	// Request is the type of the request
      	Request RequestType
      	// Cgroup is only provided for delete cgroup requests
      	Cgroup string
      	// Executable is the path to the executable
      	Executable string
      	// Parameters are the parameters of the executable
      	Parameters []string
      	// Labels are the user labels attached to the request
      	Labels []string
      	// ServiceName is a user defined service name
      	ServiceName string
      	// ServiceID is the ID of the service
      	ServiceID string
      	// Services are the user defined services (protocol, port)
      	Services []policy.Service
      	// HostPolicy indicates that this is a host policy
      	HostPolicy bool
      	// NetworkOnly indicates that the request is only for traffic coming from the network
      	NetworkOnly bool
      }

        CLIRequest captures all CLI parameters

        type RequestProcessor

        type RequestProcessor struct {
        	LinuxPath string
        	HostPath  string
        }

          RequestProcessor is an instance of the processor

          func NewCustomRequestProcessor

          func NewCustomRequestProcessor(linux, host string) *RequestProcessor

            NewCustomRequestProcessor creates a new request processor

            func NewRequestProcessor

            func NewRequestProcessor() *RequestProcessor

              NewRequestProcessor creates a default request processor

              func (*RequestProcessor) CreateAndRun

              func (r *RequestProcessor) CreateAndRun(c *CLIRequest) error

                CreateAndRun creates a processing unit

                func (*RequestProcessor) Delete

                func (r *RequestProcessor) Delete(c *CLIRequest) error

                  Delete will issue a delete command

                  func (*RequestProcessor) ExecuteRequest

                  func (r *RequestProcessor) ExecuteRequest(c *CLIRequest) error

                    ExecuteRequest executes the command with an RPC request

                    func (*RequestProcessor) ParseCommand

                    func (r *RequestProcessor) ParseCommand(arguments map[string]interface{}) (*CLIRequest, error)

                      ParseCommand parses a command based on the above specification This is a helper function for CLIs like in Trireme Example. Proper use is through the CLIRequest structure

                      type RequestType

                      type RequestType int

                        RequestType is the type of the request

                        const (
                        	// CreateRequest requests a create event
                        	CreateRequest RequestType = iota
                        	// DeleteCgroupRequest requests deletion based on the cgroup - issued by the kernel
                        	DeleteCgroupRequest
                        	// DeleteServiceRequest requests deletion by the service ID
                        	DeleteServiceRequest
                        )

                        Source Files