2 # - use policykit to gain root
3 # - use %caps when rpm supports it: %attr(750,root,wireshark) %caps(cap_net_raw,cap_net_admin=eip) %{_sbindir}/dumpcap
6 %bcond_with falcosecurity # Falco plugins support + falcodump and logray apps
7 %bcond_without kerberos5 # Kerberos V support
8 %bcond_without snmp # SNMP support
9 %bcond_without gui # without QT GUI
10 %bcond_with qt5 # use Qt5 instead of Qt6
12 %define branch_ver 4.2
15 Summary: Network traffic and protocol analyzer
16 Summary(es.UTF-8): Analizador de tráfico de red
17 Summary(pl.UTF-8): Analizator ruchu i protokołów sieciowych
18 Summary(pt_BR.UTF-8): Analisador de tráfego de rede
19 Summary(ru.UTF-8): Анализатор сетевого траффика
20 Summary(uk.UTF-8): Аналізатор мережевого трафіку
25 Group: Networking/Utilities
26 Source0: https://2.na.dl.wireshark.org/src/%{name}-%{version}.tar.xz
27 # Source0-md5: cebb012489563a8eb9c3829cdcb0579c
28 URL: https://www.wireshark.org/
29 BuildRequires: bcg729-devel
30 BuildRequires: c-ares-devel >= 1.13.0
31 BuildRequires: cmake >= 3.13
32 BuildRequires: doxygen
33 %{?with_falcosecurity:BuildRequires: falcosecurity-libs-devel}
35 BuildRequires: gcc >= 5:3.2
36 BuildRequires: gettext-tools
37 BuildRequires: glib2-devel >= 1:2.54.0
38 BuildRequires: gnutls-devel >= 3.5.8
39 %{?with_kerberos5:BuildRequires: heimdal-devel}
40 BuildRequires: libbrotli-devel
41 # libcap-devel doesn't pull libcap, but only libcap-libs
43 BuildRequires: libcap-devel
44 BuildRequires: libgcrypt-devel >= 1.8.0
45 BuildRequires: libmaxminddb-devel
46 BuildRequires: libnl-devel >= 3.2
47 BuildRequires: libpcap-devel >= 2:1.0.0-4
48 BuildRequires: libsmi-devel
49 BuildRequires: libssh-devel >= 0.6.0
50 BuildRequires: libstdc++-devel >= 6:4.7
51 BuildRequires: libtool >= 2:2.2.2
52 BuildRequires: libxml2-devel >= 2.0
53 BuildRequires: libxslt-progs
54 BuildRequires: lua52-devel
55 BuildRequires: lz4-devel
56 BuildRequires: minizip-devel
57 %{?with_snmp:BuildRequires: net-snmp-devel}
58 BuildRequires: nghttp2-devel >= 1.11.0
59 BuildRequires: nghttp3-devel
60 BuildRequires: opencore-amr-devel
61 BuildRequires: opus-devel
62 BuildRequires: pcre2-8-devel
63 BuildRequires: perl-base
64 BuildRequires: pkgconfig >= 1:0.7
65 BuildRequires: python3 >= 1:3.6
66 BuildRequires: rpmbuild(macros) >= 1.742
67 BuildRequires: ruby-asciidoctor >= 1.5
68 %{?with_gui:BuildRequires: sbc-devel >= 1.0}
69 BuildRequires: sed >= 4.0
70 BuildRequires: snappy-devel
71 BuildRequires: spandsp-devel
72 BuildRequires: speexdsp-devel
73 BuildRequires: systemd-devel
74 BuildRequires: tar >= 1:1.22
75 BuildRequires: webrtc-libilbc-devel
78 BuildRequires: zlib-devel
79 BuildRequires: zstd-devel >= 1.0.0
82 BuildRequires: Qt5Concurrent-devel >= %{qt5_ver}
83 BuildRequires: Qt5Core-devel >= %{qt5_ver}
84 BuildRequires: Qt5Gui-devel >= %{qt5_ver}
85 BuildRequires: Qt5Multimedia-devel >= %{qt5_ver}
86 BuildRequires: Qt5PrintSupport-devel >= %{qt5_ver}
87 BuildRequires: Qt5Widgets-devel >= %{qt5_ver}
88 BuildRequires: libstdc++-devel >= 6:5
89 BuildRequires: qt5-build >= %{qt5_ver}
90 BuildRequires: qt5-linguist >= %{qt5_ver}
92 BuildRequires: Qt6Concurrent-devel >= %{qt6_ver}
93 BuildRequires: Qt6Core-devel >= %{qt6_ver}
94 BuildRequires: Qt6Gui-devel >= %{qt6_ver}
95 BuildRequires: Qt6Multimedia-devel >= %{qt6_ver}
96 BuildRequires: Qt6PrintSupport-devel >= %{qt6_ver}
97 BuildRequires: Qt6Qt5Compat-devel >= %{qt6_ver}
98 BuildRequires: Qt6Widgets-devel >= %{qt6_ver}
99 BuildRequires: libstdc++-devel >= 6:9
100 BuildRequires: qt6-build >= %{qt6_ver}
101 BuildRequires: qt6-linguist >= %{qt6_ver}
104 Requires(post,postun): desktop-file-utils
105 Requires(post,postun): gtk-update-icon-cache
106 Requires(post,postun): shared-mime-info
107 Requires: %{name}-common = %{version}-%{release}
109 Requires: Qt5Core >= %{qt5_ver}
110 Requires: Qt5Gui >= %{qt5_ver}
111 Requires: Qt5Multimedia >= %{qt5_ver}
112 Requires: Qt5PrintSupport >= %{qt5_ver}
113 Requires: Qt5Widgets >= %{qt5_ver}
115 Requires: Qt6Core >= %{qt6_ver}
116 Requires: Qt6Gui >= %{qt6_ver}
117 Requires: Qt6Multimedia >= %{qt6_ver}
118 Requires: Qt6PrintSupport >= %{qt6_ver}
119 Requires: Qt6Qt5Compat >= %{qt6_ver}
120 Requires: Qt6Widgets >= %{qt6_ver}
122 Requires: gdk-pixbuf2 >= 2.26
123 Requires: hicolor-icon-theme
126 Provides: ethereal-gnome
127 Obsoletes: ethereal < 1
128 Obsoletes: ethereal-gnome < 1
129 Obsoletes: wireshark-gui-common < 3
130 Obsoletes: wireshark-qt < 3
131 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
134 Wireshark is the name for powerful graphical network sniffer, traffic
135 and protocol analyzer based on QT and libpcap libraries. It lets you
136 capture and interactively browse the contents of network frames with
137 vast knowledge of more than 100 network protocols. Wireshark has
138 severeal useful features, including a rich display filter language,
139 the ability to view the ASCII contents of a TCP connection and plug-in
142 %description -l es.UTF-8
143 Analizador de tráfico de red.
145 %description -l pl.UTF-8
146 Wireshark jest potężnym, graficznym snifferem, analizatorem ruchu oraz
147 protokołów sieciowych opartym na bibliotekach QT oraz libpcap.
148 Umożliwia on przechwytywanie oraz interaktywną analizę zawartości
149 ramek oraz ponad stu protokołów sieciowych. Wireshark posiada wiele
150 użytecznych cech, takich jak rozbudowany język filtrów wyświetlania,
151 możliwość oglądania przebiegu sesji TCP oraz możliwość dołączania
154 %description -l pt_BR.UTF-8
155 O Wireshark é um analisador de protocolo de rede baseado no QT.
157 %description -l ru.UTF-8
158 Wireshark - это анализатор сетевого траффика для Unix-подобных ОС. Он
159 базируется на QT и libpcap.
161 %description -l uk.UTF-8
162 Wireshark - це аналізатор мережевого трафіку для Unix-подібних ОС. Він
163 базується на QT та libpcap.
166 Summary: Network traffic and protocol analyzer - common files
167 Summary(pl.UTF-8): Analizator ruchu i protokołów sieciowych - wspólne pliki
169 Requires(post,postun): /sbin/setcap
170 Requires: %{name}-libs = %{version}-%{release}
171 Requires: gnutls >= 3.5.8
172 Requires: libpcap >= 0.4
173 Requires: libssh >= 0.6.0
174 Provides: ethereal-common
175 Provides: group(wireshark)
176 Provides: wireshark-tools
177 Obsoletes: ethereal-common < 1
178 Obsoletes: wireshark-tools < 1.0.3-3
181 Wireshark is the name for powerful graphical network sniffer, traffic
182 and protocol analyzer based on QT and libpcap libraries. It lets you
183 capture and interactively browse the contents of network frames with
184 vast knowledge of more than 100 network protocols. Wireshark has
185 severeal useful features, including a rich display filter language,
186 the ability to view the ASCII contents of a TCP connection and plug-in
189 This package provides the shared library, plugins, data and a set of
190 tools for manipulating capture files. It contains:
191 - capinfos - prints informatio about binary capture files,
192 - captype - prints the file types of capture files,
193 - dftest - shows display filter byte-code,
194 - dumpcap - dumps network traffic to a file,
195 - editcap - edit and/or translate the format of capture files,
196 - mergecap - merges two capture files into one,
197 - randpkt - generates libpcap trace file full of random packets,
198 - rawshark - dumps and analyzes raw libpcap data,
199 - text2cap - generate a capture file from an ASCII hexdump of packets.
201 %description common -l es.UTF-8
202 Analizador de tráfico de red.
204 %description common -l pl.UTF-8
205 Wireshark jest potężnym, graficznym snifferem, analizatorem ruchu oraz
206 protokołów sieciowych opartym na bibliotekach QT oraz libpcap.
207 Umożliwia on przechwytywanie oraz interaktywną analizę zawartości
208 ramek oraz ponad stu protokołów sieciowych. Wireshark posiada wiele
209 użytecznych cech, takich jak rozbudowany język filtrów wyświetlania,
210 możliwość oglądania przebiegu sesji TCP oraz możliwość dołączania
213 Ten pakiet ten zawiera bibliotekę współdzieloną, wtyczki, dane oraz
214 zestaw narzędzi do obróbki plików z przechwyconymi pakietami,
216 - capinfos - do wyświetlania informacji o binarnych plikach zrzutu,
217 - captype - do wyświetlania rodzaju plików zrzutu,
218 - dftest - do pokazywania bajtkodu filtrów wyświetlania,
219 - dumpcap - do zrzucania ruchu sieciowego do pliku,
220 - editcap - do edycji plików i tłumaczenia ich na inne formaty,
221 - mergecap - do łączenia dwóch plików w jeden,
222 - randpkt - do generowania plikow cap z losowymi danymi,
223 - rawshark - do obróbki plików cap,
224 - text2cap - do generowania pliku cap z szesnastkowego zrzutu ASCII
227 %description common -l pt_BR.UTF-8
228 O Wireshark é um analisador de protocolo de rede baseado no QT.
230 %description common -l ru.UTF-8
231 Wireshark - это анализатор сетевого траффика для Unix-подобных ОС. Он
232 базируется на QT и libpcap.
234 %description common -l uk.UTF-8
235 Wireshark - це аналізатор мережевого трафіку для Unix-подібних ОС. Він
236 базується на QT та libpcap.
238 %package -n twireshark
239 Summary: Text-mode network traffic and protocol analyzer
240 Summary(pl.UTF-8): Tekstowy analizator ruchu i protokołów sieciowych
241 Summary(pt_BR.UTF-8): Analisador modo texto de tráfego de rede (sniffer)
243 Requires: %{name}-common = %{version}-%{release}
244 Requires: libpcap >= 0.4
246 Obsoletes: tethereal < 1
248 %description -n twireshark
249 Twireshark is a network protocol analyzer. It lets you capture packet
250 data from a live network, or read packets from a previously saved
251 capture file, either printing a decoded form of those packets to the
252 standard output or writing the packets to a file. Twireshark's native
253 capture file format is libpcap format, which is also the format used
254 by tcpdump and various other tools.
256 %description -n twireshark -l pl.UTF-8
257 Twireshark jest analizatorem protokołów sieciowych. Pozwala na
258 przechwytywanie pakietów z sieci lub wczytywanie danych z pliku.
259 Zdekodowany wynik (a twireshark zna ponad 100 rozmaitych protokołów
260 sieciowych!) jest wyświetlony na ekranie. Natywnym formatem plików
261 tetherala jest format libpcap, tak więc jest on kompatybilny z
262 tcpdumpem i innymi podobnymi narzędziami.
264 %description -n twireshark -l pt_BR.UTF-8
265 Esta é uma versão para modo texto do analisador de tráfego de rede
269 Summary: Wireshark packet capture and dissection libraries
270 Summary(pl.UTF-8): Biblioteki Wiresharka do przechwytywania i sekcji pakietów
272 Requires: c-ares >= 1.13.0
273 Requires: glib2 >= 1:2.54.0
274 Requires: libgcrypt >= 1.8.0
275 Requires: libnl >= 3.2
276 Requires: zstd >= 1.0.0
277 Obsoletes: libwiretap < 2.4.0
280 Wireshark packet capture and dissection libraries.
282 %description libs -l pl.UTF-8
283 Biblioteki Wiresharka do przechwytywania i sekcji pakietów.
286 Summary: Header files for Wireshark libraries
287 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Wiresharka
288 Group: Development/Libraries
289 Requires: %{name}-libs = %{version}-%{release}
290 Requires: glib2-devel >= 1:2.54.0
291 Requires: libgcrypt-devel >= 1.8.0
292 Requires: libnl-devel >= 3.2
293 Obsoletes: libwiretap-devel < 2.4.0
296 Header files for Wireshark libraries.
298 %description devel -l pl.UTF-8
299 Pliki nagłówkowe bibliotek Wiresharka.
304 %if %{with falcosecurity}
305 %{__sed} -i -e 's/CMAKE_CXX_STANDARD 11/CMAKE_CXX_STANDARD 17/' CMakeLists.txt
310 -DBUILD_androiddump=ON \
311 -DBUILD_corbaidl2wrs=ON \
312 -DBUILD_dcerpcidl2wrs=ON \
313 %{?with_falcosecurity:-DBUILD_falcodump=ON} \
314 %{?with_falcosecurity:-DBUILD_logray=ON} \
315 -DBUILD_mmdbresolve=ON \
316 -DBUILD_randpktdump=ON \
317 -DBUILD_tfshark=OFF \
318 %{cmake_on_off gui BUILD_wireshark} \
319 -DCMAKE_INSTALL_DATADIR:PATH=share/wireshark \
320 -DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/wireshark \
321 -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} \
322 -DDISABLE_WERROR=ON \
324 -DENABLE_NETLINK=ON \
325 -DENABLE_PLUGINS=ON \
326 -DENABLE_PORTAUDIO=ON \
329 -DUSE_qt6=%{!?with_qt5:ON}%{?with_qt5:OFF}
334 rm -rf $RPM_BUILD_ROOT
336 %{__make} -C build install install-headers \
337 DESTDIR=$RPM_BUILD_ROOT
339 # used by installed headers, but not installed by cmake
340 cp -p build/config.h $RPM_BUILD_ROOT%{_includedir}/wireshark
343 rm -rf $RPM_BUILD_ROOT
346 %update_icon_cache hicolor
347 %update_desktop_database_post
348 %update_mime_database
351 %update_icon_cache hicolor
352 %update_desktop_database_postun
353 %update_mime_database
356 %groupadd -P %{name}-common -g 104 wireshark
359 /sbin/setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' %{_bindir}/dumpcap
363 if [ "$1" = "0" ]; then
364 %groupremove wireshark
367 %post libs -p /sbin/ldconfig
368 %postun libs -p /sbin/ldconfig
372 %defattr(644,root,root,755)
373 %attr(755,root,root) %{_bindir}/wireshark
374 %{_desktopdir}/org.wireshark.Wireshark.desktop
376 %{_datadir}/metainfo/org.wireshark.Wireshark.metainfo.xml
377 %{_datadir}/mime/packages/org.wireshark.Wireshark.xml
378 %{_iconsdir}/hicolor/16x16/apps/org.wireshark.Wireshark.png
379 %{_iconsdir}/hicolor/16x16/mimetypes/org.wireshark.Wireshark-mimetype.png
380 %{_iconsdir}/hicolor/24x24/apps/org.wireshark.Wireshark.png
381 %{_iconsdir}/hicolor/24x24/mimetypes/org.wireshark.Wireshark-mimetype.png
382 %{_iconsdir}/hicolor/32x32/apps/org.wireshark.Wireshark.png
383 %{_iconsdir}/hicolor/32x32/mimetypes/org.wireshark.Wireshark-mimetype.png
384 %{_iconsdir}/hicolor/48x48/apps/org.wireshark.Wireshark.png
385 %{_iconsdir}/hicolor/48x48/mimetypes/org.wireshark.Wireshark-mimetype.png
386 %{_iconsdir}/hicolor/64x64/apps/org.wireshark.Wireshark.png
387 %{_iconsdir}/hicolor/64x64/mimetypes/org.wireshark.Wireshark-mimetype.png
388 %{_iconsdir}/hicolor/128x128/apps/org.wireshark.Wireshark.png
389 %{_iconsdir}/hicolor/128x128/mimetypes/org.wireshark.Wireshark-mimetype.png
390 %{_iconsdir}/hicolor/256x256/apps/org.wireshark.Wireshark.png
391 %{_iconsdir}/hicolor/256x256/mimetypes/org.wireshark.Wireshark-mimetype.png
392 %{_mandir}/man1/wireshark.1*
393 %if %{with falcosecurity}
394 %attr(755,root,root) %{_bindir}/logray
395 %{_datadir}/metainfo/org.wireshark.Logray.metainfo.xml
396 %{_datadir}/mime/packages/org.wireshark.Logray.xml
397 %{_desktopdir}/org.wireshark.Logray.desktop
398 %{_iconsdir}/hicolor/*x*/apps/org.wireshark.Logray.png
399 %{_iconsdir}/hicolor/*x*/mimetypes/org.wireshark.Logray-mimetype.png
400 %{_iconsdir}/hicolor/scalable/apps/org.wireshark.Logray.svg
405 %defattr(644,root,root,755)
406 %doc AUTHORS* ChangeLog NEWS README.md README.linux doc/README.*
407 %doc %{_docdir}/wireshark
408 %attr(755,root,root) %{_bindir}/capinfos
409 %attr(755,root,root) %{_bindir}/captype
410 %attr(750,root,wireshark) %{_bindir}/dumpcap
411 %attr(755,root,root) %{_bindir}/editcap
412 %attr(755,root,root) %{_bindir}/idl2wrs
413 %attr(755,root,root) %{_bindir}/mergecap
414 %attr(755,root,root) %{_bindir}/mmdbresolve
415 %attr(755,root,root) %{_bindir}/randpkt
416 %attr(755,root,root) %{_bindir}/rawshark
417 %attr(755,root,root) %{_bindir}/reordercap
418 %attr(755,root,root) %{_bindir}/sharkd
419 %attr(755,root,root) %{_bindir}/text2pcap
420 %dir %{_libdir}/%{name}/extcap
421 %attr(755,root,root) %{_libdir}/%{name}/extcap/androiddump
422 %attr(755,root,root) %{_libdir}/%{name}/extcap/ciscodump
423 %attr(755,root,root) %{_libdir}/%{name}/extcap/dpauxmon
424 %if %{with falcosecurity}
425 %attr(755,root,root) %{_libdir}/%{name}/extcap/falcodump
427 %attr(755,root,root) %{_libdir}/%{name}/extcap/randpktdump
428 %attr(755,root,root) %{_libdir}/%{name}/extcap/sshdump
429 %attr(755,root,root) %{_libdir}/%{name}/extcap/sdjournal
430 %attr(755,root,root) %{_libdir}/%{name}/extcap/udpdump
431 %attr(755,root,root) %{_libdir}/%{name}/extcap/wifidump
432 %dir %{_libdir}/%{name}/plugins
433 %dir %{_libdir}/%{name}/plugins/%{branch_ver}
434 %dir %{_libdir}/%{name}/plugins/%{branch_ver}/codecs
435 %attr(755,root,root) %{_libdir}/%{name}/plugins/%{branch_ver}/codecs/*.so
436 %dir %{_libdir}/%{name}/plugins/%{branch_ver}/epan
437 %attr(755,root,root) %{_libdir}/%{name}/plugins/%{branch_ver}/epan/*.so
438 %dir %{_libdir}/%{name}/plugins/%{branch_ver}/wiretap
439 %attr(755,root,root) %{_libdir}/%{name}/plugins/%{branch_ver}/wiretap/*.so
440 %{_mandir}/man1/androiddump.1*
441 %{_mandir}/man1/capinfos.1*
442 %{_mandir}/man1/captype.1*
443 %{_mandir}/man1/ciscodump.1*
444 %{_mandir}/man1/dpauxmon.1*
445 %{_mandir}/man1/dumpcap.1*
446 %{_mandir}/man1/editcap.1*
447 %{_mandir}/man1/etwdump.1*
448 %if %{with falcosecurity}
449 %{_mandir}/man1/falcodump.1*
451 %{_mandir}/man1/idl2wrs.1*
452 %{_mandir}/man1/mergecap.1*
453 %{_mandir}/man1/mmdbresolve.1*
454 %{_mandir}/man1/rawshark.1*
455 %{_mandir}/man1/randpkt.1*
456 %{_mandir}/man1/randpktdump.1*
457 %{_mandir}/man1/reordercap.1*
458 %{_mandir}/man1/sdjournal.1*
459 %{_mandir}/man1/sshdump.1*
460 %{_mandir}/man1/text2pcap.1*
461 %{_mandir}/man1/udpdump.1*
462 %{_mandir}/man1/wifidump.1*
463 %{_mandir}/man4/extcap.4*
464 %{_mandir}/man4/wireshark-filter.4*
467 %defattr(644,root,root,755)
468 %attr(755,root,root) %{_bindir}/tshark
469 %{_mandir}/man1/tshark*.1*
472 %defattr(644,root,root,755)
473 %attr(755,root,root) %{_libdir}/libwireshark.so.*.*.*
474 %attr(755,root,root) %ghost %{_libdir}/libwireshark.so.17
475 %attr(755,root,root) %{_libdir}/libwiretap.so.*.*.*
476 %attr(755,root,root) %ghost %{_libdir}/libwiretap.so.14
477 %attr(755,root,root) %{_libdir}/libwsutil.so.*.*.*
478 %attr(755,root,root) %ghost %{_libdir}/libwsutil.so.15
479 %dir %{_libdir}/%{name}
482 %defattr(644,root,root,755)
483 %doc wiretap/{README,README.airmagnet}
484 %attr(755,root,root) %{_libdir}/libwireshark.so
485 %attr(755,root,root) %{_libdir}/libwiretap.so
486 %attr(755,root,root) %{_libdir}/libwsutil.so
487 %{_includedir}/wireshark
488 %{_pkgconfigdir}/wireshark.pc
489 %{_libdir}/cmake/wireshark