pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

PR/59717 CVS commit: pkgsrc/net/scamper



The following reply was made to PR pkg/59717; it has been noted by GNATS.

From: "Benny Siegert" <bsiegert%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/59717 CVS commit: pkgsrc/net/scamper
Date: Mon, 20 Oct 2025 18:37:13 +0000

 Module Name:	pkgsrc
 Committed By:	bsiegert
 Date:		Mon Oct 20 18:37:13 UTC 2025
 
 Modified Files:
 	pkgsrc/net/scamper: Makefile distinfo
 
 Log Message:
 scamper: update to 20251020
 
 From mjl in PR pkg/59717.
 
 scamper:
 * support tx/rx on ARPHRD_NONE linux packet sockets
 * make route socket code work on solaris
 * disable epoll on solaris, which doesn't seem to work
 * let host -s take an IPv6 address
 * add sniff.enable and neighbourdisc.enable config options
 * add neighbourdisc json output
 * abandon a remote source and its current tasks when sc_remoted sends
   an application-level fin
 * trace, tracelb: do not do ptr lookups if host command has been
   disabled by configuration
 * remove unused msec parameter from scamper_task_queue_done, remove
   scamper_task_queue and scamper_task_queue_wait, removing unnecessary
   gettimeofday calls.
 * rename time-based variables in event loop after their use to
   make it more obvious what is going on
 * fix json rendering of pmtud traceroutes with a host-connected MTU
   mismatch
 * fix regression from 20250106 where scamper might not write the final
   measurement result and hang indefinitely, if you are unlucky.
 * add do-not-probe file support, with -O dnp=file option, documented
   in man page.  do-not-probe file support can be disabled with
   --disable-scamper-dnp configure option.
 * let traceroute with PMTUD use ICMP-echo probes, document in man page.
 * document existence of ping -O mss=val option in man page.
 * add tls_errstr, use it in printerror_ssl.
 * minify ping and trace json output by removing spaces in output.
 * host: if qname contains a trailing dot, remove the trailing dot, so that
   example.com. and example.com are equivalent.
 * host: if do-not-probe file contains a prefix covering a nameserver
   in /etc/resolv.conf, still allow the host command to use it.
 * rework most internal use of printerror/scamper_debug, tagging
   measurement results with errmsg strings if an error occurs affecting
   a measurement.
 * emit errmsg strings in json and warts output.  errmsg strings will
   also be emitted to debugfile / stderr as before.  these strings
   are not emitted in text output of measurements.
 * add error result code (stop reason) to dealias measurements.
 * silently ignore unlikely PTR lookup error conditions for trace and
   tracelb -- PTR lookups are not essential components of these
   measurements.
 * fix memory leaks when encountering unlikely error conditions in
   sting, tbit, tracelb, udpprobe.
 
 libscamperfile:
 * add scamper_neighbourdisc_tojson, bump version
 * clean up mtu / stop_hop checks in trace text output
 * provide API access to udpprobe stop_reason and its string rendering.
 * add scamper_dealias_reply_is_icmp_echo_reply().
 * silence spurious uninitialized use warning in scamper_http_lib.c.
 * add scamper_tbit_totext().
 * fix regression from 20241112 when reading tbit warts, which rejected
   valid tbit measurements.
 * add scamper_*_errmsg_get functions.
 * let neighbourdisc src_mac and dst_ip be null when reading warts
   files, rather than reject the object.
 * bump version.
 
 libscamperctrl:
 * add iata attribute to scamper_vp_t.
 * bump version.
 
 throughout:
 * switch to mostly timeval-based math to avoid division operations,
   remove some timeval functions, add others (mul, div)
 * implement branchless comparison functions for address and time
   comparison
 * speed up ipv4_prefix, ipv4_prefixhosts scamper_addr implementations
 * simplify string_nullterm and string_nullterm_char according to how
   they are used in practice
 * add slist_node_iter and dlist_node_iter functions to optimise a
   common code pattern
 * add slist_to_dlist, dlist_to_slist, splaytree_to_slist, and
   splaytree_to_dlist to reduce repeated code
 * silence warnings and errors when compiling with gcc 2.95
 * remove string_concaf from more places.
 
 Python module:
 * add ScamperNeighbourdisc.to_json(), to convert a neighbourdisc object
   to JSON.
 * add ScamperInst.resultc attribute, to find out the number of result
   objects queued in the parent ScamperCtrl for the instance.
 * signal eof when the instance has no objects queued in parent ctrl
 * make ScamperIcmpExts.ext_count be an attribute, consistent with
   documentation
 * make ScamperTracelbNode near, far, length be attributes rather than
   methods, consistent with documentation
 * fix sync=True do_* code paths
 * install scamper.pyi file alongside the compiled python module to
   allow for static type checking analysis with mypy, and for code
   completion in vscode
 * use #defines from scamper C header files in more places.
 * support pickling of ScamperAddr.
 * add .iata attribute to ScamperVP, ScamperInst.
 * add .stop_reason and .stop_reason_str attributes to ScamperHost,
   ScamperHttp, ScamperPing and ScamperUdpprobe.
 * add ScamperDealias.is_icmp_echo_reply().
 * add to_text() method to ScamperDealias, ScamperPing, ScamperTbit,
   ScamperTrace, ScamperTracelb.
 * release GIL when waiting for measurement results so that module is
   asyncio friendly.
 * add errmsg attribute to measurement objects, interface file, and
   document.
 
 sc_remoted:
 * disconnect mux clients if associated scamper process disconnects
 * catch TERM signal (in addition to INT and HUP)
 * write pidfile after becoming daemon, when -D is used
 * add iata to list of supported metadata items per VP, document in
   man page.
 
 sc_hoiho:
 * learn ASN regexes where the operator controlling the PTR record uses
   a prefix on the hostname (e.g., ^ipv4.de-cix.)
 
 sc_minrtt:
 * add -a anycast-file option, to specify a file containing apparent
   anycast prefixes.  sc_minrtt will not consider samples for a covered
   IP address if any of the samples collected by sc_pinger for the
   address imply the address could not be in a single location.
   document in man page.
 
 sc_pinger:
 * add -Z zombie-time option, which will cause sc_pinger to exit if a
   remote scamper instance goes silent for a user-defined length of
   time
 * add -B bad-spec option to detect bad probe methods at run time,
   which look for unlikely sequences of reply TTL values
 * update documentation
 
 sc_wartsdump:
 * print error code for udpprobe.
 * use scamper_*_[stop|result]_tostr functions rather than duplicate code.
 * emit errmsg.
 
 tests:
 * further config unit tests
 * add neighbourdisc test case
 * add unit tests for string_nullterm and string_nullterm_char
 * expand timeval math tests by adding add, diff, inrange, mul, div
   tests, and more sub tests
 * expand scamper_addr tests to include cmp, human_cmp,
   prefix, first-bit-diff, and prefixhosts
 * expand trace tests to include a pmtud traceroute with a
   host-connected MTU mismatch
 * add more qname tests in unit_cmd_host.c.
 * check that errmsg is read-from and written-to warts files correctly.
 
 documentation:
 * complete trace and ping warts(5) format descriptions
 
 misc:
 * benign changes to allow compilation on solaris
 
 
 To generate a diff of this commit:
 cvs rdiff -u -r1.23 -r1.24 pkgsrc/net/scamper/Makefile
 cvs rdiff -u -r1.20 -r1.21 pkgsrc/net/scamper/distinfo
 
 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.
 


Home | Main Index | Thread Index | Old Index