Skip to content

Conversation

@rabbitstack
Copy link
Owner

What is the purpose of this PR / why it is needed?

Historically, Fibratus has been envisioned as a tool to exclusively interact with the NT Kernel Logger ETW provider. Since then, more providers have been integrated, some of them operating in userspace.
Thus, the assumption that the provenance of all events comes from the kernel is no longer valid. It is semantically more correct to represent all types, packages, and identifiers generically. The most prominent example is the Kevent structure being renamed to Event.

However, other packages and structures including kcap and ksource are refactored as well to obey the same pattern.

What type of change does this PR introduce?


Uncomment one or more /kind <> lines:

/kind feature (non-breaking change which adds functionality)

/kind bug-fix (non-breaking change which fixes an issue)

/kind refactor (non-breaking change that restructures the code, while not changing the original functionality)

/kind breaking (fix or feature that would cause existing functionality to not work as expected

/kind cleanup

/kind improvement

/kind design

/kind documentation

/kind other (change that doesn't pertain to any of the above categories)

Any specific area of the project related to this PR?


Uncomment one or more /area <> lines:

/area instrumentation

/area telemetry

/area rule-engine

/area filters

/area yara

/area event

/area captures

/area alertsenders

/area outputs

/area rules

/area filaments

/area config

/area cli

/area tests

/area ci

/area build

/area docs

/area deps

/area other

Special notes for the reviewer


Does this PR introduce a user-facing change?


Historically, Fibratus has been envisioned as a tool to exclusively
interact with the NT Kernel Logger ETW provider. Since then, more
providers have been integrated, some of them operating in userspace.
Thus, the assumption that the provenance of all events is coming out
the kernel is no longer valid. It is semantically more correct to represent
all types, packages, and identifier in a generic way. The most prominent
example is the `Kevent` structure being renamed to `Event`.
Most notable change is the refactoring of KstreamConfig
to EventSourceConfig type along with other changes that
trim the `k` prefix from types, identifiers or methods.
@rabbitstack rabbitstack force-pushed the trim-k-prefix-from-types branch 3 times, most recently from 92eeb86 to df7fc36 Compare May 30, 2025 16:56
@rabbitstack rabbitstack merged commit 8079868 into master May 30, 2025
11 checks passed
@rabbitstack rabbitstack deleted the trim-k-prefix-from-types branch May 30, 2025 17:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants