From c3a41ac0cb15d3f2665d75051260c1909b434548 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 17 Feb 2024 14:12:01 +0200 Subject: using global variables for more efficient filtering of events --- internal/flags/flags.go | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) (limited to 'internal/flags/flags.go') diff --git a/internal/flags/flags.go b/internal/flags/flags.go index 2331762..f139654 100644 --- a/internal/flags/flags.go +++ b/internal/flags/flags.go @@ -3,8 +3,6 @@ package flags import ( "flag" "fmt" - "ioriotng/internal/types" - "unsafe" bpf "github.com/aquasecurity/libbpfgo" ) @@ -23,16 +21,10 @@ func New() (flags Flags) { } func (flags Flags) SetBPF(bpfModule *bpf.Module) error { - flagsMap, err := bpfModule.GetMap("flags_map") - if err != nil { - return err + if err := bpfModule.InitGlobalVariable("UID_FILTER", uint32(flags.UidFilter)); err != nil { + return fmt.Errorf("unable to set up UID_FILTER global variable: %w", err) } - - var ( - key = uint32(1) - flagsValues = types.FlagValues{uint32(flags.UidFilter)} - ) - return flagsMap.Update(unsafe.Pointer(&key), unsafe.Pointer(&flagsValues)) + return nil } func (flags Flags) ResizeBPFMaps(bpfModule *bpf.Module) error { -- cgit v1.2.3