]> git.ipfire.org Git - thirdparty/libvirt.git/commit
wireshark: Prefer ws_version.h over config.h
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 7 Sep 2020 15:50:24 +0000 (17:50 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 8 Sep 2020 08:58:24 +0000 (10:58 +0200)
commitcaa9560c150b3df46965582388d0a8a0bafa97ae
tree4c033a5c2b6f5d81ef8f2591c1c5c5f6999074d0
parentec46e6d44b1ac7297231193b793dd86f76885f1c
wireshark: Prefer ws_version.h over config.h

A wireshark plugin must declare what major and minor version it
was built with as these are checked when wireshark loads plugins.
On the top of that, we use major + minor + micro to adapt to
changed API between releases. So far, we were getting these
version numbers from wireshark/config.h.

And while most distributions install wireshark/config.h file some
don't. On distros shipping it it's hack^Wsaved during built by
packaging system and installed later. But some distros are not
doing that. At least not for new enough wireshark because as of
wireshark's commit v2.9.0~1273 the ws_version.h is installed
which contains the version macros we need and is installed by
wireshark itself.

But of course, some distros which have new enough wireshark
packaged do not ship ws_version.h and stick to the hack. That is
why we can't simply bump the minimal version and switch to the
new header file. We need a configure check and adopt our code to
deal with both ways. At least for the time being.

Based on Andrea's original patch:

https://www.redhat.com/archives/libvir-list/2020-September/msg00156.html

Closes: https://gitlab.com/libvirt/libvirt/-/issues/74
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
meson.build
tools/wireshark/src/packet-libvirt.c
tools/wireshark/src/plugin.c