#
# Conditional build:
-%bcond_without libsmi # Build without SMI support
+%bcond_without libsmi # Build without SMI support
+%bcond_with drop_priv # Breaks "-w" option
#
Summary: dumps packets that are sent or received over a network interface
-Summary(de): deponiert Pakete, die über eine Netzwerkschnittstelle gesandt oder empfangen werden
-Summary(es): Enseña los paquetes que son enviados o recibidos a través de una interface de red
-Summary(fr): vide les paquets émis ou reçus sur une interface réseau
-Summary(pl): Pokazuje pakiety przechodz±ce przez interfejsy sieciowe
-Summary(pt_BR): Mostra os pacotes que são enviados ou recebidos através de uma interface de rede
-Summary(ru): éÎÓÔÒÕÍÅÎÔ ÄÌÑ ÍÏÎÉÔÏÒÉÎÇÁ ÓÅÔÅ×ÏÇÏ ÔÒÁÆÆÉËÁ
-Summary(tr): Bir að arabirimi üzerinden gelen ya da giden paketleri listeler
-Summary(uk): ¶ÎÓÔÒÕÍÅÎÔ ÄÌÑ ÍÏΦÔÏÒÉÎÇÕ ÍÅÒÅÖÅ×ÏÇÏ ÔÒÁƦËÕ
+Summary(de.UTF-8): deponiert Pakete, die über eine Netzwerkschnittstelle gesandt oder empfangen werden
+Summary(es.UTF-8): Enseña los paquetes que son enviados o recibidos a través de una interface de red
+Summary(fr.UTF-8): vide les paquets émis ou reçus sur une interface réseau
+Summary(pl.UTF-8): Pokazuje pakiety przechodzące przez interfejsy sieciowe
+Summary(pt_BR.UTF-8): Mostra os pacotes que são enviados ou recebidos através de uma interface de rede
+Summary(ru.UTF-8): Инструмент для мониторинга сетевого траффика
+Summary(tr.UTF-8): Bir ağ arabirimi üzerinden gelen ya da giden paketleri listeler
+Summary(uk.UTF-8): Інструмент для моніторингу мережевого трафіку
Name: tcpdump
-Version: 3.8.3
+Version: 4.4.0
Release: 1
Epoch: 1
License: BSD
-Group: Applications/Networking
+Group: Networking/Utilities
Source0: http://www.tcpdump.org/release/%{name}-%{version}.tar.gz
-# Source0-md5: 30645001f4b97019677cad88d3811904
+# Source0-md5: 6f75aabcffd012f73bd7c331bb5d8232
+Patch0: libpcap-m4.patch
URL: http://www.tcpdump.org/
-BuildRequires: libpcap-devel >= 2:0.8.3
+BuildRequires: autoconf >= 2.50
+BuildRequires: libcap-ng-devel
+BuildRequires: libpcap-devel >= 2:1.4.0
%{?with_libsmi:BuildRequires: libsmi-devel}
BuildRequires: openssl-devel >= 0.9.7d
-# beware of tar 1.13.9[12] madness (tarball contains tcpdump-3.8.3/./* paths)
-BuildRequires: tar >= 1:1.13.93
-Requires: libpcap >= 2:0.8.3
+BuildRequires: rpmbuild(macros) >= 1.202
+Requires: libpcap >= 2:1.4.0
+Provides: user(tcpdump)
+Requires(postun): /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/sbin/useradd
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Tcpdump prints out the headers of packets on a network interface. It
is very useful for debugging network problems and security operations.
-%description -l de
+%description -l de.UTF-8
Tcpdump druckt die Headers von Paketen auf einer Netzschnittstelle. Es
-ist überaus nützlich zum Debuggen von Netzwerkproblemen und von
+ist überaus nützlich zum Debuggen von Netzwerkproblemen und von
Sicherheitsoperationen.
-%description -l es
+%description -l es.UTF-8
Tcpdump imprime los encabezamientos de los paquetes en una interface
-de red. Es muy práctico para solucionar problemas en la red y para
+de red. Es muy práctico para solucionar problemas en la red y para
operaciones de seguridad.
-%description -l fr
-tcpdump affiche les en-têtes des paquets d'une interface réseau. Il
-est très utile pour détecter les problèmes de réseau et de sécurité.
+%description -l fr.UTF-8
+tcpdump affiche les en-têtes des paquets d'une interface réseau. Il
+est très utile pour détecter les problèmes de réseau et de sécurité.
-%description -l pl
-Tcpdump s³u¿y do analizy pakietów przechodz±cych przez interfejsy
-sieciowe, jest u¿ytecznym narzêdziem do ¶ledzenia ruchu w sieci.
+%description -l pl.UTF-8
+Tcpdump służy do analizy pakietów przechodzących przez interfejsy
+sieciowe, jest użytecznym narzędziem do śledzenia ruchu w sieci.
-%description -l pt_BR
-Tcpdump imprime os cabeçalhos dos pacotes em uma interface de rede.
-Ele é muito prático para resolver problemas na rede e para operações
-de segurança.
+%description -l pt_BR.UTF-8
+Tcpdump imprime os cabeçalhos dos pacotes em uma interface de rede.
+Ele é muito prático para resolver problemas na rede e para operações
+de segurança.
-%description -l ru
-Tcpdump ×Ù×ÏÄÉÔ ÈÅÄÅÒÙ ÐÁËÅÔÏ×, ÐÒÏÈÏÄÑÝÉÈ ÞÅÒÅÚ ÓÅÔÅ×ÏÊ ÉÎÔÅÒÆÅÊÓ.
-îÅÚÁÍÅÎÉÍ ÄÌÑ ÄÉÁÇÎÏÓÔÉËÉ ÓÅÔÅ×ÙÈ ÐÒÏÂÌÅÍ É ÎÁÒÕÛÅÎÉÊ ÂÅÚÏÐÁÓÎÏÓÔÉ.
+%description -l ru.UTF-8
+Tcpdump выводит хедеры пакетов, проходящих через сетевой интерфейс.
+Незаменим для диагностики сетевых проблем и нарушений безопасности.
-%description -l tr
-Tcpdump, bir að arabirimi üzerinden geçen paketlerin baþlýklarýný
-döker. Güvenlik iþlemleri ve að problemlerinin irdelenmesi konularýnda
-son derece yararlýdýr.
+%description -l tr.UTF-8
+Tcpdump, bir ağ arabirimi üzerinden geçen paketlerin başlıklarını
+döker. Güvenlik işlemleri ve ağ problemlerinin irdelenmesi konularında
+son derece yararlıdır.
-%description -l uk
-Tcpdump ×É×ÏÄÉÔØ ÈÅÄÅÒÉ ÐÁËÅÔ¦×, ÝÏ ÐÒÏÈÏÄÑÔØ ÞÅÒÅÚ ÍÅÒÅÖÉ×ÎÉÊ
-¦ÎÔÅÒÆÅÊÓ. îÅÚÁͦÎÎÉÊ ÄÌÑ Ä¦ÁÇÎÏÓÔÉËÉ ÍÅÒÅÖÉ×ÎÉÈ ÐÒÏÂÌÅÍ ÔÁ ÐÏÒÕÛÅÎØ
-ÂÅÚÐÅËÉ.
+%description -l uk.UTF-8
+Tcpdump виводить хедери пакетів, що проходять через мереживний
+інтерфейс. Незамінний для діагностики мереживних проблем та порушень
+безпеки.
%prep
%setup -q
+%patch0 -p1
%build
+%{__autoconf}
%configure \
- --enable-ipv6
+ CFLAGS="-I. %{rpmcflags} %{rpmcppflags}" \
+ %{?with_smi:--with-smi} \
+%if %{with drop_priv}
+ --with-user=tcpdump \
+ --with-chroot=/usr/share/empty \
+%endif
+ --enable-ipv6 \
+ --with-crypto
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+%{__rm} $RPM_BUILD_ROOT%{_sbindir}/tcpdump.%{version}
+
+%pre
+%useradd -u 273 -r -d /usr/share/empty -s /bin/false -c "tcpdump User" -g nobody tcpdump
+
+%postun
+if [ "$1" = "0" ]; then
+ %userremove tcpdump
+fi
+
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc CHANGES CREDITS LICENSE README TODO
+%doc CHANGES CREDITS LICENSE README
%attr(755,root,root) %{_sbindir}/tcpdump
-%{_mandir}/man1/*
+%{_mandir}/man1/tcpdump.1*