Skip to content

Commit

Permalink
ipset: fix unknown ipset data attribute from kernel (#2086)
Browse files Browse the repository at this point in the history
  • Loading branch information
zhangzujian committed Nov 27, 2022
1 parent 8e068b2 commit d916d7b
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 14 deletions.
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,10 @@ require (
k8s.io/api v0.24.2
k8s.io/apimachinery v0.24.2
k8s.io/client-go v12.0.0+incompatible
k8s.io/klog/v2 v2.70.1
k8s.io/klog/v2 v2.80.1
k8s.io/kubernetes v1.24.2
k8s.io/sample-controller v0.24.2
k8s.io/utils v0.0.0-20221108210102-8e77b1f39fe2
kubevirt.io/client-go v0.54.0
sigs.k8s.io/controller-runtime v0.12.3
)
Expand Down Expand Up @@ -147,7 +148,6 @@ require (
k8s.io/component-helpers v0.24.2 // indirect
k8s.io/kube-openapi v0.0.0-20220627174259-011e075b9cb8 // indirect
k8s.io/kube-proxy v0.24.2 // indirect
k8s.io/utils v0.0.0-20220706174534-f6158b442e7c // indirect
kubevirt.io/api v0.54.0 // indirect
kubevirt.io/containerized-data-importer-api v1.51.0 // indirect
kubevirt.io/controller-lifecycle-operator-sdk/api v0.2.4 // indirect
Expand Down
8 changes: 4 additions & 4 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -1991,8 +1991,8 @@ k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y=
k8s.io/klog/v2 v2.40.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.70.1 h1:7aaoSdahviPmR+XkS7FyxlkkXs6tHISSG03RxleQAVQ=
k8s.io/klog/v2 v2.70.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.80.1 h1:atnLQ121W371wYYFawwYx1aEY2eUfs4l3J72wtgAwV4=
k8s.io/klog/v2 v2.80.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/kube-aggregator v0.24.2/go.mod h1:Ju2jNDixn+vqeeKEBfjfpc204bO1pbdXX0N9knCxeMQ=
k8s.io/kube-controller-manager v0.24.2/go.mod h1:KDE0yqiEvxYiO0WRpPA4rVx8AcK1vsWydUF37AJ9lTI=
k8s.io/kube-openapi v0.0.0-20191107075043-30be4d16710a/go.mod h1:1TqjTSzOxsLGIKfj0lK8EeCP7K1iUG65v09OM0/WG5E=
Expand Down Expand Up @@ -2023,8 +2023,8 @@ k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/
k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20211116205334-6203023598ed/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20220706174534-f6158b442e7c h1:hFZO68mv/0xe8+V0gRT9BAq3/31cKjjeVv4nScriuBk=
k8s.io/utils v0.0.0-20220706174534-f6158b442e7c/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
k8s.io/utils v0.0.0-20221108210102-8e77b1f39fe2 h1:GfD9OzL11kvZN5iArC6oTS7RTj7oJOIfnislxYlqTj8=
k8s.io/utils v0.0.0-20221108210102-8e77b1f39fe2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
kubevirt.io/api v0.53.1 h1:C8WrMkFtFpYGAKGMWa3VIdZGsLc6+pIEsGHSTWF5V9A=
kubevirt.io/api v0.53.1/go.mod h1:mK8ilpVLcZraqgo7hv2OSNQ5vdsA3G9Pxn8LY2/1+IY=
kubevirt.io/client-go v0.53.1 h1:H3Mx45hcSahUA6nKlmoAlpSZNWTZScR9QhiVfFYli7w=
Expand Down
13 changes: 5 additions & 8 deletions pkg/daemon/gateway_linux.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/klog/v2"
k8sipset "k8s.io/kubernetes/pkg/util/ipset"
k8sexec "k8s.io/utils/exec"

kubeovnv1 "github.com/kubeovn/kube-ovn/pkg/apis/kubeovn/v1"
"github.com/kubeovn/kube-ovn/pkg/ovs"
Expand Down Expand Up @@ -913,15 +915,10 @@ func (c *Controller) deleteLegacySnatRules(protocol, table, chain string) error
}

func ipsetExists(name string) (bool, error) {
result, err := netlink.IpsetListAll()
sets, err := k8sipset.New(k8sexec.New()).ListSets()
if err != nil {
return false, fmt.Errorf("failed to list ipsets: %v", err)
return false, fmt.Errorf("failed to list ipset names: %v", err)
}

for _, ipset := range result {
if ipset.SetName == name {
return true, nil
}
}
return false, nil
return util.ContainsString(sets, name), nil
}

0 comments on commit d916d7b

Please sign in to comment.