Andreas Stieger
b3bac27a07
- Wireshark 2.6.5 (bsc#1117740): * CVE-2018-19625: The Wireshark dissection engine could crash (wnpa-sec-2018-51) * CVE-2018-19626: The DCOM dissector could crash (wnpa-sec-2018-52) * CVE-2018-19623: The LBMPDM dissector could crash (wnpa-sec-2018-53) * CVE-2018-19622: The MMSE dissector could go into an infinite loop (wnpa-sec-2018-54) * CVE-2018-19627: The IxVeriWave file parser could crash (wnpa-sec-2018-55) * CVE-2018-19624: The PVFS dissector could crash (wnpa-sec-2018-56) * CVE-2018-19628: The ZigBee ZCL dissector could crash (wnpa-sec-2018-57) - Further bug fixes and updated protocol support as listed in: https://www.wireshark.org/docs/relnotes/wireshark-2.6.5.html OBS-URL: https://build.opensuse.org/request/show/652577 OBS-URL: https://build.opensuse.org/package/show/network:utilities/wireshark?expand=0&rev=265
402 lines
12 KiB
RPMSpec
402 lines
12 KiB
RPMSpec
#
|
|
# spec file for package wireshark
|
|
#
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
# define libraries
|
|
%define libutil libwsutil9
|
|
%define libwire libwireshark10
|
|
%define libtap libwiretap8
|
|
%define libcodecs libwscodecs2
|
|
# Enable new Qt gui on new releases and build old GTK2 gui on old releases
|
|
%if 0%{?suse_version} > 1140
|
|
%bcond_without gnutls
|
|
%bcond_without qt
|
|
%bcond_with gtk
|
|
%else
|
|
%bcond_with gnutls
|
|
%bcond_with qt
|
|
%bcond_without gtk
|
|
%endif
|
|
%if 0%{?suse_version} >= 1500
|
|
%bcond_without lz4
|
|
%else
|
|
%bcond_with lz4
|
|
%endif
|
|
Name: wireshark
|
|
Version: 2.6.5
|
|
Release: 0
|
|
Summary: A Network Traffic Analyser
|
|
License: GPL-2.0-or-later AND GPL-3.0-or-later
|
|
Group: Productivity/Networking/Diagnostic
|
|
URL: https://www.wireshark.org/
|
|
Source: https://www.wireshark.org/download/src/%{name}-%{version}.tar.xz
|
|
Source2: https://www.wireshark.org/download/SIGNATURES-%{version}.txt
|
|
Source3: https://www.wireshark.org/download/gerald_at_wireshark_dot_org.gpg#/wireshark.keyring
|
|
Patch4: wireshark-1.10.0-enable_lua.patch
|
|
BuildRequires: bison
|
|
BuildRequires: flex
|
|
BuildRequires: glib2-devel
|
|
BuildRequires: hicolor-icon-theme
|
|
BuildRequires: krb5-devel
|
|
BuildRequires: libcap-devel
|
|
BuildRequires: libcares-devel
|
|
BuildRequires: libgcrypt-devel >= 1.4.2
|
|
BuildRequires: libpcap-devel
|
|
BuildRequires: libsmi-devel
|
|
BuildRequires: libtool
|
|
BuildRequires: net-snmp-devel
|
|
BuildRequires: openssl-devel
|
|
BuildRequires: pcre-devel
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: portaudio-devel
|
|
BuildRequires: snappy-devel
|
|
BuildRequires: tcpd-devel
|
|
BuildRequires: update-desktop-files
|
|
BuildRequires: zlib-devel
|
|
BuildRequires: pkgconfig(libmaxminddb)
|
|
BuildRequires: pkgconfig(libnghttp2)
|
|
BuildRequires: pkgconfig(libssh) >= 0.6.0
|
|
BuildRequires: pkgconfig(libxml-2.0)
|
|
Requires: hicolor-icon-theme
|
|
Requires(pre): permissions
|
|
Requires(pre): shadow
|
|
Recommends: wireshark-ui = %{version}
|
|
Provides: ethereal = %{version}
|
|
Obsoletes: ethereal < %{version}
|
|
Provides: group(wireshark)
|
|
%if %{with lz4}
|
|
BuildRequires: pkgconfig(liblz4)
|
|
# in openSUSE Leap 42.3, lz4 was incorrectly packaged
|
|
BuildConflicts: pkgconfig(liblz4) = 124
|
|
%endif
|
|
%if %{with gnutls}
|
|
BuildRequires: libgnutls-devel >= 2.12.0
|
|
%endif
|
|
%if 0%{?suse_version} > 1310
|
|
BuildRequires: pkgconfig(libnl-3.0)
|
|
%endif
|
|
%if %{with gtk}
|
|
BuildRequires: cairo-devel
|
|
BuildRequires: gtk2-devel >= 2.12.0
|
|
%endif
|
|
%if %{with qt}
|
|
BuildRequires: libqt5-linguist
|
|
BuildRequires: pkgconfig(Qt5Core) >= 5.0.0
|
|
BuildRequires: pkgconfig(Qt5Gui)
|
|
BuildRequires: pkgconfig(Qt5Multimedia)
|
|
BuildRequires: pkgconfig(Qt5PrintSupport)
|
|
BuildRequires: pkgconfig(Qt5Widgets)
|
|
%endif
|
|
%if 0%{?suse_version} > 1320
|
|
BuildRequires: lua51-devel
|
|
%else
|
|
BuildRequires: lua-devel
|
|
%endif
|
|
|
|
%description
|
|
Wireshark is a network protocol analyzer. It allows examining data
|
|
from a live network or from a capture file on disk. You can
|
|
interactively browse the capture data, viewing summary and detailed
|
|
information for each packet. Wireshark has several features,
|
|
including a rich display filter language and the ability to view the
|
|
reconstructed stream of a TCP session.
|
|
|
|
%package -n %{libutil}
|
|
Summary: Library for wireshark utilities
|
|
Group: System/Libraries
|
|
|
|
%description -n %{libutil}
|
|
The libwsutil library provides utility functions for libwireshark.
|
|
|
|
%package -n %{libwire}
|
|
Summary: Network packet dissection library
|
|
Group: System/Libraries
|
|
|
|
%description -n %{libwire}
|
|
The libwireshark library provides the network packet dissection services
|
|
developed by the Wireshark project.
|
|
|
|
%package -n %{libtap}
|
|
Summary: Wireshark library for tapping
|
|
Group: System/Libraries
|
|
|
|
%description -n %{libtap}
|
|
Wiretap, part of the Wireshark project, is a library that allows one to read
|
|
and write several packet capture file formats.
|
|
|
|
%package -n %{libcodecs}
|
|
Summary: Network packet dissection codecs library
|
|
Group: System/Libraries
|
|
|
|
%description -n %{libcodecs}
|
|
The libwscodecs library provides codec functions for libwireshark.
|
|
|
|
%package devel
|
|
Summary: A Network Traffic Analyser
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{libcodecs} = %{version}
|
|
Requires: %{libtap} = %{version}
|
|
Requires: %{libutil} = %{version}
|
|
Requires: %{libwire} = %{version}
|
|
Requires: %{name} = %{version}
|
|
Requires: glib2-devel
|
|
Requires: glibc-devel
|
|
Provides: ethereal-devel = %{version}
|
|
Obsoletes: ethereal-devel < %{version}
|
|
|
|
%description devel
|
|
Wireshark is a network protocol analyzer. It allows examining data
|
|
from a live network or from a capture file on disk.
|
|
|
|
%if %{with gtk}
|
|
%package ui-gtk
|
|
Summary: A Network Traffic Analyser - GTK+ UI
|
|
Group: Productivity/Networking/Diagnostic
|
|
Requires: %{name} = %{version}
|
|
Provides: %{name}-ui = %{version}
|
|
|
|
%description ui-gtk
|
|
This package contains the GTK+ UI of Wireshark.
|
|
%endif
|
|
|
|
%if %{with qt}
|
|
%package ui-qt
|
|
Summary: A Network Traffic Analyser - Qt UI
|
|
Group: Productivity/Networking/Diagnostic
|
|
Requires: %{name} = %{version}
|
|
Provides: %{name}-ui = %{version}
|
|
# gtk is the deprecated ui so ensure its uninstall
|
|
Obsoletes: %{name}-ui-gtk
|
|
|
|
%description ui-qt
|
|
This package contains the Qt based UI for Wireshark.
|
|
%endif
|
|
|
|
%prep
|
|
# The publisher doesn't sign the source tarball, but a signatures file containing multiple hashes.
|
|
# Verify hashes in that file against source tarball.
|
|
echo "`grep %{name}-%{version}.tar.xz %{SOURCE2} | grep SHA1 | head -n1 | cut -d= -f2` %{SOURCE0}" | sha1sum -c
|
|
echo "`grep %{name}-%{version}.tar.xz %{SOURCE2} | grep SHA256 | head -n1 | cut -d= -f2` %{SOURCE0}" | sha256sum -c
|
|
|
|
%setup -q
|
|
%patch4 -p1
|
|
sed -i 's/^Icon=wireshark.png$/Icon=wireshark/' wireshark*.desktop
|
|
|
|
%build
|
|
export CFLAGS="%{optflags} -fPIC"
|
|
export CXXFLAGS="%{optflags} -fPIC"
|
|
export LDFLAGS="-pie"
|
|
|
|
%if %{with qt}
|
|
#XXX: buggy autoconf checks..
|
|
export PATH="%{_libdir}/qt5/bin:$PATH"
|
|
%endif
|
|
|
|
%configure \
|
|
%if %{with gtk}
|
|
--with-gtk=2 \
|
|
%endif
|
|
%if %{with qt}
|
|
--with-qt=yes \
|
|
%else
|
|
--with-qt=no \
|
|
%endif
|
|
%if %{with gnutls}
|
|
--with-gnutls=yes \
|
|
%else
|
|
--with-gnutls=no \
|
|
%endif
|
|
--with-libssh=yes \
|
|
--with-maxminddb=yes \
|
|
--with-krb5=yes \
|
|
--with-c-ares=yes \
|
|
--with-snappy=yes \
|
|
%if %{with lz4}
|
|
--with-lz4=yes \
|
|
%endif
|
|
--with-zlib=yes \
|
|
--with-nghttp2=yes \
|
|
--with-pic=yes
|
|
|
|
make %{?_smp_mflags} V=1
|
|
|
|
%install
|
|
%make_install
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
|
|
|
# Ethereal support (remove when SLE-11 is out of scope
|
|
%if %{with gtk}
|
|
ln -fs wireshark-gtk %{buildroot}%{_bindir}/ethereal
|
|
%endif
|
|
%if %{with qt}
|
|
ln -fs wireshark %{buildroot}%{_bindir}/ethereal
|
|
%endif
|
|
ln -fs tshark %{buildroot}%{_bindir}/tethereal
|
|
|
|
install -d -m 0755 %{buildroot}%{_sysconfdir}
|
|
install -d -m 0755 %{buildroot}%{_mandir}/man1/
|
|
# install separate appdata files corresponding to .desktop files for AppStore integration
|
|
%if %{with qt}
|
|
install -d -m0755 %{buildroot}%{_datadir}/appdata
|
|
install -m644 wireshark.appdata.xml %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml
|
|
sed -i -e "/<description>/i \ \ \ \ <name>Wireshark (QT) Network Analyzer<\/name>" \
|
|
-e "/<description>/i \ \ \ \ <summary>QT interface for wireshark network traffic analyzer<\/summary>" \
|
|
%{buildroot}%{_datadir}/appdata/%{name}.appdata.xml
|
|
%else
|
|
rm -f %{buildroot}%{_datadir}/appdata/%{name}.appdata.xml
|
|
%endif
|
|
|
|
# -devel
|
|
install -d -m 0755 %{buildroot}%{_includedir}/wireshark
|
|
IDIR="%{buildroot}%{_includedir}/wireshark"
|
|
mkdir -p "${IDIR}/epan"
|
|
mkdir -p "${IDIR}/epan/crypt"
|
|
mkdir -p "${IDIR}/epan/ftypes"
|
|
mkdir -p "${IDIR}/epan/dfilter"
|
|
mkdir -p "${IDIR}/epan/dissectors"
|
|
mkdir -p "${IDIR}/epan/wmem"
|
|
mkdir -p "${IDIR}/wiretap"
|
|
mkdir -p "${IDIR}/wsutil"
|
|
install -m 644 *.h "${IDIR}/"
|
|
install -m 644 epan/*.h "${IDIR}/epan/"
|
|
install -m 644 epan/crypt/*.h "${IDIR}/epan/crypt"
|
|
install -m 644 epan/ftypes/*.h "${IDIR}/epan/ftypes"
|
|
install -m 644 epan/dfilter/*.h "${IDIR}/epan/dfilter"
|
|
install -m 644 epan/dissectors/*.h "${IDIR}/epan/dissectors"
|
|
install -m 644 epan/wmem/*.h "${IDIR}/epan/wmem"
|
|
install -m 644 wiretap/*.h "${IDIR}/wiretap"
|
|
install -m 644 wsutil/*.h "${IDIR}/wsutil"
|
|
|
|
%if %{with gtk}
|
|
install -D -m 0644 image/wsicon48.png %{buildroot}%{_datadir}/pixmaps/wireshark-gtk.png
|
|
install -D -m 0644 wireshark-gtk.desktop %{buildroot}%{_datadir}/applications/wireshark-gtk.desktop
|
|
%suse_update_desktop_file -n %{name}-gtk
|
|
%else
|
|
# sometimes the gtk.desktop gets autoinstalled by make_install
|
|
rm -f %{buildroot}%{_datadir}/applications/wireshark-gtk.desktop
|
|
%endif
|
|
|
|
%if %{with qt}
|
|
install -D -m 0644 image/wsicon48.png %{buildroot}%{_datadir}/pixmaps/wireshark.png
|
|
install -D -m 0644 wireshark.desktop %{buildroot}%{_datadir}/applications/wireshark.desktop
|
|
%suse_update_desktop_file %{name}
|
|
%else
|
|
rm -f %{buildroot}%{_datadir}/applications/wireshark.desktop
|
|
%endif
|
|
|
|
%pre
|
|
getent group wireshark >/dev/null || groupadd -r wireshark
|
|
|
|
%verifyscript
|
|
%verify_permissions -e %{_bindir}/dumpcap
|
|
|
|
%post
|
|
%set_permissions %{_bindir}/dumpcap
|
|
exit 0
|
|
|
|
%post -n %{libutil} -p /sbin/ldconfig
|
|
%postun -n %{libutil} -p /sbin/ldconfig
|
|
%post -n %{libwire} -p /sbin/ldconfig
|
|
%postun -n %{libwire} -p /sbin/ldconfig
|
|
%post -n %{libtap} -p /sbin/ldconfig
|
|
%postun -n %{libtap} -p /sbin/ldconfig
|
|
%post -n %{libcodecs} -p /sbin/ldconfig
|
|
%postun -n %{libcodecs} -p /sbin/ldconfig
|
|
|
|
%files
|
|
%license COPYING
|
|
%doc AUTHORS NEWS README.md README.linux
|
|
%{_mandir}/man1/[^i]*
|
|
%{_mandir}/man4/*
|
|
%{_bindir}/capinfos
|
|
%{_bindir}/captype
|
|
%{_bindir}/editcap
|
|
%{_bindir}/idl2wrs
|
|
%{_bindir}/mergecap
|
|
%{_bindir}/mmdbresolve
|
|
%{_bindir}/randpkt
|
|
%{_bindir}/rawshark
|
|
%{_bindir}/reordercap
|
|
%{_bindir}/sharkd
|
|
%{_bindir}/tethereal
|
|
%{_bindir}/text2pcap
|
|
%{_bindir}/tshark
|
|
%verify(not mode caps) %attr(0750,root,wireshark) %caps(cap_net_raw,cap_net_admin=ep) %{_bindir}/dumpcap
|
|
%{_libdir}/wireshark/
|
|
%{_datadir}/wireshark/
|
|
%{_datadir}/icons/hicolor/*/apps/wireshark.png
|
|
%{_datadir}/icons/hicolor/*/mimetypes/application-wireshark-doc.png
|
|
%{_datadir}/icons/hicolor/scalable/apps/wireshark.svg
|
|
%{_datadir}/mime/packages/wireshark.xml
|
|
|
|
%files -n %{libutil}
|
|
%{_libdir}/libwsutil*.so.*
|
|
|
|
%files -n %{libwire}
|
|
%{_libdir}/libwireshark.so.*
|
|
|
|
%files -n %{libtap}
|
|
%{_libdir}/libwiretap.so.*
|
|
|
|
%files -n %{libcodecs}
|
|
%{_libdir}/libwscodecs.so.*
|
|
|
|
%files devel
|
|
%{_includedir}/wireshark
|
|
%{_libdir}/lib*.so
|
|
%{_libdir}/pkgconfig/wireshark.pc
|
|
|
|
%if %{with gtk}
|
|
%files ui-gtk
|
|
%{_bindir}/wireshark-gtk
|
|
%{_bindir}/ethereal
|
|
%{_datadir}/applications/wireshark-gtk.desktop
|
|
%{_datadir}/pixmaps/wireshark-gtk.png
|
|
|
|
%post ui-gtk
|
|
test -f %{_bindir}/update-mime-database && %{_bindir}/update-mime-database %{_datadir}/mime > /dev/null || :
|
|
test -f %{_bindir}/update-desktop-database && %{_bindir}/update-desktop-database > /dev/null || :
|
|
test -f /sbin/conf.d/SuSEconfig.gtk2 && SuSEconfig --module gtk2 > /dev/null || :
|
|
test -f /sbin/conf.d/SuSEconfig.glib2 && SuSEconfig --module glib2 > /dev/null || :
|
|
|
|
%postun ui-gtk
|
|
test -f %{_bindir}/update-mime-database && %{_bindir}/update-mime-database %{_datadir}/mime > /dev/null || :
|
|
test -f %{_bindir}/update-desktop-database && %{_bindir}/update-desktop-database > /dev/null || :
|
|
test -f /sbin/conf.d/SuSEconfig.gtk2 && SuSEconfig --module gtk2 > /dev/null || :
|
|
test -f /sbin/conf.d/SuSEconfig.glib2 && SuSEconfig --module glib2 > /dev/null || :
|
|
%endif
|
|
|
|
%if %{with qt}
|
|
%files ui-qt
|
|
%{_bindir}/wireshark
|
|
%{_bindir}/ethereal
|
|
%dir %{_datadir}/appdata
|
|
%{_datadir}/appdata/wireshark.appdata.xml
|
|
%{_datadir}/applications/wireshark.desktop
|
|
%{_datadir}/pixmaps/wireshark.png
|
|
|
|
%post ui-qt
|
|
%desktop_database_post
|
|
%icon_theme_cache_post
|
|
|
|
%postun ui-qt
|
|
%desktop_database_postun
|
|
%icon_theme_cache_postun
|
|
%endif
|
|
|
|
%changelog
|