From e10593c26859e722bb9eeddcf696139438ff0baa Mon Sep 17 00:00:00 2001 From: Anton Petruhin Date: Fri, 12 May 2023 12:53:34 +0300 Subject: [PATCH] fix reading from Cilium's eBPF maps (#15) --- containers/cilium.go | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/containers/cilium.go b/containers/cilium.go index c80c56f..721750a 100644 --- a/containers/cilium.go +++ b/containers/cilium.go @@ -15,12 +15,10 @@ import ( ) var ( - ciliumCt4 *bpf.Map - ciliumCt6 *bpf.Map - backends4Map *bpf.Map - backends4MapVersion string - backends6Map *bpf.Map - backends6MapVersion string + ciliumCt4 *bpf.Map + ciliumCt6 *bpf.Map + backends4Map *bpf.Map + backends6Map *bpf.Map ) func init() { @@ -44,7 +42,6 @@ func init() { klog.Infoln(err) } else { klog.Infoln("found cilium ebpf-map:", n) - backends4MapVersion = n break } } @@ -54,7 +51,6 @@ func init() { klog.Infoln(err) } else { klog.Infoln("found cilium ebpf-map:", n) - backends6MapVersion = n break } } @@ -102,11 +98,11 @@ func lookupCilium4(src, dst netaddr.IPPort) *netaddr.IPPort { return nil } var backend lbmap.BackendValue - switch backends4MapVersion { - case lbmap.Backend4MapV2Name: - backend = b.(*lbmap.Backend4Value).ToHost() - case lbmap.Backend4MapV3Name: - backend = b.(*lbmap.Backend4ValueV3).ToHost() + switch bv := b.(type) { + case *lbmap.Backend4Value: + backend = bv.ToHost() + case *lbmap.Backend4ValueV3: + backend = bv.ToHost() default: return nil } @@ -143,11 +139,11 @@ func lookupCilium6(src, dst netaddr.IPPort) *netaddr.IPPort { return nil } var backend lbmap.BackendValue - switch backends6MapVersion { - case lbmap.Backend6MapV2Name: - backend = b.(*lbmap.Backend6Value).ToHost() - case lbmap.Backend6MapV3Name: - backend = b.(*lbmap.Backend6ValueV3).ToHost() + switch bv := b.(type) { + case *lbmap.Backend6Value: + backend = bv.ToHost() + case *lbmap.Backend6ValueV3: + backend = bv.ToHost() default: return nil }