tcpdump mailing list archives

Re: RFC: a loadable plugin framework for external capture backends


From: Guy Harris <gharris () sonic net>
Date: Sat, 3 Oct 2026 12:15:44 -0700

On Oct 3, 2026, at 2:57 AM, Robin Jarry via tcpdump-workers <tcpdump-workers () lists tcpdump org> wrote:

From: "Robin Jarry" <rjarry () redhat com>
Subject: [tcpdump-workers] Re: RFC: a loadable plugin framework for external capture backends
Date: October 3, 2026 at 2:57:20 AM PDT
To: "Michael Richardson" <mcr () sandelman ca>, <tcpdump-workers () lists tcpdump org>


Michael Richardson, Oct 02, 2026 at 16:10:
If the loader is off by default, and the end-user uas to recompile libpcap to enable plugins, (and the plugin has to 
be compiled), then why do we need it dynamic?

If someone (redhat, ubuntu, ...) are shipping DPDK-enabled distros with some application (OVS, whatever), then you'd 
build libpcap that way there. It's what ships as libpcap in RHEL, U-server LTS 26, ... that concerns us. (and... 
it's not just the actual bugs anymore, it's the slop that might get triggered...)

For packaging purposes, you cannot know in advance which plugins will be installed and you generally don't want to 
compile the plugins as part of libpcap that is the whole point of our proposal. They wouldn't be real "plugins" if 
that was necessary. We would go back to either a downstream maintained fork/patch or a built-in backend disabled by 
default (like DPDK was before I removed it for 0.11.0).

At least as I understand Michael's proposal, I'm not sure to what extent it differs from many of the existing built-in 
modules.

For example, the D-Bus sniffing support requires that the dbus-1 package be installed, so it can link with that 
library. The configure script and CMakeLists.txt check whether it's present and, if so, configures libpcap to link with 
it and defines PCAP_SUPPORT_DBUS.

As I understand it, Michael's proposal would, to use DPDK as an example, check whether a "DPDK libpcap support" 
library, which provides findalldevs and create routines, is installed, and, if so, configures libpcap to link with it 
and defines PCAP_SUPPORT_DPDK.

The only difference I see there is that the code that uses the D-Bus library to support capturing is currently part of 
libpcap, although, with the scheme in question, perhaps the D-Bus developers should take that over.
_______________________________________________
tcpdump-workers mailing list -- tcpdump-workers () lists tcpdump org
To unsubscribe send an email to tcpdump-workers-leave () lists tcpdump org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Current thread: