diff --git a/configure.ac b/configure.ac index 884e0e453f..23e22017f6 100644 --- a/configure.ac +++ b/configure.ac @@ -2578,8 +2578,8 @@ AM_CONDITIONAL([WITH_WIRESHARK_DISSECTOR], [test "$with_wireshark_dissector" = " AC_ARG_WITH([ws-plugindir], [AS_HELP_STRING([--with-ws-plugindir], - [wireshark plugins directory that plugin will installed])], - [ ws_plugindir=$withval ]) + [wireshark plugins directory for use when installing wireshark plugin])], + [ws_plugindir=$withval]) if test "$with_wireshark_dissector" != "no" && test -z "$ws_plugindir"; then ws_version=`$WIRESHARK -v | head -1 | cut -f 2 -d' '` diff --git a/libvirt.spec.in b/libvirt.spec.in index 5229ece5d8..e006f2b158 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -129,6 +129,7 @@ %define with_numad 0%{!?_without_numad:0} %define with_firewalld 0%{!?_without_firewalld:0} %define with_libssh2 0%{!?_without_libssh2:0} +%define with_wireshark 0%{!?_without_wireshark:0} # Non-server/HV driver defaults which are always enabled %define with_sasl 0%{!?_without_sasl:1} @@ -269,6 +270,11 @@ %define with_libssh2 0%{!?_without_libssh2:1} %endif +# Enable wireshark plugins for all distros shipping libvirt 1.2.2 or newer +%if 0%{?fedora} >= 21 + %define with_wireshark 0%{!?_without_wireshark:1} +%endif + # Disable some drivers when building without libvirt daemon. # The logic is the same as in configure.ac %if ! %{with_libvirtd} @@ -631,6 +637,10 @@ BuildRequires: scrub BuildRequires: numad %endif +%if %{with_wireshark} +BuildRequires: wireshark-devel +%endif + Provides: bundled(gnulib) %description @@ -1115,6 +1125,17 @@ Requires: cyrus-sasl-md5 Shared libraries and client binaries needed to access to the virtualization capabilities of recent versions of Linux (and other OSes). +%if %{with_wireshark} +%package wireshark +Summary: Wireshark dissector plugin for libvirt RPC transactions +Group: Development/Libraries +Requires: wireshark +Requires: %{name}-client = %{version}-%{release} + +%description wireshark +Wireshark dissector plugin for better analysis of libvirt RPC traffic. +%endif + %if %{with_lxc} %package login-shell Summary: Login shell for connecting users to an LXC container @@ -1340,6 +1361,10 @@ driver %define _with_firewalld --with-firewalld %endif +%if ! %{with_wireshark} + %define _without_wireshark --without-wireshark-dissector +%endif + %define when %(date +"%%F-%%T") %define where %(hostname) %define who %{?packager}%{!?packager:Unknown} @@ -1412,6 +1437,7 @@ driver %{?_without_dtrace} \ %{?_without_driver_modules} \ %{?_with_firewalld} \ + %{?_without_wireshark} \ %{with_packager} \ %{with_packager_version} \ --with-qemu-user=%{qemu_user} \ @@ -1442,6 +1468,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/lock-driver/*.a rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/libvirt/connection-driver/*.a %endif +%if %{with_wireshark} +rm -f $RPM_BUILD_ROOT%{_libdir}/wireshark/plugins/*/libvirt.la +%endif %if %{with_network} install -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/lib/libvirt/dnsmasq/ @@ -2117,6 +2146,11 @@ exit 0 %config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf %endif +%if %{with_wireshark} +%files wireshark +%{_libdir}/wireshark/plugins/*/libvirt.so +%endif + %if %{with_lxc} %files login-shell %attr(4750, root, virtlogin) %{_bindir}/virt-login-shell