MCPcopy Create free account
hub / github.com/rabbitstack/fibratus / IsRundownProcessed

Method IsRundownProcessed

pkg/event/event_windows.go:194–204  ·  view source on GitHub ↗

IsRundownProcessed checks if the rundown events was processed to discard writing the snapshot state if the process/module is already present. This usually happens when we purposely alter the tracing session to induce the arrival of rundown events by calling into the `etw.SetTraceInformation` Windows

()

Source from the content-addressed store, hash-verified

192// For more pointers check `internal/etw/trace.go` and the
193// `etw.SetTraceInformation` API function.
194func (e *Event) IsRundownProcessed() bool {
195 mu.Lock()
196 defer mu.Unlock()
197 key := e.RundownKey()
198 _, isProcessed := rundowns[key]
199 if isProcessed {
200 return true
201 }
202 rundowns[key] = true
203 return false
204}
205
206func (e *Event) IsCreateFile() bool { return e.Type == CreateFile }
207func (e *Event) IsCreateProcess() bool { return e.Type == CreateProcess }

Callers 1

IsDroppedMethod · 0.95

Calls 3

RundownKeyMethod · 0.95
LockMethod · 0.80
UnlockMethod · 0.80

Tested by

no test coverage detected