Documentation ¶
Index ¶
- Variables
- type ChangeVppSvc
- type Config
- type Deps
- type GetVppSvc
- func (svc *GetVppSvc) DumpARPs(ctx context.Context, request *rpc.DumpRequest) (*rpc.ARPsResponse, error)
- func (svc *GetVppSvc) DumpAcls(ctx context.Context, request *rpc.DumpRequest) (*rpc.AclResponse, error)
- func (svc *GetVppSvc) DumpBDs(ctx context.Context, request *rpc.DumpRequest) (*rpc.BDResponse, error)
- func (svc *GetVppSvc) DumpFIBs(ctx context.Context, request *rpc.DumpRequest) (*rpc.FibResponse, error)
- func (svc *GetVppSvc) DumpIPSecSAs(ctx context.Context, request *rpc.DumpRequest) (*rpc.IPSecSAResponse, error)
- func (svc *GetVppSvc) DumpIPSecSPDs(ctx context.Context, request *rpc.DumpRequest) (*rpc.IPSecSPDResponse, error)
- func (svc *GetVppSvc) DumpIPSecTunnels(ctx context.Context, request *rpc.DumpRequest) (*rpc.IPSecTunnelResponse, error)
- func (svc *GetVppSvc) DumpInterfaces(ctx context.Context, request *rpc.DumpRequest) (*rpc.InterfaceResponse, error)
- func (svc *GetVppSvc) DumpLinuxARPs(ctx context.Context, request *rpc.DumpRequest) (*rpc.LinuxARPsResponse, error)
- func (svc *GetVppSvc) DumpLinuxInterfaces(ctx context.Context, request *rpc.DumpRequest) (*rpc.LinuxInterfaceResponse, error)
- func (svc *GetVppSvc) DumpLinuxRoutes(ctx context.Context, request *rpc.DumpRequest) (*rpc.LinuxRoutesResponse, error)
- func (svc *GetVppSvc) DumpPunt(ctx context.Context, request *rpc.DumpRequest) (*rpc.PuntResponse, error)
- func (svc *GetVppSvc) DumpRoutes(ctx context.Context, request *rpc.DumpRequest) (*rpc.RoutesResponse, error)
- func (svc *GetVppSvc) DumpXConnects(ctx context.Context, request *rpc.DumpRequest) (*rpc.XcResponse, error)
- type NotificationSvc
- type Option
- type Plugin
- type ResyncVppSvc
Constants ¶
This section is empty.
Variables ¶
var DefaultPlugin = *NewPlugin()
DefaultPlugin is default instance of Plugin
Functions ¶
This section is empty.
Types ¶
type ChangeVppSvc ¶
type ChangeVppSvc struct {
// contains filtered or unexported fields
}
ChangeVppSvc forwards GRPC request to the localclient.
func (*ChangeVppSvc) Del ¶
func (svc *ChangeVppSvc) Del(ctx context.Context, data *rpc.DataRequest) (*rpc.DelResponse, error)
Del removes configuration data present in data request from the VPP/linux
func (*ChangeVppSvc) Put ¶
func (svc *ChangeVppSvc) Put(ctx context.Context, data *rpc.DataRequest) (*rpc.PutResponse, error)
Put adds configuration data present in data request to the VPP/Linux
type Config ¶ added in v1.8.1
type Config struct {
Broker string `json:"persistence-db"`
}
Config groups configurations fields.
type Deps ¶ added in v1.8.1
type Deps struct { infra.PluginDeps GRPCServer grpc.Server Brokers map[string]keyval.KvProtoPlugin ServiceLabel servicelabel.ReaderAPI GoVppmux govppmux.TraceAPI VPP vpp.API Linux linux.API }
Deps - dependencies of Plugin
type GetVppSvc ¶ added in v1.8.1
type GetVppSvc struct {
// contains filtered or unexported fields
}
GetVppSvc uses VPP/Linux plugin handlers to read VPP configuration
func (*GetVppSvc) DumpARPs ¶ added in v1.8.1
func (svc *GetVppSvc) DumpARPs(ctx context.Context, request *rpc.DumpRequest) (*rpc.ARPsResponse, error)
DumpARPs reads VPP ARPs and returns them as an *ARPsResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpAcls ¶ added in v1.8.1
func (svc *GetVppSvc) DumpAcls(ctx context.Context, request *rpc.DumpRequest) (*rpc.AclResponse, error)
DumpAcls reads IP/MACIP access lists and returns them as an *AclResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpBDs ¶ added in v1.8.1
func (svc *GetVppSvc) DumpBDs(ctx context.Context, request *rpc.DumpRequest) (*rpc.BDResponse, error)
DumpBDs reads bridge domains and returns them as an *BDResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpFIBs ¶ added in v1.8.1
func (svc *GetVppSvc) DumpFIBs(ctx context.Context, request *rpc.DumpRequest) (*rpc.FibResponse, error)
DumpFIBs reads FIBs and returns them as an *FibResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpIPSecSAs ¶ added in v1.8.1
func (svc *GetVppSvc) DumpIPSecSAs(ctx context.Context, request *rpc.DumpRequest) (*rpc.IPSecSAResponse, error)
DumpIPSecSAs reads IPSec SA and returns them as an *IPSecSAResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpIPSecSPDs ¶ added in v1.8.1
func (svc *GetVppSvc) DumpIPSecSPDs(ctx context.Context, request *rpc.DumpRequest) (*rpc.IPSecSPDResponse, error)
DumpIPSecSPDs reads IPSec SPD and returns them as an *IPSecSPDResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpIPSecTunnels ¶ added in v1.8.1
func (svc *GetVppSvc) DumpIPSecTunnels(ctx context.Context, request *rpc.DumpRequest) (*rpc.IPSecTunnelResponse, error)
DumpIPSecTunnels reads IPSec tunnels and returns them as an *IPSecTunnelResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpInterfaces ¶ added in v1.8.1
func (svc *GetVppSvc) DumpInterfaces(ctx context.Context, request *rpc.DumpRequest) (*rpc.InterfaceResponse, error)
DumpInterfaces reads interfaces and returns them as an *InterfaceResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpLinuxARPs ¶ added in v1.8.1
func (svc *GetVppSvc) DumpLinuxARPs(ctx context.Context, request *rpc.DumpRequest) (*rpc.LinuxARPsResponse, error)
DumpLinuxARPs reads linux ARPs and returns them as an *LinuxARPsResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpLinuxInterfaces ¶ added in v1.8.1
func (svc *GetVppSvc) DumpLinuxInterfaces(ctx context.Context, request *rpc.DumpRequest) (*rpc.LinuxInterfaceResponse, error)
DumpLinuxInterfaces reads linux interfaces and returns them as an *LinuxInterfaceResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpLinuxRoutes ¶ added in v1.8.1
func (svc *GetVppSvc) DumpLinuxRoutes(ctx context.Context, request *rpc.DumpRequest) (*rpc.LinuxRoutesResponse, error)
DumpLinuxRoutes reads linux routes and returns them as an *LinuxRoutesResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpPunt ¶ added in v1.8.1
func (svc *GetVppSvc) DumpPunt(ctx context.Context, request *rpc.DumpRequest) (*rpc.PuntResponse, error)
DumpPunt reads VPP Punt socket registrations and returns them as an *PuntResponse.
func (*GetVppSvc) DumpRoutes ¶ added in v1.8.1
func (svc *GetVppSvc) DumpRoutes(ctx context.Context, request *rpc.DumpRequest) (*rpc.RoutesResponse, error)
DumpRoutes reads VPP routes and returns them as an *RoutesResponse. If reading ends up with error, only error is send back in response
func (*GetVppSvc) DumpXConnects ¶ added in v1.8.1
func (svc *GetVppSvc) DumpXConnects(ctx context.Context, request *rpc.DumpRequest) (*rpc.XcResponse, error)
DumpXConnects reads cross connects and returns them as an *XcResponse. If reading ends up with error, only error is send back in response
type NotificationSvc ¶
type NotificationSvc struct {
// contains filtered or unexported fields
}
NotificationSvc forwards GRPC messages to external servers.
func (*NotificationSvc) Get ¶
func (svc *NotificationSvc) Get(from *rpc.NotificationRequest, server rpc.NotificationService_GetServer) error
Get returns all required VPP notifications (or those available in the buffer) in the same order as they were received
type Option ¶ added in v1.8.1
type Option func(*Plugin)
Option is a function that acts on a Plugin to inject Dependencies or configuration
type Plugin ¶ added in v1.8.1
type Plugin struct { Deps // contains filtered or unexported fields }
Plugin registers VPP GRPC services in *grpc.Server.
type ResyncVppSvc ¶
type ResyncVppSvc struct {
// contains filtered or unexported fields
}
ResyncVppSvc forwards GRPC request to the localclient.
func (*ResyncVppSvc) Resync ¶
func (svc *ResyncVppSvc) Resync(ctx context.Context, data *rpc.DataRequest) (*rpc.ResyncResponse, error)
Resync creates a resync request which adds data tp the VPP/linux