applicationproxy

package
v10.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Jul 5, 2018 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AppProxy

type AppProxy struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

AppProxy maintains state for proxies connections from listen to backend.

func NewAppProxy

NewAppProxy creates a new instance of the application proxy.

func (*AppProxy) Enforce

func (p *AppProxy) Enforce(ctx context.Context, puID string, puInfo *policy.PUInfo) error

Enforce implements enforcer.Enforcer interface. It will will create the necessary proxies for the particular PU.

func (*AppProxy) GetFilterQueue

func (p *AppProxy) GetFilterQueue() *fqconfig.FilterQueue

GetFilterQueue is a stub for TCP proxy

func (*AppProxy) GetPortSetInstance

func (p *AppProxy) GetPortSetInstance() portset.PortSet

GetPortSetInstance returns nil for the proxy

func (*AppProxy) Run

func (p *AppProxy) Run(ctx context.Context) error

Run starts all the network side proxies. Application side proxies will have to start during enforce in order to support multiple Linux processes.

func (*AppProxy) Unenforce

func (p *AppProxy) Unenforce(ctx context.Context, puID string) error

Unenforce implements enforcer.Enforcer interface. It will shutdown the app side of the proxy.

func (*AppProxy) UpdateSecrets

func (p *AppProxy) UpdateSecrets(secret secrets.Secrets) error

UpdateSecrets updates the secrets of running enforcers managed by trireme. Remote enforcers will get the secret updates with the next policy push.

type ServerInterface

type ServerInterface interface {
	RunNetworkServer(ctx context.Context, l net.Listener, encrypted bool) error
	UpdateSecrets(cert *tls.Certificate, ca *x509.CertPool, secrets secrets.Secrets, certPEM, keyPEM string)
	ShutDown() error
}

ServerInterface describes the methods required by an application processor.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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