Documentation ¶
Overview ¶
Package pinhole provides networkservice.NetworkService{Client,Server} chain elements for ensuring remote mechanism packets get through any ACLs
Index ¶
- func DeleteExtra(ctx context.Context, isClient bool)
- func NewClient(vppConn api.Connection, opts ...Option) networkservice.NetworkServiceClient
- func NewServer(vppConn api.Connection, opts ...Option) networkservice.NetworkServiceServer
- func StoreExtra(ctx context.Context, isClient bool, ipPort *IPPort)
- type IPPort
- type Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeleteExtra ¶ added in v1.7.0
DeleteExtra deletes an extra IPPort stored in per Connection.Id metadata
func NewClient ¶
func NewClient(vppConn api.Connection, opts ...Option) networkservice.NetworkServiceClient
NewClient - returns a new client that will set an ACL permitting remote protocols packets through if and only if there's an ACL on the interface
func NewServer ¶
func NewServer(vppConn api.Connection, opts ...Option) networkservice.NetworkServiceServer
NewServer - returns a new client that will set an ACL permitting remote protocols packets through if and only if there's an ACL on the interface
Types ¶
type IPPort ¶ added in v1.7.0
type IPPort struct {
// contains filtered or unexported fields
}
IPPort stores IP and port for an ACL rule
func LoadExtra ¶ added in v1.7.0
LoadExtra returns an extra IPPort stored in per Connection.Id metadata, or nil if no value is present. The ok result indicates whether value was found in the per Connection.Id metadata.
type Option ¶ added in v1.7.0
type Option func(*option)
Option - options for the pinhole chain element
func WithSharedMutex ¶ added in v1.7.0
WithSharedMutex - set shared mutex between client and server chain elements. This is necessary because the pinhole chain element dumps VPP, performs some manipulations and reassign ACL rules. Possible data race.