Blob Blame History Raw
Name:		netsniff-ng
Version:	0.5.8
Release:	10%{?dist}
Summary:	Packet sniffing beast
Group:		Applications/Internet
License:	GPLv2
URL:		http://netsniff-ng.org/
Source0:        https://github.com/borkmann/netsniff-ng/archive/%{commit}/%{name}-%{version}-%{shortcommit}.tar.gz
BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildRequires:	ncurses-devel libnl3-devel libpcap-devel GeoIP-devel zlib-devel flex bison

Patch0: 0001-netsniff-ng-add-packet-fanout-support.patch
Patch1: 0002-doc-authors-add-Michal-as-contributor.patch
Patch2: 0003-man-netsniff-ng-document-fanout-options.patch
Patch3: 0004-netsniff-ng-add-example-for-fanout-into-man-page.patch
Patch4: 0005-netsniff-ng-Fix-compiler-warning-introduced-by-fanou.patch
Patch5: 0006-netsniff-ng-Skip-duplicated-packets-on-loopback-device.patch
Patch6: 0007-netsniff-ng-Account-skipped-packets-as-seen-and-drop.patch

%description
The netsniff-ng toolkit currently consists of the following utilities:

* netsniff-ng: the zero-copy sniffer, pcap capturer and replayer itself.
* trafgen: a high performance zero-copy network packet generator.
* astraceroute: an autonomous system (AS) and geo-ip trace route utility.
* ifpps: a top-like kernel networking and system statistics tool.
* bpfc: a tiny Berkeley Packet Filter compiler supporting Linux extensions.

%global commit a225505ea3fd319db87f0828ead3a653f020c4bf
%global shortcommit %(c=%{commit}; echo ${c:0:7})

%prep
%setup -qn %{name}-%{commit}
%patch0 -p1 -b .add-packet-fanout-support
%patch1 -p1 -b .add-michal-contrib
%patch2 -p1 -b .document-fanout-options
%patch3 -p1 -b .example-fanout
%patch4 -p1 -b .fanout-compile-warning
%patch5 -p1 -b .skip-loopback-duplicates
%patch6 -p1 -b .account-skipped-packets

%build
./configure
make DISTRO=1 %{?_smp_mflags}

%install
make PREFIX="%{buildroot}" install

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-, root, root, -)
%doc AUTHORS COPYING README
%{_sbindir}/*
%config(noreplace) %dir %{_sysconfdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}/*
%{_mandir}/man8/*

%changelog
* Tue Aug 02 2016 Eric Garver <egarver@redhat.com> - 0.5.8-10
- netsniff-ng: Account skipped packets as 'seen' and 'dropped'

* Thu Jul 21 2016 Eric Garver <egarver@redhat.com> - 0.5.8-9
- netsniff-ng: Skip duplicated packets on loopback device

* Tue May 31 2016 Eric Garver <egarver@redhat.com> - 0.5.8-8
- netsniff-ng: Fix compiler warning introduced by fanout backport

* Mon May 16 2016 Eric Garver - 0.5.8-7
- netsniff-ng: add packet fanout support
- doc: authors: add Michal as contributor
- man: netsniff-ng: document fanout options
- netsniff-ng: add example for fanout into man page

* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 0.5.8-6
- Mass rebuild 2014-01-24

* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.5.8-5
- Mass rebuild 2013-12-27

* Mon Aug 26 2013 Daniel Borkmann <dborkman@redhat.com> - 0.5.8-4
- GeoIP was added to RHEL7, so we can make use of that to enable
  astraceroute and features in netsniff-ng.
- For this we also need zlib in order to make the updater work.

* Mon Aug 05 2013 Daniel Borkmann <dborkman@redhat.com> - 0.5.8-3
- Package Wrangler feedback from Thomas Graf
- Note: %configure does not work with upstream's build system here as CFLAGS
  will be overwritten. Changes would need to be proposed to upstream first.

* Wed Jul 31 2013 Daniel Borkmann <dborkman@redhat.com> - 0.5.8-2
- Rebased on 0.5.8-rc2 release.

* Tue Jul 23 2013 Daniel Borkmann <dborkman@redhat.com> - 0.5.8-1
- Initial netsniff-ng spec file for RHEL, import of 0.5.8-rc1. Note that
  RHEL packaging differs significantly from Fedora as we only do a partial
  build and have a small fraction of dependencies that are available on
  RHEL.