diff options
| author | Paul Buetow <paul@buetow.org> | 2025-03-11 21:38:02 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2025-03-11 21:38:02 +0200 |
| commit | 41e2d2661faa4d72ab6f03e7f1ba702593754d97 (patch) | |
| tree | aadab0ffa15f4d2d9c9a2b4d20344e3965143355 | |
| parent | f9d8d2d9a107204fddf13b8f60845e817076d1f8 (diff) | |
fix filter
| -rw-r--r-- | internal/eventfilter.go | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/internal/eventfilter.go b/internal/eventfilter.go index d53202f..4ecb6ac 100644 --- a/internal/eventfilter.go +++ b/internal/eventfilter.go @@ -1,7 +1,6 @@ package internal import ( - "bytes" "fmt" "ior/internal/event" "ior/internal/flags" @@ -12,10 +11,8 @@ import ( // TODO: Move to event package type eventFilter struct { commFilterEnable bool - commFilterBytes [types.MAX_PROGNAME_LENGTH]byte commFilter string pathFilterEnable bool - pathFilterBytes [types.MAX_FILENAME_LENGTH]byte pathFilter string } @@ -28,7 +25,6 @@ func newEventFilter(flags flags.Flags) *eventFilter { } ef.commFilterEnable = true ef.commFilter = flags.CommFilter - copy(ef.commFilterBytes[:], []byte(flags.CommFilter)) } if flags.PathFilter != "" { @@ -37,7 +33,6 @@ func newEventFilter(flags flags.Flags) *eventFilter { } ef.pathFilterEnable = true ef.pathFilter = flags.PathFilter - copy(ef.pathFilterBytes[:], []byte(flags.PathFilter)) } return &ef @@ -54,10 +49,11 @@ func (ef *eventFilter) eventPair(ev *event.Pair) bool { } func (ef *eventFilter) openEvent(ev *types.OpenEvent) (*types.OpenEvent, bool) { - if ef.commFilterEnable && !bytes.Contains(ev.Comm[:], ef.commFilterBytes[:]) { + if ef.commFilterEnable && !strings.Contains(string(ev.Comm[:]), ef.commFilter) { return ev, false } - if ef.pathFilterEnable && !bytes.Contains(ev.Filename[:], ef.pathFilterBytes[:]) { + + if ef.pathFilterEnable && !strings.Contains(string(ev.Filename[:]), ef.pathFilter) { return ev, false } return ev, true @@ -65,14 +61,14 @@ func (ef *eventFilter) openEvent(ev *types.OpenEvent) (*types.OpenEvent, bool) { func (ef *eventFilter) pathEvent(ev *types.PathEvent) (*types.PathEvent, bool) { if ef.pathFilterEnable { - return ev, bytes.Contains(ev.Pathname[:], ef.pathFilterBytes[:]) + return ev, strings.Contains(string(ev.Pathname[:]), ef.pathFilter) } return ev, true } func (ef *eventFilter) nameEvent(ev *types.NameEvent) (*types.NameEvent, bool) { if ef.pathFilterEnable { - return ev, bytes.Contains(ev.Oldname[:], ef.pathFilterBytes[:]) || bytes.Contains(ev.Newname[:], ef.pathFilterBytes[:]) + return ev, strings.Contains(string(ev.Oldname[:]), ef.pathFilter) || strings.Contains(string(ev.Newname[:]), ef.pathFilter) } return ev, true } |
