Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plugins: add support for ndpi-like plugins - v3 #12091

Closed
wants to merge 7 commits into from

Conversation

jasonish
Copy link
Member

@jasonish jasonish commented Nov 6, 2024

Rebase of #11985 for nDPI PR.

Adds user registerable callbacks for flow initialization, flow
update and flow finish.

Some plugins, such as other DPI libraries like nDPI need a way to hook
into these flow lifecycle events.

Ticket: OISF#7319
Ticket: OISF#7320
For library users and plugins that need to hook into the thread life
cycle, perhaps to initialize some thread storage.
Provide a way for library/plugin users to register a callback that
will be called prior to an EVE record being closed. The callback will
be passed ThreadVars, Packet, and Flow pointers if available, as well
as private user data.
Needed for changes to output-eve.h.
Allows initialization to be done early, so the table is ready for
dynamic registration by plugins which are loaded before signature
setup.
rust-bindings.h was not being installed with rust-bindings.h, and its
now pulled in by a header used for plugin support, so make sure its
installed.

We first attempt to install the "dist" version if exists, otherwise
install the "gen" one. Also install the "gen" even if the "dist" one
exists, as its going to be newer.
@jasonish jasonish requested review from victorjulien and a team as code owners November 6, 2024 19:24
Copy link

codecov bot commented Nov 6, 2024

Codecov Report

Attention: Patch coverage is 66.53846% with 87 lines in your changes missing coverage. Please review.

Project coverage is 83.10%. Comparing base (dd71ef0) to head (f8c71e6).

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #12091      +/-   ##
==========================================
- Coverage   83.25%   83.10%   -0.16%     
==========================================
  Files         910      913       +3     
  Lines      257571   257785     +214     
==========================================
- Hits       214450   214234     -216     
- Misses      43121    43551     +430     
Flag Coverage Δ
fuzzcorpus 60.55% <28.57%> (-0.62%) ⬇️
livemode 19.41% <18.45%> (+<0.01%) ⬆️
pcap 44.48% <30.35%> (+<0.01%) ⬆️
suricata-verify 62.78% <40.47%> (+<0.01%) ⬆️
unittests 59.34% <44.23%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Copy link
Member

@victorjulien victorjulien left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good overall. Some style comments inline.

src/flow-callbacks.c Show resolved Hide resolved
src/thread-callbacks.c Show resolved Hide resolved
src/output-eve.c Show resolved Hide resolved
src/Makefile.am Show resolved Hide resolved
@jasonish jasonish closed this Nov 6, 2024
@jasonish jasonish deleted the ndpi-plugin-support/v3 branch November 14, 2024 08:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants