Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Nov 2024 07:50:35 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 282769] net/scamper: update to 20241112
Message-ID:  <bug-282769-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D282769

            Bug ID: 282769
           Summary: net/scamper: update to 20241112
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: mjl@luckie.org.nz

Created attachment 255186
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D255186&action=
=3Dedit
update net/scamper to 20241112

update net/scamper from 20240716 to 20241112:

https://mailman.caida.org/pipermail/scamper-announce/2024-July/000043.html
https://mailman.caida.org/pipermail/scamper-announce/2024-August/000044.html
https://mailman.caida.org/pipermail/scamper-announce/2024-September/000045.=
html
https://mailman.caida.org/pipermail/scamper-announce/2024-September/000046.=
html
https://mailman.caida.org/pipermail/scamper-announce/2024-November/000047.h=
tml

scamper:
* add dynamic BPF filters for linux "any" packet interface, allowing
  both -O dyn-filter and -O dl-any.
* avoid generating debugging statements that won't be emitted, saving
  CPU in the usual scamper operating mode.
* process dltx timestamps when -N > 1 and tx timestamp is available
  after the response has already arrived
* don't allow TCP traceroute and -N > 1 because packet matching
  responses from the destination is challenging.
* use scamper_seteuid_[raise|lower] in scamper when built without
  privsep, rather than use a repeated code pattern.
* properly set icmp_id on ICMP probe signature in ping when -F 0.
* reduce code duplication in scamper_fd.c by replacing fd_udp() and
  fd_tcp() with fd_tcpudp().
* process IPv6 TCP replies in dealias.
* simplify BPF logic, support unit testing of dl_filter_compile.
* with ping -F 0 and trace -s 0, choose a different TCP or UDP source
  port if an otherwise available source port has been used in the past
  5 seconds to the same destination IP and port.
* ping: add udp-sport probe method
* ping: refactor udp packet matching on datalink sockets
* allow -D when outputting to a file.
* use SO_TIMESTAMP on linux packet sockets, rather than call an ioctl,
  to fix buggy linux timestamps when not using ring
* rework privsep code to be signal aware, and forward signals from
  scamper's privileged process to scamper's unprivileged process via
  the socketpair between the processes.  i.e.,
  scamper -D -U /path/to/scamper-unix-socket -e /path/to/scamper.pid
  kill -HUP `cat /path/to/scamper.pid`
  now works.  TERM and INT also propagate from privileged to
  unprivileged process.  this allows the user that started scamper to
  send signals to the privileged process, which it then forwards to
  unprivileged process.  the user who started scamper is otherwise not
  able to send the unprivileged process signals, as that process
  typically runs as user nobody.
* host: add -O nsid to signal queried server to include nsid OPT
  record in response.  parse any server-provided OPT records.
* udpprobe: record ifname replies were received on
* udpprobe: increase supported probe size from 1000 to 1400 bytes.
* factor out most repeated tls code patterns into utils_tls.c
* add functions to utils_tls.c to load key material from opened
  file descriptors, to allow key material to be reloaded in
  unprivileged process
* reload TLS key material on HUP signal
* do not negotiate use of TLS v1.1
* refactor privsep code to make it obvious which functions belong to
  which process, and develop an obvious pattern in the code.
* make route socket interface work on NetBSD again
* tracelb: fix sport validation
* other minor code cleanups
* add -O noring to disable use of ring buffer on Linux when
  scamper is configured with --enable-scamper-ring
* udpprobe: add -S src parameter, update manual page with
  previously supported but undocumented options
* check bound source address when attempting to reuse open sockets.
* bind to the specified source address with for all udp6 sockets used
  with udp-sport ping method.
* finalize task signatures for ping, trace, udpprobe, and dealias
  immediately before tasks begin probing to provide more ability for
  parallel measurements to the same destinations.

libscamperfile:
* fix memory leaks on malformed warts input
* add scamper_*_tojson functions for dealias, host, ping, tbit, trace,
  tracelb, and udpprobe
* move Makefile rules for libscamperfile from scamper/Makefile.am into
  lib/libscamperfile/Makefile.am
* bump version to account for added interfaces

python module:
* take account of stop_hop when iterating through traceroute hops,
  add ScamperTrace.stop_hop attribute.
* add ScamperTrace.addrs() convenience method, which returns unique
  addresses observed in the path
* add ScamperHost.ans_ptrs() convenience method, which returns the
  text from PTR records in a response
* raise exception if ScamperCtrl.do_*() is called on a ScamperInst
  that has signalled EOF.
* add ScamperInst.is_eof() method.
* add nsid option to ScamperCtrl.do_dns method
* add ScamperUdpprobeReply.ifname attribute
* add OPT glue to ScamperHost, and related features
  (udpsize, edns_version, edns_do attributes)
* add context manager support to ScamperFile and ScamperCtrl, allowing
  for Python with / as syntax
* add src parameter to ScamperCtrl.do_udpprobe
* add to_json() to all measurement types where there's a scamper json
  rendering
* update documentation:
  https://www.caida.org/catalog/software/scamper/python/

sc_analysis_dump:
* drop geolocation code from utility, which was not plumbed into
  configure.

sc_minrtt:
* thread input stage, add batch import.  by default, sc_minrtt
  will import N files per batch, where N is the number of processors
  online.
* add -b batchc parameter that allows for batch size to be adjusted
  according to what is appropriate for the system
* set exit status to zero when import is successful
* add -v to emit version of scamper release the utility came from
* refactor code in places
* support batch probing with radargun primitive.

sc_pinger:
* support batch probing with radargun primitive.
* update sc_pinger manual page with batch probing details.

sc_prefixprober:
* allow do-not-probe list to be embedded in the input set of
  prefixes to probe, update manual page.
* add -v to emit version of scamper release the sc_prefixprober
  utility came from

sc_bdrmap:
* change -v vp-ases option to -V vp-ases
* add -v to emit version of scamper release the utility came from

sc_attach, sc_hoiho, sc_remoted:
* add -v to emit version of scamper release the utility came from

sc_speedtrap:
* add -R /path/to/socket to enable speedtrap to use a remote scamper
  instance
* add -v to emit version of scamper release the utility came from
* update man page with documentation

sc_wartsdump:
* update for new udpprobe, host features.

tests:
* add check-ifdef.pl to check for obvious #ifdef bugs
* silence benign clang static analysis warnings.
* add more ping command unit tests.
* add unit_dl_filter_compile to test bpf compiler.
* enhance check-ifdef.pl to find #define / #ifdef ordering issues,
  make pass through code to adjust header ordering.
* add unit_cmd_tracelb, contributed by Marcus Luckie.
* add unit_ping_lib, check scamper_ping_reply_is_from_target
* add unit_host_warts, check OPT record reading and writing.
* expand unit_dl_parse_ip tests

configure:
* add --enable-scamper-ring to configure to make -O ring the default
* check for tcp_timer.h in configure, use if found, to fix check
  for tcp_var.h.
* add --disable-utils and --disable-libs options to configure, to control
  how much of the scamper package is actually built.
* update to serial 37 of ax_python_devel.m4 and serial 8 of
  ax_gcc_builtin.m4

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-282769-7788>