forked from pool/scamper
* scamper: * improvements with -N squeries; let -Q send all probes when using -N. add -H wait-probe-hop, which specifies the minimum delay between probes with the same TTL. identify the hop that would have caused traceroute to stop when not using -N so that a normal traceroute path with one hop representing the destination or stopping hop in the path is rendered. in the json output, put extra hops beyond the stopping hop into a extra_hops array. * make ring-nolocked the default when using -O ring. * improvements with udpprobe: provide ability to send multiple copies of the same payload, add json output, reuse available UDP sockets where possible. * consistently set and record the IPv4 tos and IPv6 tclass fields for both ping and trace. * fix warts.bz2 and warts.xz output, which could previously use all available space on the file system. * speed up rendering of byte arrays as hex in json output. * fix obtaining IPv6 hoplimit on received packets on MacOS. * record the name of the interface that received IPv4 and IPv6 ICMP responses in ping. * add TXT queries to host command; add chaos query class; add DNS-over-TCP. * fix use of ctype functions according to netbsd (cast all parameters to unsigned char). make pass through use of ctype functions to do ctype function calls last in most logical statements. * cleanup scamper_file_warts.h so that only necessary struct definitions are in that header. * libscamperfile: * add new functions, bump library version due to udpprobe changes. OBS-URL: https://build.opensuse.org/package/show/network:utilities/scamper?expand=0&rev=66
168 lines
6.1 KiB
RPMSpec
168 lines
6.1 KiB
RPMSpec
#
|
|
# spec file for package scamper
|
|
#
|
|
# Copyright (c) 2024 SUSE LLC
|
|
# Copyright (c) 2016, Martin Hauke <mardnh@gmx.de>
|
|
#
|
|
# 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 https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: scamper
|
|
Version: 20240503
|
|
Release: 0
|
|
Summary: Parallel Internet measurement utility
|
|
License: GPL-2.0-only
|
|
Group: Productivity/Networking/Diagnostic
|
|
URL: https://www.caida.org/catalog/software/scamper/
|
|
Source: https://www.caida.org/tools/measurement/%{name}/code/%{name}-cvs-%{version}.tar.gz
|
|
BuildRequires: libopenssl-devel
|
|
# for the Python module
|
|
BuildRequires: python3
|
|
BuildRequires: python3-Cython0
|
|
# for sc_uptime
|
|
BuildRequires: pkgconfig(sqlite3)
|
|
# for sc_hoiho
|
|
BuildRequires: pkgconfig(libpcre2-8)
|
|
BuildRequires: pkgconfig(libpcre)
|
|
|
|
%description
|
|
Scamper is a program that is able to conduct Internet measurement
|
|
tasks to large numbers of IPv4 and IPv6 addresses, in parallel, to
|
|
fill a specified packets-per-second rate. Currently, it supports the
|
|
well-known ping and traceroute techniques, as well as MDA traceroute,
|
|
alias resolution, some parts of tbit, sting, and neighbour discovery.
|
|
|
|
Scamper can do ICMP-based Path MTU discovery. scamper starts with the
|
|
outgoing interface's MTU and discovers the location of Path MTU
|
|
bottlenecks. scamper performs a PMTUD search when an ICMP
|
|
fragmentation required message is not returned to establish the PMTU
|
|
to the next point in the network, followed by a TTL limited search to
|
|
infer where the failure appears to occur.
|
|
|
|
This also contains the Python module.
|
|
|
|
%package -n libscamperfile9
|
|
Summary: File access library for scamper's binary dump format
|
|
Group: System/Libraries
|
|
Obsoletes: libscamperfile1 < %{version}
|
|
Obsoletes: libscamperfile2 < %{version}
|
|
Obsoletes: libscamperfile3 < %{version}
|
|
Obsoletes: libscamperfile4 < %{version}
|
|
Obsoletes: libscamperfile5 < %{version}
|
|
Obsoletes: libscamperfile6 < %{version}
|
|
Obsoletes: libscamperfile8 < %{version}
|
|
|
|
%description -n libscamperfile9
|
|
Scamper is a program that is able to conduct Internet measurement
|
|
tasks to large numbers of IPv4 and IPv6 addresses, in parallel, to
|
|
fill a specified packets-per-second rate. Currently, it supports the
|
|
well-known ping and traceroute techniques, as well as MDA traceroute,
|
|
alias resolution, some parts of tbit, sting, and neighbour discovery.
|
|
|
|
This package contains the library that provides access to the binary output
|
|
files that scamper can produce in certain modes.
|
|
|
|
%package -n libscamperfile-devel
|
|
Summary: Development headers for scamper's binary dump file access library
|
|
Group: Development/Libraries/Other
|
|
Requires: libscamperfile8 = %{version}-%{release}
|
|
|
|
%description -n libscamperfile-devel
|
|
Scamper is a program that is able to conduct Internet measurement
|
|
tasks to large numbers of IPv4 and IPv6 addresses, in parallel, to
|
|
fill a specified packets-per-second rate. Currently, it supports the
|
|
well-known ping and traceroute techniques, as well as MDA traceroute,
|
|
alias resolution, some parts of tbit, sting, and neighbour discovery.
|
|
|
|
This package contains development headers and other ancillary files for the
|
|
libscamperfile library.
|
|
|
|
%package -n libscamperctrl2
|
|
Summary: Control library for scamper
|
|
Group: System/Libraries
|
|
Obsoletes: libscamperctl1 < %{version}
|
|
|
|
%description -n libscamperctrl2
|
|
Scamper is a program that is able to conduct Internet measurement
|
|
tasks to large numbers of IPv4 and IPv6 addresses, in parallel, to
|
|
fill a specified packets-per-second rate. Currently, it supports the
|
|
well-known ping and traceroute techniques, as well as MDA traceroute,
|
|
alias resolution, some parts of tbit, sting, and neighbour discovery.
|
|
|
|
This package contains thee library that provides functions to interact
|
|
with a collection of scamper instances.
|
|
|
|
%package -n libscamperctrl-devel
|
|
Summary: Development headers for scamper's control library
|
|
Group: Development/Libraries/Other
|
|
Requires: libscamperctrl2 = %{version}-%{release}
|
|
|
|
%description -n libscamperctrl-devel
|
|
Scamper is a program that is able to conduct Internet measurement
|
|
tasks to large numbers of IPv4 and IPv6 addresses, in parallel, to
|
|
fill a specified packets-per-second rate. Currently, it supports the
|
|
well-known ping and traceroute techniques, as well as MDA traceroute,
|
|
alias resolution, some parts of tbit, sting, and neighbour discovery.
|
|
|
|
This package contains development headers and other ancillary files for the
|
|
libscamperctrl library.
|
|
|
|
%prep
|
|
%setup -q -n %{name}-cvs-%{version}
|
|
|
|
%build
|
|
export PYTHON=%{_bindir}/python3
|
|
# disable pcre2 build in 20240229 because of build failure. Reported upstream
|
|
#%%configure --disable-static --without-debugfile --with-pcre2 --enable-sc_hoiho --enable-sc_uptime --with-python --enable-tests
|
|
%configure --disable-static --without-debugfile --enable-sc_uptime --with-python --enable-tests
|
|
make %{?_smp_mflags}
|
|
|
|
%install
|
|
%make_install
|
|
find %{buildroot} -type f -name "*.la" -delete -print
|
|
|
|
%check
|
|
pushd tests
|
|
make %{?_smp_mflags}
|
|
popd
|
|
|
|
%post -n libscamperfile9 -p /sbin/ldconfig
|
|
%post -n libscamperctrl2 -p /sbin/ldconfig
|
|
%postun -n libscamperfile9 -p /sbin/ldconfig
|
|
%postun -n libscamperctrl2 -p /sbin/ldconfig
|
|
|
|
%files
|
|
%license COPYING
|
|
%{_bindir}/sc_*
|
|
%{_bindir}/scamper
|
|
%{_mandir}/man1/*
|
|
%{_mandir}/man5/*
|
|
%{python3_sitelib}/scamper.so
|
|
|
|
%files -n libscamperfile9
|
|
%{_libdir}/libscamperfile.so.*
|
|
|
|
%files -n libscamperfile-devel
|
|
%{_includedir}/scamper_*
|
|
%{_libdir}/libscamperfile.so
|
|
%{_mandir}/man3/*
|
|
|
|
%files -n libscamperctrl2
|
|
%{_libdir}/libscamperctrl.so.*
|
|
|
|
%files -n libscamperctrl-devel
|
|
%{_includedir}/libscamperctrl.h
|
|
%{_libdir}/libscamperctrl.so
|
|
|
|
%changelog
|