2 # - update pfring support (libpfring.spec, https://github.com/ntop/PF_RING)
3 # - DAG card support (--with-dag, proprietary, https://support.endace.com/)
4 # - SS7 card support (--with-septel, proprietary, requires Intel Septel API)
5 # - Myricom SNF support (--with-snf, proprietary, from https://www.ariacybersecurity.com/support/downloads/)
6 # - Riverbed TurboCap support (--with-turbocap, proprietary, from https://support.riverbed.com/ ?)
9 %bcond_with dpdk # DPDK support
10 %bcond_with pfring # http://www.ntop.org/PF_RING.html
11 %bcond_without bluetooth # disable bluetooth support
12 %bcond_without ibverbs # RDMA (InfiniBand) capture support
14 Summary: Libpcap provides promiscuous mode access to network interfaces
15 Summary(es.UTF-8): libpcap ofrece acceso a modo promiscuo en interfaces de red
16 Summary(pl.UTF-8): Libpcap pozwala na bezpośredni dostęp do interfejsów sieciowych
17 Summary(pt_BR.UTF-8): A libpcap fornece acesso ao modo promíscuo em interfaces de rede
18 Summary(ru.UTF-8): Предоставляет доступ к сетевым интерфейсам в promiscuous-режиме
19 Summary(uk.UTF-8): Надає доступ до мережевих інтерфейсів в promiscuous-режимі
26 Source0: https://www.tcpdump.org/release/%{name}-%{version}.tar.gz
27 # Source0-md5: 0322e28dd76cda8066bb6d00fee5969b
28 Patch0: %{name}-pf_ring.patch
29 URL: https://www.tcpdump.org/
30 BuildRequires: autoconf >= 2.69
31 BuildRequires: automake
33 %{?with_bluetooth:BuildRequires: bluez-libs-devel}
34 %{?with_dpdk:BuildRequires: dpdk-devel >= 18.02.2}
35 BuildRequires: dbus-devel
36 BuildRequires: flex >= 2.5.31
37 %{?with_ibverbs:BuildRequires: libibverbs-devel}
38 BuildRequires: libnl-devel >= 3.2
39 %{?with_pfring:BuildRequires: libpfring-devel}
40 BuildRequires: libusb-devel >= 1.0
41 BuildRequires: pkgconfig >= 1:0.17
42 Obsoletes: libpcap0 < 1.0
43 Obsoletes: libpcap_mmap < 0.10
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 # per_lcore__lcore_id per_lcore__rte_errno non-function symbols from DPDK
48 %define skip_post_check_so libpcap.so.*
52 Libpcap is a system-independent interface for user-level packet
53 capture. Libpcap provides a portable framework for low-level network
54 monitoring. Applications include network statistics collection,
55 security monitoring, network debugging, etc. Libpcap has
56 system-independent API that is used by several applications, including
59 %description -l es.UTF-8
60 libpcap es una interface independiente de sistema para captura de
61 paquetes en modo usuario. Ofrece un esquema portátil para el control
62 de la red en bajo nivel. Se utiliza para colecta de estadísticas de
63 red, Control de seguridad, depuración de la red, etc. Tiene una API
64 independiente de sistema que se usa por varias aplicaciones, entre
65 ellas tcpdump y arpwatch.
67 %description -l pl.UTF-8
68 libpcap to niezależny od systemu interfejs do przechwytywania pakietów
69 z poziomu użytkownika.
71 %description -l pt_BR.UTF-8
72 A libpcap é uma interface independente de sistema para captura de
73 pacotes em modo usuário. Fornece um esquema portátil para monitoração
74 da rede em baixo nível. É utilizada para coleta de estatísticas de
75 rede, monitoramento de segurança, depuração da rede, etc. Tem uma API
76 independente de sistema que é usada por várias aplicações, entre elas
79 %description -l ru.UTF-8
80 Libpcap - это системнонезависимый интерфейс для захвата пакетов с
81 пользовательского уровня и низкоуровневого сетевого мониторинга.
82 Возможные применения включают сбор сетевой статистики, наблюдение за
83 безопасностью, отладка сети и т.д. Libpcap имеет системнонезависимый
84 API, используемый многими приложениями, включая tcpdump и arpwatch.
86 %description -l uk.UTF-8
87 Libpcap - це системнонезалежний інтерфейс для захвату пакетів з рівня
88 користувача та нізкорівневого моніторингу мережі. Можливі використання
89 включають збір статистики мережі, спостереження за безпекою, відладка
90 мережі і т.і. Libpcap має системнонезалежний API що використовується
91 багатьма програмами, такими ял tcpdump, arpwatch та trafshow.
94 Summary: Header files and develpment documentation for libpcap
95 Summary(es.UTF-8): Arquivos de cabeçalho e bibliotecas de desenvolvimento para libpcap
96 Summary(pl.UTF-8): Pliki nagłówkowe i dokumetacja do libpcap
97 Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para a libpcap
98 Summary(ru.UTF-8): Хедеры и библиотеки програмиста для libpcap
99 Summary(uk.UTF-8): Хедери та бібліотеки програміста для libpcap
100 Group: Development/Libraries
101 Requires: %{name} = %{epoch}:%{version}-%{release}
102 Obsoletes: libpcap0-devel < 1.0
103 Obsoletes: libpcap_mmap-devel < 0.10
106 Libpcap provides a portable framework for low-level network
107 monitoring. Libpcap can provide network statistics collection,
108 security monitoring and network debugging. Since almost every system
109 vendor provides a different interface for packet capture, the libpcap
110 authors created this system-independent API to ease in porting and to
111 alleviate the need for several system-dependent packet capture modules
114 Install libpcap if you need to do low-level network traffic monitoring
117 %description devel -l pl.UTF-8
118 Pliki nagłówkowe i dokumentacja do libpcap.
120 %description devel -l pt_BR.UTF-8
121 Tcpdump imprime os cabeçalhos dos pacotes em uma interface de rede.
122 Ele é muito prático para resolver problemas na rede e para operações
125 %description devel -l ru.UTF-8
126 Хедеры и библиотеки програмиста, необходимые для программирования с
129 %description devel -l uk.UTF-8
130 Хедери та бібліотеки програміста, необхідні для програмування з
134 Summary: Static libpcap library
135 Summary(es.UTF-8): Biblioteca estática usada no desenvolvimento de aplicativos com libpcap
136 Summary(pl.UTF-8): Biblioteka statyczna libpcap
137 Summary(pt_BR.UTF-8): Biblioteca estática de desenvolvimento
138 Summary(ru.UTF-8): Статическая библиотека libpcap
139 Summary(uk.UTF-8): Статична бібліотека libpcap
140 Group: Development/Libraries
141 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
142 Obsoletes: libpcap_mmap-static < 0.10
145 Libpcap provides a portable framework for low-level network
146 monitoring. Libpcap can provide network statistics collection,
147 security monitoring and network debugging. Since almost every system
148 vendor provides a different interface for packet capture, the libpcap
149 authors created this system-independent API to ease in porting and to
150 alleviate the need for several system-dependent packet capture modules
153 This package contains the static library used for development.
155 %description static -l pt_BR.UTF-8
156 Tcpdump imprime os cabeçalhos dos pacotes em uma interface de rede.
157 Ele é muito prático para resolver problemas na rede e para operações
160 %description static -l pl.UTF-8
161 Biblioteka statyczna libpcap.
163 %description static -l ru.UTF-8
164 Статическая библиотека, необходимая для программирования с libpcap.
166 %description static -l uk.UTF-8
167 Статична бібліотека, необхідна для програмування з libpcap.
171 %{?with_pfring:%patch0 -p0}
174 cp -f /usr/share/automake/config.sub .
177 --with-dpdk%{!?with_dpdk:=no} \
180 %{__enable bluetooth} \
181 --enable-rdma%{!?with_ibverbs:=no}
184 %{?with_pfring:CCOPT="%{rpmcflags} -O0"}
187 rm -rf $RPM_BUILD_ROOT
188 install -d $RPM_BUILD_ROOT%{_bindir}
191 DESTDIR=$RPM_BUILD_ROOT
193 # some packages want pcap-int.h (like kismet)...
194 # but sanitize somehow:
195 # don't depend on HAVE_{STRLCPY,SNPRINTF,VSNPRINTF} defines
196 sed -e '/#ifndef HAVE_STRLCPY/,/#endif/d;/#if !defined(HAVE_SNPRINTF)/,/#endif/d;/#if !defined(HAVE_VSNPRINTF)/,/#endif/d' \
197 pcap-int.h > $RPM_BUILD_ROOT%{_includedir}/pcap-int.h
200 diff -u pcap-int.h $RPM_BUILD_ROOT%{_includedir}/pcap-int.h || :
203 rm -rf $RPM_BUILD_ROOT
205 %post -p /sbin/ldconfig
206 %postun -p /sbin/ldconfig
209 %defattr(644,root,root,755)
210 %doc CHANGES CREDITS LICENSE README.md
211 %attr(755,root,root) %{_libdir}/libpcap.so.*.*
212 %attr(755,root,root) %ghost %{_libdir}/libpcap.so.1
213 %{_mandir}/man5/pcap-savefile.5*
214 %{_mandir}/man7/pcap-*.7*
217 %defattr(644,root,root,755)
218 %attr(755,root,root) %{_bindir}/pcap-config
219 %attr(755,root,root) %{_libdir}/libpcap.so
221 %{_includedir}/pcap*.h
222 %{_pkgconfigdir}/libpcap.pc
223 %{_mandir}/man1/pcap-config.1*
224 %{_mandir}/man3/pcap*.3*
227 %defattr(644,root,root,755)