Versions in this module Expand all Collapse all v3 v3.29.0 Nov 8, 2024 Changes in this version + func DefaultToPtr[T any](ptr *T, defaultV T) *T v3.28.0 May 31, 2024 v3.27.0 Dec 19, 2023 Changes in this version + const BaseVppSideHardwareAddress + const DefaultPhysicalNetworkName + var VppHostPuntFakeGatewayAddress = net.ParseIP("169.254.0.1") type CalicoVppInitialConfigConfigType + RedirectToHostRules []RedirectToHostRulesConfigType + type RedirectToHostRulesConfigType struct + Ip string + Port uint16 + Proto types.IPProto + type UnsafeNoIommuMode string + const VFIO_UNSAFE_NO_IOMMU_MODE_DISABLED + const VFIO_UNSAFE_NO_IOMMU_MODE_NO + const VFIO_UNSAFE_NO_IOMMU_MODE_YES type UplinkInterfaceSpec + func (u *UplinkInterfaceSpec) GetVppSideHardwareAddress() net.HardwareAddr + func (u *UplinkInterfaceSpec) SetUplinkInterfaceIndex(uplinkInterfaceIndex int) type VppManagerParams + InitialVfioEnableUnsafeNoIommuMode UnsafeNoIommuMode v3.26.1 Dec 18, 2023 v3.26.0 Jun 21, 2023 Changes in this version + var AllHooks = []*string + var BGPLogLevel = EnvVar("CALICOVPP_BGP_LOG_LEVEL", apipb.SetLogLevelRequest_INFO, BGPLogLevelParse) + var CalicoVppGracefulShutdownTimeout = EnvVar("CALICOVPP_GRACEFUL_SHUTDOWN_TIMEOUT", 10 * time.Second, time.ParseDuration) + var DEFAULT_HOOK_SCRIPT string + var HookScriptBeforeIfRead = StringEnvVar("CALICOVPP_HOOK_BEFORE_IF_READ", DEFAULT_HOOK_SCRIPT) + var HookScriptBeforeVppRun = StringEnvVar("CALICOVPP_HOOK_BEFORE_VPP_RUN", DEFAULT_HOOK_SCRIPT) + var HookScriptVppDoneOk = StringEnvVar("CALICOVPP_HOOK_VPP_DONE_OK", DEFAULT_HOOK_SCRIPT) + var HookScriptVppErrored = StringEnvVar("CALICOVPP_HOOK_VPP_ERRORED", DEFAULT_HOOK_SCRIPT) + var HookScriptVppRunning = StringEnvVar("CALICOVPP_HOOK_VPP_RUNNING", DEFAULT_HOOK_SCRIPT) + func BGPLogLevelParse(lvl string) (apipb.SetLogLevelRequest_Level, error) + func RunHook(hookScript *string, hookName string, params *VppManagerParams, ...) + type PhysicalNetwork struct + PodVrfId uint32 + VrfId uint32 type UplinkInterfaceSpec + PhysicalNetworkName string type UplinkStatus + FakeNextHopIP4 net.IP + FakeNextHopIP6 net.IP + PhysicalNetworkName string type VppManagerInfo + PhysicalNets map[string]PhysicalNetwork v3.25.1 Feb 28, 2023 Changes in this version + const CNIServerSocket + const CalicoVppPidFile + const CalicoVppVersionFile + const CniServerStateFile + const DRIVER_I40E + const DRIVER_ICE + const DRIVER_MLX5_CORE + const DRIVER_UIO_PCI_GENERIC + const DRIVER_VFIO_PCI + const DRIVER_VIRTIO_PCI + const DRIVER_VMXNET3 + const DefaultEncapSize + const DefaultVXLANPort + const DefaultVXLANVni + const DefaultWireguardPort + const FelixDataplaneSocket + const Ready + const Starting + const VppAPISocket + const VppApiSocket + const VppConfigExecFile + const VppConfigFile + const VppManagerInfoFile + const VppNetnsName + const VppPath + const VppSigKillTimeout + var CalicoVppDebug = JsonEnvVar("CALICOVPP_DEBUG", &CalicoVppDebugConfigType{}) + var CalicoVppFeatureGates = JsonEnvVar("CALICOVPP_FEATURE_GATES", &CalicoVppFeatureGatesConfigType{}) + var CalicoVppInitialConfig = JsonEnvVar("CALICOVPP_INITIAL_CONFIG", &CalicoVppInitialConfigConfigType{}) + var CalicoVppInterfaces = JsonEnvVar("CALICOVPP_INTERFACES", &CalicoVppInterfacesConfigType{}) + var CalicoVppIpsec = JsonEnvVar("CALICOVPP_IPSEC", &CalicoVppIpsecConfigType{}) + var CalicoVppSrv6 = JsonEnvVar("CALICOVPP_SRV6", &CalicoVppSrv6ConfigType{}) + var ConfigExecTemplate = StringEnvVar("CALICOVPP_CONFIG_EXEC_TEMPLATE", "") + var ConfigTemplate = RequiredStringEnvVar("CALICOVPP_CONFIG_TEMPLATE") + var False = false + var IPSecIkev2Psk = StringEnvVar("CALICOVPP_IPSEC_IKEV2_PSK", "") + var Info = &VppManagerInfo + var InitScriptTemplate = StringEnvVar("CALICOVPP_INIT_SCRIPT_TEMPLATE", "") + var InterfaceVar = StringEnvVar("CALICOVPP_INTERFACE", "") + var LogFormat = StringEnvVar("CALICOVPP_LOG_FORMAT", "") + var LogLevel = EnvVar("CALICOVPP_LOG_LEVEL", logrus.InfoLevel, logrus.ParseLevel) + var NativeDriver = StringEnvVar("CALICOVPP_NATIVE_DRIVER", "") + var NodeName = RequiredStringEnvVar("NODENAME") + var ServiceCIDRs = PrefixListEnvVar("SERVICE_PREFIX") + var SwapDriver = StringEnvVar("CALICOVPP_SWAP_DRIVER", "") + var True = true + func AddrEnvVar(varName string, defaultValue net.IP) *net.IP + func AddrListEnvVar(varName string) *[]net.IP + func BoolEnvVar(varName string, defaultValue bool) *bool + func EnvVar(varName string, defaultValue T, parser func(string) (T, error)) *T + func IntEnvVar(varName string, defaultValue int) *int + func JsonEnvVar(varName string, defaultValue T) *T + func LoadConfig(log *logrus.Logger) (err error) + func LoadConfigSilent(log *logrus.Logger) (err error) + func ParseAllEnvVars() []error + func ParseEnvVars(varNames ...string) []error + func PrefixEnvVar(varName string) *net.IPNet + func PrefixListEnvVar(varName string) *[]*net.IPNet + func PrintAgentConfig(log *logrus.Logger) + func PrintEnvVarConfig(log *logrus.Logger) + func RequiredAddrEnvVar(varName string) *net.IP + func RequiredAddrListEnvVar(varName string) *[]net.IP + func RequiredEnvVar(varName string, defaultValue T, parser func(string) (T, error)) *T + func RequiredPrefixEnvVar(varName string) *net.IPNet + func RequiredPrefixListEnvVar(varName string) *[]*net.IPNet + func RequiredStringEnvVar(varName string) *string + func StringEnvVar(varName string, defaultValue string) *string + func StringListEnvVar(varName string, defaultValue []string) *[]string + func TemplateScriptReplace(input string, params *VppManagerParams, conf []*LinuxInterfaceState) (template string) + func Uint16EnvVar(varName string, defaultValue uint16) *uint16 + func Uint32EnvVar(varName string, defaultValue uint32) *uint32 + type CalicoVppDebugConfigType struct + GSOEnabled *bool + MaglevEnabled *bool + PoliciesEnabled *bool + ServicesEnabled *bool + func GetCalicoVppDebug() *CalicoVppDebugConfigType + func (self *CalicoVppDebugConfigType) String() string + func (self *CalicoVppDebugConfigType) Validate() (err error) + type CalicoVppFeatureGatesConfigType struct + IPSecEnabled *bool + MemifEnabled *bool + MultinetEnabled *bool + SRv6Enabled *bool + VCLEnabled *bool + func GetCalicoVppFeatureGates() *CalicoVppFeatureGatesConfigType + func (self *CalicoVppFeatureGatesConfigType) String() string + func (self *CalicoVppFeatureGatesConfigType) Validate() (err error) + type CalicoVppInitialConfigConfigType struct + CorePattern string + DefaultGWs string + ExtraAddrCount int + IfConfigSavePath string + VppStartupSleepSeconds int + func GetCalicoVppInitialConfig() *CalicoVppInitialConfigConfigType + func (self *CalicoVppInitialConfigConfigType) GetDefaultGWs() (gws []net.IP, err error) + func (self *CalicoVppInitialConfigConfigType) String() string + func (self *CalicoVppInitialConfigConfigType) Validate() (err error) + type CalicoVppInterfacesConfigType struct + DefaultPodIfSpec *InterfaceSpec + MaxPodIfSpec *InterfaceSpec + UplinkInterfaces []UplinkInterfaceSpec + VppHostTapSpec *InterfaceSpec + func GetCalicoVppInterfaces() *CalicoVppInterfacesConfigType + func (self *CalicoVppInterfacesConfigType) String() string + func (self *CalicoVppInterfacesConfigType) Validate() (err error) + type CalicoVppIpsecConfigType struct + CrossIpsecTunnels *bool + ExtraAddresses int + IpsecNbAsyncCryptoThread int + func GetCalicoVppIpsec() *CalicoVppIpsecConfigType + func (self *CalicoVppIpsecConfigType) GetIpsecAddressCount() int + func (self *CalicoVppIpsecConfigType) GetIpsecNbAsyncCryptoThread() int + func (self *CalicoVppIpsecConfigType) String() string + func (self *CalicoVppIpsecConfigType) Validate() (err error) + type CalicoVppSrv6ConfigType struct + LocalsidPool string + PolicyPool string + func GetCalicoVppSrv6() *CalicoVppSrv6ConfigType + func (self *CalicoVppSrv6ConfigType) String() string + func (self *CalicoVppSrv6ConfigType) Validate() (err error) + type EnvVarParser struct + type InterfaceSpec struct + IsL3 *bool + NumRxQueues int + NumTxQueues int + RxMode types.RxMode + RxQueueSize int + TxQueueSize int + func (i *InterfaceSpec) GetBuffersNeeded() uint64 + func (i *InterfaceSpec) GetIsL3(isMemif bool) bool + func (i *InterfaceSpec) GetRxModeWithDefault(defaultRxMode types.RxMode) types.RxMode + func (i *InterfaceSpec) String() string + func (i *InterfaceSpec) Validate(maxIfSpec *InterfaceSpec) error + type KernelVersion struct + Kernel int + Major int + Minor int + Patch int + func (ver *KernelVersion) IsAtLeast(other *KernelVersion) bool + func (ver *KernelVersion) String() string + type LinuxInterfaceState struct + Addresses []netlink.Addr + DoSwapDriver bool + Driver string + HardwareAddr net.HardwareAddr + Hasv4 bool + Hasv6 bool + InterfaceName string + IsTunTap bool + IsUp bool + IsVeth bool + Mtu int + NodeIP4 string + NodeIP6 string + NumRxQueues int + NumTxQueues int + PciId string + PromiscOn bool + Routes []netlink.Route + func (c *LinuxInterfaceState) AddressString() string + func (c *LinuxInterfaceState) RouteString() string + func (c *LinuxInterfaceState) SortRoutes() + type UplinkInterfaceSpec struct + Annotations map[string]string + InterfaceName string + IsMain *bool + Mtu int + NewDriverName string + SwIfIndex uint32 + VppDriver string + func (u *UplinkInterfaceSpec) GetIsMain() bool + func (u *UplinkInterfaceSpec) String() string + func (u *UplinkInterfaceSpec) Validate(maxIfSpec *InterfaceSpec, isMain bool) (err error) + type UplinkStatus struct + IsMain bool + LinkIndex int + Mtu int + Name string + SwIfIndex uint32 + TapSwIfIndex uint32 + type Validable interface + Validate func() error + type VppManagerInfo struct + FakeNextHopIP4 net.IP + FakeNextHopIP6 net.IP + Status vppManagerStatus + UplinkStatuses []UplinkStatus + func (i *VppManagerInfo) GetMainSwIfIndex() uint32 + type VppManagerParams struct + AvailableHugePages int + KernelVersion *KernelVersion + LoadedDrivers map[string]bool + NodeAnnotations map[string]string + UplinksSpecs []UplinkInterfaceSpec + VfioUnsafeiommu bool