diff --git a/api/pkg/apis/projectcalico/v3/felixconfig.go b/api/pkg/apis/projectcalico/v3/felixconfig.go index bb62c894357..4e38f83dd68 100644 --- a/api/pkg/apis/projectcalico/v3/felixconfig.go +++ b/api/pkg/apis/projectcalico/v3/felixconfig.go @@ -611,6 +611,40 @@ type FelixConfigurationSpec struct { // [Default: Auto] BPFConntrackCleanupMode *BPFConntrackMode `json:"bpfConntrackMode,omitempty" validate:"omitempty,oneof=Auto Userspace BPFProgram"` + // BPFConntrackTimers overides the default values for the specified conntrack timer if + // set. It is a key-value make, where each value can be either a duration or `auto` to + // pick the value from a Linux conntrack timeout. + // + // Possible values for the keys are: CreationGracePeriod, TCPPreEstablished, + // TCPEstablished, TCPFinsSeen, TCPResetSeen, UDPLastSeen, GenericIPLastSeen, + // ICMPLastSeen. + // + // Unset or incorrect values are replaced by the default values with a warning log for + // incorrect values. + // + // Current auto mappings: + // + // TCPPreEstablished: nf_conntrack_tcp_timeout_syn_sent + // TCPEstablished: nf_conntrack_tcp_timeout_established + // TCPFinsSeen: nf_conntrack_tcp_timeout_time_wait + // GenericIPLastSeen: nf_conntrack_generic_timeout + // ICMPLastSeen: nf_conntrack_icmp_timeout + // + // If there is no mapping, 'auto' is replaced by the default value. + // + // [Default: + // CreationGracePeriod: 10s + // TCPPreEstablished: 20s + // TCPEstablished: 1h + // TCPFinsSeen: auto (30s is default) + // TCPResetSeen: 40s + // UDPLastSeen: 60s + // GenericIPLastSeen: 10m + // ICMPLastSeen: 5s + // ] + // +optional + BPFConntrackTimeouts *BPFConntrackTimeouts `json:"bpfConntrackTimeouts,omitempty" validate:"omitempty"` + // BPFLogFilters is a map of key=values where the value is // a pcap filter expression and the key is an interface name with 'all' // denoting all interfaces, 'weps' all workload endpoints and 'heps' all host @@ -941,6 +975,20 @@ type ProtoPort struct { Net string `json:"net,omitempty"` } +// +kubebuilder:validation:Pattern=`^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$` +type BPFConntrackTimeout string + +type BPFConntrackTimeouts struct { + CreationGracePeriod *BPFConntrackTimeout `json:"creationGracePeriod,omitempty"` + TCPPreEstablished *BPFConntrackTimeout `json:"tcpPreEstablished,omitempty"` + TCPEstablished *BPFConntrackTimeout `json:"tcpEstablished,omitempty"` + TCPFinsSeen *BPFConntrackTimeout `json:"tcpFinsSeen,omitempty"` + TCPResetSeen *BPFConntrackTimeout `json:"tcpResetSeen,omitempty"` + UDPLastSeen *BPFConntrackTimeout `json:"udpLastSeen,omitempty"` + GenericIPLastSeen *BPFConntrackTimeout `json:"genericIPLastSeen,omitempty"` + ICMPLastSeen *BPFConntrackTimeout `json:"icmpLastSeen,omitempty"` +} + // New FelixConfiguration creates a new (zeroed) FelixConfiguration struct with the TypeMetadata // initialized to the current version. func NewFelixConfiguration() *FelixConfiguration { diff --git a/api/pkg/apis/projectcalico/v3/zz_generated.deepcopy.go b/api/pkg/apis/projectcalico/v3/zz_generated.deepcopy.go index cd872dde573..39038732cf1 100644 --- a/api/pkg/apis/projectcalico/v3/zz_generated.deepcopy.go +++ b/api/pkg/apis/projectcalico/v3/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ //go:build !ignore_autogenerated // +build !ignore_autogenerated -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by deepcopy-gen. DO NOT EDIT. @@ -499,6 +499,62 @@ func (in *BGPPeerSpec) DeepCopy() *BGPPeerSpec { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *BPFConntrackTimeouts) DeepCopyInto(out *BPFConntrackTimeouts) { + *out = *in + if in.CreationGracePeriod != nil { + in, out := &in.CreationGracePeriod, &out.CreationGracePeriod + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.TCPPreEstablished != nil { + in, out := &in.TCPPreEstablished, &out.TCPPreEstablished + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.TCPEstablished != nil { + in, out := &in.TCPEstablished, &out.TCPEstablished + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.TCPFinsSeen != nil { + in, out := &in.TCPFinsSeen, &out.TCPFinsSeen + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.TCPResetSeen != nil { + in, out := &in.TCPResetSeen, &out.TCPResetSeen + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.UDPLastSeen != nil { + in, out := &in.UDPLastSeen, &out.UDPLastSeen + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.GenericIPLastSeen != nil { + in, out := &in.GenericIPLastSeen, &out.GenericIPLastSeen + *out = new(BPFConntrackTimeout) + **out = **in + } + if in.ICMPLastSeen != nil { + in, out := &in.ICMPLastSeen, &out.ICMPLastSeen + *out = new(BPFConntrackTimeout) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BPFConntrackTimeouts. +func (in *BPFConntrackTimeouts) DeepCopy() *BPFConntrackTimeouts { + if in == nil { + return nil + } + out := new(BPFConntrackTimeouts) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BlockAffinity) DeepCopyInto(out *BlockAffinity) { *out = *in @@ -1406,6 +1462,11 @@ func (in *FelixConfigurationSpec) DeepCopyInto(out *FelixConfigurationSpec) { *out = new(BPFConntrackMode) **out = **in } + if in.BPFConntrackTimeouts != nil { + in, out := &in.BPFConntrackTimeouts, &out.BPFConntrackTimeouts + *out = new(BPFConntrackTimeouts) + (*in).DeepCopyInto(*out) + } if in.BPFLogFilters != nil { in, out := &in.BPFLogFilters, &out.BPFLogFilters *out = new(map[string]string) diff --git a/api/pkg/apis/projectcalico/v3/zz_generated.defaults.go b/api/pkg/apis/projectcalico/v3/zz_generated.defaults.go index 3c08e299442..16870ebea91 100644 --- a/api/pkg/apis/projectcalico/v3/zz_generated.defaults.go +++ b/api/pkg/apis/projectcalico/v3/zz_generated.defaults.go @@ -1,7 +1,7 @@ //go:build !ignore_autogenerated // +build !ignore_autogenerated -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by defaulter-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/clientset.go b/api/pkg/client/clientset_generated/clientset/clientset.go index 6347cdc9351..d2f358515d5 100644 --- a/api/pkg/client/clientset_generated/clientset/clientset.go +++ b/api/pkg/client/clientset_generated/clientset/clientset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/fake/clientset_generated.go b/api/pkg/client/clientset_generated/clientset/fake/clientset_generated.go index d4882623fcc..41723b2634d 100644 --- a/api/pkg/client/clientset_generated/clientset/fake/clientset_generated.go +++ b/api/pkg/client/clientset_generated/clientset/fake/clientset_generated.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/fake/doc.go b/api/pkg/client/clientset_generated/clientset/fake/doc.go index dda4fb3e646..f19120397a9 100644 --- a/api/pkg/client/clientset_generated/clientset/fake/doc.go +++ b/api/pkg/client/clientset_generated/clientset/fake/doc.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/fake/register.go b/api/pkg/client/clientset_generated/clientset/fake/register.go index 1528ecc70dc..2839b7d55cf 100644 --- a/api/pkg/client/clientset_generated/clientset/fake/register.go +++ b/api/pkg/client/clientset_generated/clientset/fake/register.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/scheme/doc.go b/api/pkg/client/clientset_generated/clientset/scheme/doc.go index e55758a58d2..36c3d931a32 100644 --- a/api/pkg/client/clientset_generated/clientset/scheme/doc.go +++ b/api/pkg/client/clientset_generated/clientset/scheme/doc.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/scheme/register.go b/api/pkg/client/clientset_generated/clientset/scheme/register.go index f6aaf4a1318..8ff6d842ea7 100644 --- a/api/pkg/client/clientset_generated/clientset/scheme/register.go +++ b/api/pkg/client/clientset_generated/clientset/scheme/register.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpconfiguration.go index 6962f6a0315..a289ffe6259 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpfilter.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpfilter.go index 337de6a59c5..d341aae18d7 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpfilter.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgpfilter.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgppeer.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgppeer.go index 4925d31feeb..9e87defe17e 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgppeer.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/bgppeer.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/blockaffinity.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/blockaffinity.go index 13e950ef3cc..3d50d87d4e9 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/blockaffinity.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/blockaffinity.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/caliconodestatus.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/caliconodestatus.go index 0bbda534e4c..9cec167f378 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/caliconodestatus.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/caliconodestatus.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/clusterinformation.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/clusterinformation.go index 0451c407f0d..987ea819111 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/clusterinformation.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/clusterinformation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/doc.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/doc.go index 42da4faad70..04a1a08871a 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/doc.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/doc.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/doc.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/doc.go index c02b93509b6..dc7a82df923 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/doc.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/doc.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpconfiguration.go index fbd6e411371..95632053bed 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpfilter.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpfilter.go index 97c64ea1eb9..d33b8b6b963 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpfilter.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgpfilter.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgppeer.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgppeer.go index dfc91a18937..654e8141206 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgppeer.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_bgppeer.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_blockaffinity.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_blockaffinity.go index 0a0a1ae5a3f..f6c4ea0b0d3 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_blockaffinity.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_blockaffinity.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_caliconodestatus.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_caliconodestatus.go index 66d944a448e..1c44e0dae73 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_caliconodestatus.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_caliconodestatus.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_clusterinformation.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_clusterinformation.go index 6619b7e2053..23bb66281eb 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_clusterinformation.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_clusterinformation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_felixconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_felixconfiguration.go index 4525b9dc775..250ecc092fe 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_felixconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_felixconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkpolicy.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkpolicy.go index 72d01754454..ab4c30e2d2e 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkpolicy.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkset.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkset.go index 5906b6b1050..1b951c69c06 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkset.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_globalnetworkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_hostendpoint.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_hostendpoint.go index fa3bdcb1272..ec26f476c52 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_hostendpoint.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_hostendpoint.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipamconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipamconfiguration.go index 8366e778e22..d4945426448 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipamconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipamconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ippool.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ippool.go index cd9f7490561..194eff77cc8 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ippool.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ippool.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipreservation.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipreservation.go index bd68c693117..544640c3824 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipreservation.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_ipreservation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_kubecontrollersconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_kubecontrollersconfiguration.go index 9253aba0fe5..b77e08ed834 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_kubecontrollersconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_kubecontrollersconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkpolicy.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkpolicy.go index 8df1d122876..05f8a739442 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkpolicy.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkset.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkset.go index 3d05abbc34c..b95ecb3c8a9 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkset.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_networkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_profile.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_profile.go index 20608db2598..1e37ef8ac93 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_profile.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_profile.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_projectcalico_client.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_projectcalico_client.go index f77389f4521..7996fc072c4 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_projectcalico_client.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_projectcalico_client.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_tier.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_tier.go index a6fdcadcaac..41f49fde928 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_tier.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/fake/fake_tier.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/felixconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/felixconfiguration.go index b6fef1881c6..8463dfd1ee3 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/felixconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/felixconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/generated_expansion.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/generated_expansion.go index 0f60d9adcfe..6983399e32f 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/generated_expansion.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/generated_expansion.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkpolicy.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkpolicy.go index 59c4e296b92..7624e5ac19d 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkpolicy.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkset.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkset.go index 44ac280e154..be87e2de44a 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkset.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/globalnetworkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/hostendpoint.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/hostendpoint.go index d624e7bb584..4702e8a31c3 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/hostendpoint.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/hostendpoint.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipamconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipamconfiguration.go index 3f90d2a9428..5f08490539c 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipamconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipamconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ippool.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ippool.go index 240ef4d261f..8d0a5ea7e9e 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ippool.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ippool.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipreservation.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipreservation.go index 845237a6211..cfb699e260f 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipreservation.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/ipreservation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/kubecontrollersconfiguration.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/kubecontrollersconfiguration.go index 27d1b96b4b0..18553505c83 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/kubecontrollersconfiguration.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/kubecontrollersconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkpolicy.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkpolicy.go index 957f459bc56..78fe28c8b03 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkpolicy.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkset.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkset.go index 7d0b909d555..ee562b6d986 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkset.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/networkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/profile.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/profile.go index 032b24b4753..2be7aa2a9f9 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/profile.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/profile.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/projectcalico_client.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/projectcalico_client.go index 5ac91037b84..65df164883b 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/projectcalico_client.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/projectcalico_client.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/tier.go b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/tier.go index efda6e6099b..2e13e7bd8b6 100644 --- a/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/tier.go +++ b/api/pkg/client/clientset_generated/clientset/typed/projectcalico/v3/tier.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by client-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/factory.go b/api/pkg/client/informers_generated/externalversions/factory.go index 3279837ff1e..b1eee9fab4b 100644 --- a/api/pkg/client/informers_generated/externalversions/factory.go +++ b/api/pkg/client/informers_generated/externalversions/factory.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/generic.go b/api/pkg/client/informers_generated/externalversions/generic.go index c603502b5a4..949c69cc461 100644 --- a/api/pkg/client/informers_generated/externalversions/generic.go +++ b/api/pkg/client/informers_generated/externalversions/generic.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/internalinterfaces/factory_interfaces.go b/api/pkg/client/informers_generated/externalversions/internalinterfaces/factory_interfaces.go index 502f5b4ae92..6e4a0150bf3 100644 --- a/api/pkg/client/informers_generated/externalversions/internalinterfaces/factory_interfaces.go +++ b/api/pkg/client/informers_generated/externalversions/internalinterfaces/factory_interfaces.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/interface.go b/api/pkg/client/informers_generated/externalversions/projectcalico/interface.go index 460aa1c307b..90765a9bc6e 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/interface.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/interface.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpconfiguration.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpconfiguration.go index 63b5fe90acb..cdf2248d9c5 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpconfiguration.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpfilter.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpfilter.go index b46012d0c8b..028c1c6ffef 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpfilter.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgpfilter.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgppeer.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgppeer.go index 6b2c121cc1d..260e67787dc 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgppeer.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/bgppeer.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/blockaffinity.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/blockaffinity.go index de067bf0679..bbad7301c95 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/blockaffinity.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/blockaffinity.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/caliconodestatus.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/caliconodestatus.go index a5f5c8cf4ba..8bc05a025e2 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/caliconodestatus.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/caliconodestatus.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/clusterinformation.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/clusterinformation.go index f885cf851a7..ea1fe62114b 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/clusterinformation.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/clusterinformation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/felixconfiguration.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/felixconfiguration.go index 66b17744b71..0c69e65e751 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/felixconfiguration.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/felixconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkpolicy.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkpolicy.go index c2a146b4f4f..92c04eba166 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkpolicy.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkset.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkset.go index c6bc211ddb4..420974df05d 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkset.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/globalnetworkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/hostendpoint.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/hostendpoint.go index adea6594f1e..b6022281f0d 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/hostendpoint.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/hostendpoint.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/interface.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/interface.go index 9a3545f3ef9..65e359bbc70 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/interface.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/interface.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipamconfiguration.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipamconfiguration.go index 27198060d55..2f03333f990 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipamconfiguration.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipamconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ippool.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ippool.go index 8135e74d1e5..9d2640f5f35 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ippool.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ippool.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipreservation.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipreservation.go index ce7574660cf..44a3288cf11 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipreservation.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/ipreservation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/kubecontrollersconfiguration.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/kubecontrollersconfiguration.go index d581b41fedf..abe153fbcea 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/kubecontrollersconfiguration.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/kubecontrollersconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkpolicy.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkpolicy.go index 2b8dbdfd5db..4e1713ca6bb 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkpolicy.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkset.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkset.go index 15e96c4e8fe..afbed3b93cd 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkset.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/networkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/profile.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/profile.go index 197bbe8faaa..866a36b2192 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/profile.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/profile.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/tier.go b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/tier.go index 9d9ccf8b26e..386d0cc0b2f 100644 --- a/api/pkg/client/informers_generated/externalversions/projectcalico/v3/tier.go +++ b/api/pkg/client/informers_generated/externalversions/projectcalico/v3/tier.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by informer-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/bgpconfiguration.go b/api/pkg/client/listers_generated/projectcalico/v3/bgpconfiguration.go index 9da9c843740..db9986c7fb0 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/bgpconfiguration.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/bgpconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/bgpfilter.go b/api/pkg/client/listers_generated/projectcalico/v3/bgpfilter.go index 9845cdfbe04..625a11b5a23 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/bgpfilter.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/bgpfilter.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/bgppeer.go b/api/pkg/client/listers_generated/projectcalico/v3/bgppeer.go index c0aa30b1e13..f43e14df26d 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/bgppeer.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/bgppeer.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/blockaffinity.go b/api/pkg/client/listers_generated/projectcalico/v3/blockaffinity.go index 7fab8c0fdad..4f95a16bcff 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/blockaffinity.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/blockaffinity.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/caliconodestatus.go b/api/pkg/client/listers_generated/projectcalico/v3/caliconodestatus.go index cb50aa50e78..a7c687393b8 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/caliconodestatus.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/caliconodestatus.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/clusterinformation.go b/api/pkg/client/listers_generated/projectcalico/v3/clusterinformation.go index cc75b1bbec3..21c74cfbee1 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/clusterinformation.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/clusterinformation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/expansion_generated.go b/api/pkg/client/listers_generated/projectcalico/v3/expansion_generated.go index a0cecd81d44..fff2b582e39 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/expansion_generated.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/expansion_generated.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/felixconfiguration.go b/api/pkg/client/listers_generated/projectcalico/v3/felixconfiguration.go index 8c103b6cff7..119cb715a40 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/felixconfiguration.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/felixconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkpolicy.go b/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkpolicy.go index c2f2162e8c3..4a7c5719767 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkpolicy.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkset.go b/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkset.go index 453e7e1ba3d..2d93765d2c7 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkset.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/globalnetworkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/hostendpoint.go b/api/pkg/client/listers_generated/projectcalico/v3/hostendpoint.go index c72cf826057..a8aecba4760 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/hostendpoint.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/hostendpoint.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/ipamconfiguration.go b/api/pkg/client/listers_generated/projectcalico/v3/ipamconfiguration.go index d3a48f0b1b3..7eee89822d7 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/ipamconfiguration.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/ipamconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/ippool.go b/api/pkg/client/listers_generated/projectcalico/v3/ippool.go index 4d73e445036..e0bf87fe33f 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/ippool.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/ippool.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/ipreservation.go b/api/pkg/client/listers_generated/projectcalico/v3/ipreservation.go index 47855100534..c014b556bb7 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/ipreservation.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/ipreservation.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/kubecontrollersconfiguration.go b/api/pkg/client/listers_generated/projectcalico/v3/kubecontrollersconfiguration.go index 789241888af..452a065db9b 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/kubecontrollersconfiguration.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/kubecontrollersconfiguration.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/networkpolicy.go b/api/pkg/client/listers_generated/projectcalico/v3/networkpolicy.go index ed835875582..873770896aa 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/networkpolicy.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/networkpolicy.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/networkset.go b/api/pkg/client/listers_generated/projectcalico/v3/networkset.go index 16d2b4a57b4..b3137f801b4 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/networkset.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/networkset.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/profile.go b/api/pkg/client/listers_generated/projectcalico/v3/profile.go index 4fbaef01a7d..ee712b7a569 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/profile.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/profile.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/client/listers_generated/projectcalico/v3/tier.go b/api/pkg/client/listers_generated/projectcalico/v3/tier.go index 006958ca285..cd2be3eccc3 100644 --- a/api/pkg/client/listers_generated/projectcalico/v3/tier.go +++ b/api/pkg/client/listers_generated/projectcalico/v3/tier.go @@ -1,4 +1,4 @@ -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by lister-gen. DO NOT EDIT. diff --git a/api/pkg/openapi/generated.openapi.go b/api/pkg/openapi/generated.openapi.go index a1099d0339c..bab89c0c16d 100644 --- a/api/pkg/openapi/generated.openapi.go +++ b/api/pkg/openapi/generated.openapi.go @@ -1,7 +1,7 @@ //go:build !ignore_autogenerated // +build !ignore_autogenerated -// Copyright (c) 2024 Tigera, Inc. All rights reserved. +// Copyright (c) 2025 Tigera, Inc. All rights reserved. // Code generated by openapi-gen. DO NOT EDIT. @@ -33,6 +33,7 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BGPPeer": schema_pkg_apis_projectcalico_v3_BGPPeer(ref), "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BGPPeerList": schema_pkg_apis_projectcalico_v3_BGPPeerList(ref), "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BGPPeerSpec": schema_pkg_apis_projectcalico_v3_BGPPeerSpec(ref), + "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BPFConntrackTimeouts": schema_pkg_apis_projectcalico_v3_BPFConntrackTimeouts(ref), "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BlockAffinity": schema_pkg_apis_projectcalico_v3_BlockAffinity(ref), "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BlockAffinityList": schema_pkg_apis_projectcalico_v3_BlockAffinityList(ref), "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BlockAffinitySpec": schema_pkg_apis_projectcalico_v3_BlockAffinitySpec(ref), @@ -1259,6 +1260,66 @@ func schema_pkg_apis_projectcalico_v3_BGPPeerSpec(ref common.ReferenceCallback) } } +func schema_pkg_apis_projectcalico_v3_BPFConntrackTimeouts(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "creationGracePeriod": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "tcpPreEstablished": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "tcpEstablished": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "tcpFinsSeen": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "tcpResetSeen": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "udpLastSeen": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "genericIPLastSeen": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "icmpLastSeen": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + func schema_pkg_apis_projectcalico_v3_BlockAffinity(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -2986,6 +3047,12 @@ func schema_pkg_apis_projectcalico_v3_FelixConfigurationSpec(ref common.Referenc Format: "", }, }, + "bpfConntrackTimeouts": { + SchemaProps: spec.SchemaProps{ + Description: "BPFConntrackTimers overides the default values for the specified conntrack timer if set. It is a key-value make, where each value can be either a duration or `auto` to pick the value from a Linux conntrack timeout.\n\nPossible values for the keys are: CreationGracePeriod, TCPPreEstablished, TCPEstablished, TCPFinsSeen, TCPResetSeen, UDPLastSeen, GenericIPLastSeen, ICMPLastSeen.\n\nUnset or incorrect values are replaced by the default values with a warning log for incorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: nf_conntrack_tcp_timeout_syn_sent TCPEstablished: nf_conntrack_tcp_timeout_established TCPFinsSeen: nf_conntrack_tcp_timeout_time_wait GenericIPLastSeen: nf_conntrack_generic_timeout ICMPLastSeen: nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]", + Ref: ref("github.com/projectcalico/api/pkg/apis/projectcalico/v3.BPFConntrackTimeouts"), + }, + }, "bpfLogFilters": { SchemaProps: spec.SchemaProps{ Description: "BPFLogFilters is a map of key=values where the value is a pcap filter expression and the key is an interface name with 'all' denoting all interfaces, 'weps' all workload endpoints and 'heps' all host endpoints.\n\nWhen specified as an env var, it accepts a comma-separated list of key=values. [Default: unset - means all debug logs are emitted]", @@ -3411,7 +3478,7 @@ func schema_pkg_apis_projectcalico_v3_FelixConfigurationSpec(ref common.Referenc }, }, Dependencies: []string{ - "github.com/projectcalico/api/pkg/apis/projectcalico/v3.HealthTimeoutOverride", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.ProtoPort", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.RouteTableIDRange", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.RouteTableRange", "github.com/projectcalico/api/pkg/lib/numorstring.Port", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration"}, + "github.com/projectcalico/api/pkg/apis/projectcalico/v3.BPFConntrackTimeouts", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.HealthTimeoutOverride", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.ProtoPort", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.RouteTableIDRange", "github.com/projectcalico/api/pkg/apis/projectcalico/v3.RouteTableRange", "github.com/projectcalico/api/pkg/lib/numorstring.Port", "k8s.io/apimachinery/pkg/apis/meta/v1.Duration"}, } } diff --git a/felix/bpf/conntrack/timeouts.go b/felix/bpf/conntrack/timeouts.go index e440bcc44af..498f40b9fd0 100644 --- a/felix/bpf/conntrack/timeouts.go +++ b/felix/bpf/conntrack/timeouts.go @@ -15,6 +15,12 @@ package conntrack import ( + "bufio" + "fmt" + "os" + "reflect" + "strconv" + "strings" "time" log "github.com/sirupsen/logrus" @@ -99,3 +105,89 @@ func DefaultTimeouts() Timeouts { ICMPLastSeen: 5 * time.Second, } } + +var linuxSysctls = map[string]string{ + "TCPPreEstablished": "nf_conntrack_tcp_timeout_syn_sent", + "TCPEstablished": "nf_conntrack_tcp_timeout_established", + "TCPFinsSeen": "nf_conntrack_tcp_timeout_time_wait", + "GenericIPLastSeen": "nf_conntrack_generic_timeout", + "ICMPLastSeen": "nf_conntrack_icmp_timeout", +} + +func GetTimeouts(config map[string]string) Timeouts { + t := DefaultTimeouts() + + v := reflect.ValueOf(&t) + v = v.Elem() + + for key, value := range config { + field := v.FieldByName(key) + if !field.IsValid() { + log.WithField("value", key).Warn("Not a valid BPF conntrack timeout, skipping") + continue + } + + d, err := time.ParseDuration(value) + if err == nil { + log.WithFields(log.Fields{"name": key, "value": d}).Info("BPF conntrack timeout set") + field.SetInt(int64(d)) + continue + } + + if value == "auto" { + sysctl := linuxSysctls[key] + if sysctl != "" { + seconds, err := readSecondsFromFile(sysctl) + if err == nil { + d := time.Duration(seconds) * time.Second + log.WithFields(log.Fields{"name": key, "value": d}).Infof("BPF conntrack timeout set from %s", sysctl) + field.SetInt(int64(d)) + continue + } + } + } + + log.WithField("value", key).Warnf("Not a valid BPF conntrack timeout value, using default %s", + time.Duration(field.Int())) + } + + fields := make(log.Fields) + + tt := reflect.TypeOf(t) + + for i := 0; i < v.NumField(); i++ { + fields[tt.Field(i).Name] = v.Field(i).Interface() + } + + log.WithFields(fields).Infof("BPF conntrack timers") + + return t +} + +func readSecondsFromFile(nfTimeout string) (int, error) { + filePath := "/proc/sys/net/netfilter/" + nfTimeout + + file, err := os.Open(filePath) + if err != nil { + return 0, fmt.Errorf("error opening file: %w", err) + } + defer file.Close() + + scanner := bufio.NewScanner(file) + if scanner.Scan() { + line := scanner.Text() + line = strings.TrimSpace(line) + seconds, err := strconv.Atoi(line) + if err != nil { + return 0, fmt.Errorf("error converting the value to an integer: %w", err) + } + + return seconds, nil + } + + if err := scanner.Err(); err != nil { + return 0, fmt.Errorf("error reading from file: %w", err) + } + + return 0, fmt.Errorf("file is empty or cannot read a line") +} diff --git a/felix/config/config_params.go b/felix/config/config_params.go index e8a5b2714e7..df7cb3038cb 100644 --- a/felix/config/config_params.go +++ b/felix/config/config_params.go @@ -180,6 +180,7 @@ type Config struct { BPFLogLevel string `config:"oneof(off,info,debug);off;non-zero"` BPFConntrackLogLevel string `config:"oneof(off,debug);off;non-zero"` BPFConntrackCleanupMode string `config:"oneof(Auto,Userspace,BPFProgram);Auto"` + BPFConntrackTimeouts map[string]string `config:"keyvaluelist;CreationGracePeriod=10s,TCPPreEstablished=20s,TCPEstablished=1h,TCPFinsSeen=auto,TCPResetSeen=40s,UDPLastSeen=60s,GenericIPLastSeen=10m,ICMPLastSeen=5s"` BPFLogFilters map[string]string `config:"keyvaluelist;;"` BPFCTLBLogFilter string `config:"oneof(all);;"` BPFDataIfacePattern *regexp.Regexp `config:"regexp;^((en|wl|ww|sl|ib)[Popsx].*|(eth|wlan|wwan|bond).*)"` diff --git a/felix/dataplane/driver.go b/felix/dataplane/driver.go index c68c311dd5a..980b2403166 100644 --- a/felix/dataplane/driver.go +++ b/felix/dataplane/driver.go @@ -378,7 +378,7 @@ func StartDataplaneDriver( BPFDisableGROForIfaces: configParams.BPFDisableGROForIfaces, XDPEnabled: configParams.XDPEnabled, XDPAllowGeneric: configParams.GenericXDPEnabled, - BPFConntrackTimeouts: conntrack.DefaultTimeouts(), // FIXME make timeouts configurable + BPFConntrackTimeouts: conntrack.GetTimeouts(configParams.BPFConntrackTimeouts), BPFConntrackCleanupMode: apiv3.BPFConntrackMode(configParams.BPFConntrackCleanupMode), RouteTableManager: routeTableIndexAllocator, MTUIfacePattern: configParams.MTUIfacePattern, diff --git a/felix/docs/config-params.json b/felix/docs/config-params.json index 097cd45c14c..a58e7902995 100644 --- a/felix/docs/config-params.json +++ b/felix/docs/config-params.json @@ -2701,6 +2701,32 @@ "UserEditable": true, "GoType": "string" }, + { + "Group": "Dataplane: eBPF", + "GroupWithSortPrefix": "22 Dataplane: eBPF", + "NameConfigFile": "BPFConntrackTimeouts", + "NameEnvVar": "FELIX_BPFConntrackTimeouts", + "NameYAML": "bpfConntrackTimeouts", + "NameGoAPI": "BPFConntrackTimeouts", + "StringSchema": "Comma-delimited list of key=value pairs", + "StringSchemaHTML": "Comma-delimited list of key=value pairs", + "StringDefault": "CreationGracePeriod=10s,TCPPreEstablished=20s,TCPEstablished=1h,TCPFinsSeen=auto,TCPResetSeen=40s,UDPLastSeen=60s,GenericIPLastSeen=10m,ICMPLastSeen=5s", + "ParsedDefault": "map[CreationGracePeriod:10s GenericIPLastSeen:10m ICMPLastSeen:5s TCPEstablished:1h TCPFinsSeen:auto TCPPreEstablished:20s TCPResetSeen:40s UDPLastSeen:60s]", + "ParsedDefaultJSON": "{\"CreationGracePeriod\":\"10s\",\"GenericIPLastSeen\":\"10m\",\"ICMPLastSeen\":\"5s\",\"TCPEstablished\":\"1h\",\"TCPFinsSeen\":\"auto\",\"TCPPreEstablished\":\"20s\",\"TCPResetSeen\":\"40s\",\"UDPLastSeen\":\"60s\"}", + "ParsedType": "map[string]string", + "YAMLType": "object", + "YAMLSchema": "", + "YAMLEnumValues": null, + "YAMLSchemaHTML": "", + "YAMLDefault": "", + "Required": false, + "OnParseFailure": "ReplaceWithDefault", + "AllowedConfigSources": "All", + "Description": "BPFConntrackTimers overides the default values for the specified conntrack timer if\nset. It is a key-value make, where each value can be either a duration or `auto` to\npick the value from a Linux conntrack timeout.\n\nPossible values for the keys are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset or incorrect values are replaced by the default values with a warning log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' is replaced by the default value.", + "DescriptionHTML": "
BPFConntrackTimers overides the default values for the specified conntrack timer if\nset. It is a key-value make, where each value can be either a duration or auto
to\npick the value from a Linux conntrack timeout.
Possible values for the keys are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.
\nUnset or incorrect values are replaced by the default values with a warning log for\nincorrect values.
\nCurrent auto mappings:
\nTCPPreEstablished: nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: nf_conntrack_icmp_timeout
\nIf there is no mapping, 'auto' is replaced by the default value.
", + "UserEditable": true, + "GoType": "*v3.BPFConntrackTimeouts" + }, { "Group": "Dataplane: eBPF", "GroupWithSortPrefix": "22 Dataplane: eBPF", diff --git a/felix/docs/config-params.md b/felix/docs/config-params.md index dd3cc623eae..d8f07668866 100644 --- a/felix/docs/config-params.md +++ b/felix/docs/config-params.md @@ -1474,6 +1474,38 @@ to clean up expired BPF conntrack entries. | Default value (YAML) | `off` | | Notes | Required. | +### `BPFConntrackTimeouts` (config file) / `bpfConntrackTimeouts` (YAML) + +BPFConntrackTimers overides the default values for the specified conntrack timer if +set. It is a key-value make, where each value can be either a duration or `auto` to +pick the value from a Linux conntrack timeout. + +Possible values for the keys are: CreationGracePeriod, TCPPreEstablished, +TCPEstablished, TCPFinsSeen, TCPResetSeen, UDPLastSeen, GenericIPLastSeen, +ICMPLastSeen. + +Unset or incorrect values are replaced by the default values with a warning log for +incorrect values. + +Current auto mappings: + +TCPPreEstablished: nf_conntrack_tcp_timeout_syn_sent +TCPEstablished: nf_conntrack_tcp_timeout_established +TCPFinsSeen: nf_conntrack_tcp_timeout_time_wait +GenericIPLastSeen: nf_conntrack_generic_timeout +ICMPLastSeen: nf_conntrack_icmp_timeout + +If there is no mapping, 'auto' is replaced by the default value. + +| Detail | | +| --- | --- | +| Environment variable | `FELIX_BPFConntrackTimeouts` | +| Encoding (env var/config file) | Comma-delimited list of key=value pairs | +| Default value (above encoding) | `CreationGracePeriod=10s,TCPPreEstablished=20s,TCPEstablished=1h,TCPFinsSeen=auto,TCPResetSeen=40s,UDPLastSeen=60s,GenericIPLastSeen=10m,ICMPLastSeen=5s` | +| `FelixConfiguration` field | `bpfConntrackTimeouts` (YAML) `BPFConntrackTimeouts` (Go API) | +| `FelixConfiguration` schema | `object` | +| Default value (YAML) | none | + ### `BPFDSROptoutCIDRs` (config file) / `bpfDSROptoutCIDRs` (YAML) A list of CIDRs which are excluded from DSR. That is, clients diff --git a/libcalico-go/config/crd/crd.projectcalico.org_felixconfigurations.yaml b/libcalico-go/config/crd/crd.projectcalico.org_felixconfigurations.yaml index 7e4c7bf3532..462650232c5 100644 --- a/libcalico-go/config/crd/crd.projectcalico.org_felixconfigurations.yaml +++ b/libcalico-go/config/crd/crd.projectcalico.org_felixconfigurations.yaml @@ -107,6 +107,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/libcalico-go/lib/backend/syncersv1/updateprocessors/configurationprocessor_test.go b/libcalico-go/lib/backend/syncersv1/updateprocessors/configurationprocessor_test.go index 9cfe34d6ee6..0985b4a5f1f 100644 --- a/libcalico-go/lib/backend/syncersv1/updateprocessors/configurationprocessor_test.go +++ b/libcalico-go/lib/backend/syncersv1/updateprocessors/configurationprocessor_test.go @@ -43,7 +43,7 @@ const ( ) const ( - numBaseFelixConfigs = 152 + numBaseFelixConfigs = 154 ) var _ = Describe("Test the generic configuration update processor and the concrete implementations", func() { diff --git a/libcalico-go/lib/backend/syncersv1/updateprocessors/felixconfigprocessor.go b/libcalico-go/lib/backend/syncersv1/updateprocessors/felixconfigprocessor.go index 39940014671..f5f98074db2 100644 --- a/libcalico-go/lib/backend/syncersv1/updateprocessors/felixconfigprocessor.go +++ b/libcalico-go/lib/backend/syncersv1/updateprocessors/felixconfigprocessor.go @@ -41,6 +41,7 @@ func NewFelixConfigUpdateProcessor() watchersyncer.SyncerUpdateProcessor { "RouteTableRange": routeTableRangeToString, "RouteTableRanges": routeTableRangeListToString, "HealthTimeoutOverrides": healthTimeoutOverridesToString, + "BPFConntrackTimeouts": bpfConntrackTimeoutsToString, }, ) } @@ -99,3 +100,45 @@ func healthTimeoutOverridesToString(value interface{}) interface{} { } return strings.Join(parts, ",") } + +func structToKeyValueString(input interface{}) (string, error) { + // Get the type and value of the input struct + v := reflect.ValueOf(input) + t := reflect.TypeOf(input) + + // Ensure the input is a struct + if t.Kind() != reflect.Struct { + return "", fmt.Errorf("input must be a struct") + } + + // Build the key=value pairs + var parts []string + for i := 0; i < t.NumField(); i++ { + field := t.Field(i) + value := v.Field(i) + + // Handle string fields directly + if value.Kind() == reflect.String { + s := value.String() + if s == "" { + continue + } + + parts = append(parts, fmt.Sprintf("%s=%s", field.Name, s)) + } + // Handle pointer to string fields + if value.Kind() == reflect.Ptr && value.Type().Elem().Kind() == reflect.String { + if !value.IsNil() { + parts = append(parts, fmt.Sprintf("%s=%s", field.Name, value.Elem().String())) + } + } + + } + + return strings.Join(parts, ","), nil +} + +func bpfConntrackTimeoutsToString(value interface{}) interface{} { + res, _ := structToKeyValueString(value) + return res +} diff --git a/manifests/calico-bpf.yaml b/manifests/calico-bpf.yaml index ac3836b9d5f..9e0ef4179ba 100644 --- a/manifests/calico-bpf.yaml +++ b/manifests/calico-bpf.yaml @@ -1119,6 +1119,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/calico-policy-only.yaml b/manifests/calico-policy-only.yaml index ae73767ff54..10986fb0989 100644 --- a/manifests/calico-policy-only.yaml +++ b/manifests/calico-policy-only.yaml @@ -1129,6 +1129,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/calico-typha.yaml b/manifests/calico-typha.yaml index be86b169b8b..2aff0ace3d2 100644 --- a/manifests/calico-typha.yaml +++ b/manifests/calico-typha.yaml @@ -1130,6 +1130,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/calico-vxlan.yaml b/manifests/calico-vxlan.yaml index 59a40041a3d..6a0613c9f98 100644 --- a/manifests/calico-vxlan.yaml +++ b/manifests/calico-vxlan.yaml @@ -1114,6 +1114,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/calico.yaml b/manifests/calico.yaml index 6428cef1e0d..1e11b0ea495 100644 --- a/manifests/calico.yaml +++ b/manifests/calico.yaml @@ -1114,6 +1114,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/canal.yaml b/manifests/canal.yaml index 412763fb68c..13af26c607a 100644 --- a/manifests/canal.yaml +++ b/manifests/canal.yaml @@ -1131,6 +1131,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/crds.yaml b/manifests/crds.yaml index 324fe1f770b..ac10d335e45 100644 --- a/manifests/crds.yaml +++ b/manifests/crds.yaml @@ -1024,6 +1024,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/flannel-migration/calico.yaml b/manifests/flannel-migration/calico.yaml index eb0775ba788..036048998be 100644 --- a/manifests/flannel-migration/calico.yaml +++ b/manifests/flannel-migration/calico.yaml @@ -1114,6 +1114,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients diff --git a/manifests/operator-crds.yaml b/manifests/operator-crds.yaml index b612e0616ec..d8fee98c015 100644 --- a/manifests/operator-crds.yaml +++ b/manifests/operator-crds.yaml @@ -19650,6 +19650,48 @@ spec: - Userspace - BPFProgram type: string + bpfConntrackTimeouts: + description: "BPFConntrackTimers overides the default values for the + specified conntrack timer if\nset. It is a key-value make, where + each value can be either a duration or `auto` to\npick the value + from a Linux conntrack timeout.\n\nPossible values for the keys + are: CreationGracePeriod, TCPPreEstablished,\nTCPEstablished, TCPFinsSeen, + TCPResetSeen, UDPLastSeen, GenericIPLastSeen,\nICMPLastSeen.\n\nUnset + or incorrect values are replaced by the default values with a warning + log for\nincorrect values.\n\nCurrent auto mappings:\n\nTCPPreEstablished: + nf_conntrack_tcp_timeout_syn_sent\nTCPEstablished: nf_conntrack_tcp_timeout_established\nTCPFinsSeen: + \ nf_conntrack_tcp_timeout_time_wait\nGenericIPLastSeen: nf_conntrack_generic_timeout\nICMPLastSeen: + \ nf_conntrack_icmp_timeout\n\nIf there is no mapping, 'auto' + is replaced by the default value.\n\n[Default:\n\tCreationGracePeriod: + 10s\n\tTCPPreEstablished: 20s\n\tTCPEstablished: 1h\n\tTCPFinsSeen: + \ auto (30s is default)\n\tTCPResetSeen: 40s\n\tUDPLastSeen: + \ 60s\n\tGenericIPLastSeen: 10m\n\tICMPLastSeen: 5s\n]" + properties: + creationGracePeriod: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + genericIPLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + icmpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpFinsSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpPreEstablished: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + tcpResetSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + udpLastSeen: + pattern: ^(([0-9]*(\.[0-9]*)?(ms|s|h|m|us)+)+|auto)$ + type: string + type: object bpfDSROptoutCIDRs: description: |- BPFDSROptoutCIDRs is a list of CIDRs which are excluded from DSR. That is, clients