Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Enforcer ¶
type Enforcer interface { // Enforce starts enforcing policies for the given policy.PUInfo. Enforce(contextID string, puInfo *policy.PUInfo) error // Unenforce stops enforcing policy for the given IP. Unenforce(contextID string) error // GetFilterQueue returns the current FilterQueueConfig. GetFilterQueue() *fqconfig.FilterQueue // GetPortSetInstance returns nil for the proxy GetPortSetInstance() portset.PortSet // Run starts the PolicyEnforcer. Run(ctx context.Context) error // UpdateSecrets -- updates the secrets of running enforcers managed by trireme. Remote enforcers will get the secret updates with the next policy push UpdateSecrets(secrets secrets.Secrets) error }
A Enforcer is an implementation of the enforcer datapath. The interface can be implemented by one or multiple datapaths.
func New ¶
func New( mutualAuthorization bool, fqConfig *fqconfig.FilterQueue, collector collector.EventCollector, service packetprocessor.PacketProcessor, secrets secrets.Secrets, serverID string, validity time.Duration, mode constants.ModeType, procMountPoint string, externalIPCacheTimeout time.Duration, packetLogs bool, ) (Enforcer, error)
New returns a new policy enforcer that implements both the data paths.
func NewWithDefaults ¶
func NewWithDefaults( serverID string, collector collector.EventCollector, service packetprocessor.PacketProcessor, secrets secrets.Secrets, mode constants.ModeType, procMountPoint string, ) Enforcer
NewWithDefaults create a new data path with most things used by default
Directories ¶
Path | Synopsis |
---|---|
Package mockenforcer is a generated GoMock package.
|
Package mockenforcer is a generated GoMock package. |
Package enforcerproxy :: This is the implementation of the RPC client It implements the interface of Trireme Enforcer and forwards these requests to the actual remote enforcer instead of implementing locally
|
Package enforcerproxy :: This is the implementation of the RPC client It implements the interface of Trireme Enforcer and forwards these requests to the actual remote enforcer instead of implementing locally |
utils
|
|
packetgen
Package packetgen "PacketGen" is a Packet Generator library Current version: V1.0, Updates are coming soon
|
Package packetgen "PacketGen" is a Packet Generator library Current version: V1.0, Updates are coming soon |
rpcwrapper/mock
Package mockrpcwrapper is a generated GoMock package.
|
Package mockrpcwrapper is a generated GoMock package. |
Click to show internal directories.
Click to hide internal directories.