descriptor

package
v2.3.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2019 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ACLDescriptorName is descriptor name
	ACLDescriptorName = "vpp-acl"
)
View Source
const (
	// ACLToInterfaceDescriptorName is name for descriptor
	ACLToInterfaceDescriptorName = "vpp-acl-to-interface"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ACLDescriptor

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

ACLDescriptor is descriptor for ACL

func NewACLDescriptor

func NewACLDescriptor(aclHandler vppcalls.ACLVppAPI, ifPlugin ifplugin.API,
	logger logging.PluginLogger) *ACLDescriptor

NewACLDescriptor is constructor for ACL descriptor

func (*ACLDescriptor) Create

func (d *ACLDescriptor) Create(key string, acl *acl.ACL) (metadata *aclidx.ACLMetadata, err error)

Create configures ACL

func (*ACLDescriptor) Delete

func (d *ACLDescriptor) Delete(key string, acl *acl.ACL, metadata *aclidx.ACLMetadata) error

Delete deletes ACL

func (*ACLDescriptor) DerivedValues

func (d *ACLDescriptor) DerivedValues(key string, value *acl.ACL) (derived []api.KeyValuePair)

DerivedValues returns list of derived values for ACL.

func (*ACLDescriptor) EquivalentACLs

func (d *ACLDescriptor) EquivalentACLs(key string, oldACL, newACL *acl.ACL) bool

EquivalentACLs compares two ACLs

func (*ACLDescriptor) GetDescriptor

func (d *ACLDescriptor) GetDescriptor() *adapter.ACLDescriptor

GetDescriptor returns descriptor suitable for registration (via adapter) with the KVScheduler.

func (*ACLDescriptor) Retrieve

func (d *ACLDescriptor) Retrieve(correlate []adapter.ACLKVWithMetadata) (
	acls []adapter.ACLKVWithMetadata, err error,
)

Retrieve returns list of configured ACLs with metadata.

func (*ACLDescriptor) Update

func (d *ACLDescriptor) Update(key string, oldACL, newACL *acl.ACL, oldMetadata *aclidx.ACLMetadata) (newMetadata *aclidx.ACLMetadata, err error)

Update modifies ACL

func (*ACLDescriptor) UpdateWithRecreate

func (d *ACLDescriptor) UpdateWithRecreate(key string, oldACL, newACL *acl.ACL, metadata *aclidx.ACLMetadata) bool

UpdateWithRecreate checks if modification requires recreation

type ACLToInterfaceDescriptor

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

ACLToInterfaceDescriptor represents assignment of ACL to interface.

func NewACLToInterfaceDescriptor

func NewACLToInterfaceDescriptor(aclIndex aclidx.ACLMetadataIndex, aclHandler vppcalls.ACLVppAPI,
	log logging.PluginLogger) *ACLToInterfaceDescriptor

NewACLToInterfaceDescriptor returns new ACLInterface descriptor

func (*ACLToInterfaceDescriptor) Create

func (d *ACLToInterfaceDescriptor) Create(key string, emptyVal proto.Message) (metadata kvs.Metadata, err error)

Create binds interface to ACL.

func (*ACLToInterfaceDescriptor) Delete

func (d *ACLToInterfaceDescriptor) Delete(key string, emptyVal proto.Message, metadata kvs.Metadata) error

Delete unbinds interface from ACL.

func (*ACLToInterfaceDescriptor) Dependencies

func (d *ACLToInterfaceDescriptor) Dependencies(key string, emptyVal proto.Message) []kvs.Dependency

Dependencies lists the interface as the only dependency for the binding.

func (*ACLToInterfaceDescriptor) GetDescriptor

func (d *ACLToInterfaceDescriptor) GetDescriptor() *kvs.KVDescriptor

GetDescriptor returns descriptor suitable for registration with the KVScheduler.

func (*ACLToInterfaceDescriptor) IsACLInterfaceKey

func (d *ACLToInterfaceDescriptor) IsACLInterfaceKey(key string) bool

IsACLInterfaceKey returns true if the key is identifying ACL interface (derived value)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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