Hello community, here is the log from the commit of package traceroute for openSUSE:Factory checked in at 2015-07-21 13:26:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/traceroute (Old) and /work/SRC/openSUSE:Factory/.traceroute.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "traceroute" Changes: -------- --- /work/SRC/openSUSE:Factory/traceroute/traceroute.changes 2014-09-02 08:22:12.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.traceroute.new/traceroute.changes 2015-07-21 13:26:13.000000000 +0200 @@ -1,0 +2,14 @@ +Thu Jul 16 20:27:50 UTC 2015 - crrodrig...@opensuse.org + +- traceroute-autotools.patch: switch to non-recursive automake + without libtool. + +------------------------------------------------------------------- +Thu Jul 16 19:33:35 UTC 2015 - crrodrig...@opensuse.org + +- Version 2.0.21 +* fix -F --mtu with current kernel versions +- traceroute-autotools.patch refresh and add -fvisibility=hidden + to CFLAGS. + +------------------------------------------------------------------- Old: ---- traceroute-2.0.20.tar.gz New: ---- traceroute-2.0.21.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ traceroute.spec ++++++ --- /var/tmp/diff_new_pack.8wZMXJ/_old 2015-07-21 13:26:14.000000000 +0200 +++ /var/tmp/diff_new_pack.8wZMXJ/_new 2015-07-21 13:26:14.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package traceroute # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: traceroute -Version: 2.0.20 +Version: 2.0.21 Release: 0 Summary: A new modern implementation of traceroute(8) utility for Linux systems License: GPL-2.0+ @@ -27,7 +27,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build Patch0: traceroute-autotools.patch Patch1: traceroute-secure_getenv.patch -BuildRequires: libtool +BuildRequires: automake Provides: net-tools:%{_sbindir}/%{name} %description ++++++ traceroute-2.0.20.tar.gz -> traceroute-2.0.21.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.0.20/ChangeLog new/traceroute-2.0.21/ChangeLog --- old/traceroute-2.0.20/ChangeLog 2014-06-14 21:00:40.000000000 +0200 +++ new/traceroute-2.0.21/ChangeLog 2014-11-12 04:54:41.000000000 +0100 @@ -1,3 +1,10 @@ +2014-11-12 Dmitry Butskoy <dmi...@butskoy.name> - 2.0.21 + + * Fix `--mtu' and `-F' working on kernels >= 3.13 + + * Some manual page improving (Christopher Mann) + + 2014-06-14 Dmitry Butskoy <dmi...@butskoy.name> - 2.0.20 * Describe all complementary long options in the man page (Jan Synacek) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.0.20/VERSION new/traceroute-2.0.21/VERSION --- old/traceroute-2.0.20/VERSION 2014-06-14 18:41:18.000000000 +0200 +++ new/traceroute-2.0.21/VERSION 2014-11-12 04:47:41.000000000 +0100 @@ -1 +1 @@ -#define VERSION 2.0.20 +#define VERSION 2.0.21 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.0.20/traceroute/traceroute.8 new/traceroute-2.0.21/traceroute/traceroute.8 --- old/traceroute-2.0.20/traceroute/traceroute.8 2014-06-14 18:52:02.000000000 +0200 +++ new/traceroute-2.0.21/traceroute/traceroute.8 2014-11-12 00:27:17.000000000 +0100 @@ -251,8 +251,8 @@ Print the version and exit. .br .P -There is a couple of additional options, intended for an advanced usage -(another trace methods etc.): +There are additional options intended for advanced usage +(such as alternate trace methods etc.): .TP .B \--sport\fR=\fIport Chooses the source port to use. Implies diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.0.20/traceroute/traceroute.c new/traceroute-2.0.21/traceroute/traceroute.c --- old/traceroute-2.0.20/traceroute/traceroute.c 2014-06-14 20:57:38.000000000 +0200 +++ new/traceroute-2.0.21/traceroute/traceroute.c 2014-11-12 04:33:00.000000000 +0100 @@ -1252,6 +1252,19 @@ } +static void parse_local_res (probe *pb, int ee_errno, int info) { + + if (ee_errno == EMSGSIZE && info != 0) { + snprintf (pb->err_str, sizeof(pb->err_str)-1, "!F-%d", info); + pb->final = 1; + return; + } + + errno = ee_errno; + error ("local recverr"); +} + + void probe_done (probe *pb) { if (pb->sk) { @@ -1321,7 +1334,17 @@ pb = check_reply (sk, err, &from, bufp, n); - if (!pb) return; + if (!pb) { + + /* for `frag needed' case at the local host, + kernel >= 3.13 sends local error (no more icmp) + */ + if (!n && err && dontfrag) { + pb = &probes[(first_hop - 1) * probes_per_hop]; + if (pb->done) return; + } else + return; + } /* Parse CMSG stuff */ @@ -1345,11 +1368,14 @@ ee = (struct sock_extended_err *) ptr; - if (ee->ee_origin != SO_EE_ORIGIN_ICMP) - ee = NULL; + if (ee->ee_origin != SO_EE_ORIGIN_ICMP && + ee->ee_origin != SO_EE_ORIGIN_LOCAL + ) return; + /* dgram icmp sockets might return extra things... */ - else if (ee->ee_type == ICMP_SOURCE_QUENCH || - ee->ee_type == ICMP_REDIRECT + if (ee->ee_origin == SO_EE_ORIGIN_ICMP && + (ee->ee_type == ICMP_SOURCE_QUENCH || + ee->ee_type == ICMP_REDIRECT) ) return; } } @@ -1361,8 +1387,9 @@ ee = (struct sock_extended_err *) ptr; - if (ee->ee_origin != SO_EE_ORIGIN_ICMP6) - ee = NULL; + if (ee->ee_origin != SO_EE_ORIGIN_ICMP6 && + ee->ee_origin != SO_EE_ORIGIN_LOCAL + ) return; } } } @@ -1378,11 +1405,14 @@ pb->recv_ttl = recv_ttl; - if (ee) { + if (ee && ee->ee_origin != SO_EE_ORIGIN_LOCAL) { /* icmp or icmp6 */ memcpy (&pb->res, SO_EE_OFFENDER (ee), sizeof(pb->res)); parse_icmp_res (pb, ee->ee_type, ee->ee_code, ee->ee_info); } + if (ee && ee->ee_origin == SO_EE_ORIGIN_LOCAL) + parse_local_res (pb, ee->ee_errno, ee->ee_info); + if (ee && mtudisc && @@ -1529,7 +1559,7 @@ if (errno == ENOBUFS || errno == EAGAIN) return res; if (errno == EMSGSIZE) - return 0; /* icmp will say more... */ + return 0; /* recverr will say more... */ error ("send"); /* not recoverable */ } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/traceroute-2.0.20/traceroute.spec new/traceroute-2.0.21/traceroute.spec --- old/traceroute-2.0.20/traceroute.spec 2014-06-14 18:41:18.000000000 +0200 +++ new/traceroute-2.0.21/traceroute.spec 2014-11-12 04:47:41.000000000 +0100 @@ -1,6 +1,6 @@ Summary: Traces the route taken by packets over an IPv4/IPv6 network Name: traceroute -Version: 2.0.20 +Version: 2.0.21 Release: 1%{?dist} Group: Applications/Internet License: GPLv2+ ++++++ traceroute-autotools.patch ++++++ --- /var/tmp/diff_new_pack.8wZMXJ/_old 2015-07-21 13:26:14.000000000 +0200 +++ /var/tmp/diff_new_pack.8wZMXJ/_new 2015-07-21 13:26:14.000000000 +0200 @@ -1,84 +1,55 @@ --- /dev/null -+++ traceroute-2.0.20/Makefile.am -@@ -0,0 +1 @@ -+SUBDIRS = libsupp traceroute ++++ traceroute-2.0.21/Makefile.am +@@ -0,0 +1,17 @@ ++AM_CPPFLAGS = -include $(top_builddir)/config.h -I$(top_srcdir)/libsupp ++AM_CFLAGS = -fvisibility=hidden -fPIE ++ ++noinst_LIBRARIES = libsupp.a ++libsupp_a_SOURCES = libsupp/clif.c libsupp/clif.h ++ ++sbin_PROGRAMS = traceroute/traceroute ++ ++man8_MANS = traceroute/traceroute.8 ++ ++traceroute_traceroute_SOURCES = traceroute/as_lookups.c traceroute/extension.c traceroute/mod-icmp.c traceroute/mod-tcp.c \ ++ traceroute/mod-udp.c traceroute/poll.c traceroute/time.c traceroute/traceroute.c \ ++ traceroute/csum.c traceroute/flowlabel.h traceroute/mod-tcpconn.c traceroute/traceroute.h \ ++ traceroute/mod-dccp.c traceroute/mod-raw.c traceroute/module.c traceroute/random.c ++ ++traceroute_traceroute_LDFLAGS = -pie ++traceroute_traceroute_LDADD = libsupp.a \ No newline at end of file --- /dev/null -+++ traceroute-2.0.20/configure.ac -@@ -0,0 +1,41 @@ ++++ traceroute-2.0.21/configure.ac +@@ -0,0 +1,26 @@ +# -*- Autoconf -*- +# Process this file with autoconf to produce a configure script. + +AC_PREREQ(2.60) +AC_INIT([traceroute], -+ [2.0.19], ++ [2.0.21], + [traceroute-de...@lists.sourceforge.net], + [traceroute], + [http://traceroute.sourceforge.net/]) +AC_CONFIG_SRCDIR([traceroute/traceroute.h]) +AC_CONFIG_HEADERS([config.h]) -+AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability silent-rules tar-pax no-dist-gzip dist-xz subdir-objects]) ++AM_INIT_AUTOMAKE([foreign 1.11 -Wall silent-rules tar-pax no-dist-gzip dist-xz subdir-objects]) + +# Checks for programs. -+AC_PROG_AWK +AC_PROG_CC_STDC +AC_USE_SYSTEM_EXTENSIONS +AC_SYS_LARGEFILE +AC_PROG_INSTALL -+AC_PROG_LN_S -+LT_INIT([disable-static pic-only]) ++AM_PROG_AR ++AC_PROG_RANLIB + +# Checks for libraries. -+ -+# Checks for header files. -+AC_CHECK_HEADERS([fcntl.h locale.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h]) -+ -+# Checks for typedefs, structures, and compiler characteristics. -+AC_TYPE_SIZE_T -+ -+# Checks for library functions. -+AC_FUNC_ALLOCA -+AC_FUNC_ERROR_AT_LINE -+AC_FUNC_MALLOC -+AC_FUNC_REALLOC -+AC_FUNC_STRTOD -+AC_CHECK_FUNCS([dup2 gettimeofday memset setlocale socket strcasecmp strchr strdup strrchr strstr strtol strtoul uname]) +AC_CHECK_FUNCS([__secure_getenv secure_getenv]) + -+AC_CONFIG_FILES([Makefile libsupp/Makefile traceroute/Makefile]) ++AC_CONFIG_FILES([Makefile]) +AC_OUTPUT ---- /dev/null -+++ traceroute-2.0.20/libsupp/Makefile.am -@@ -0,0 +1,5 @@ -+AM_CPPFLAGS = -include $(top_builddir)/config.h -+ -+noinst_LTLIBRARIES = libsupp.la -+ -+libsupp_la_SOURCES = clif.c clif.h ---- /dev/null -+++ traceroute-2.0.20/traceroute/Makefile.am -@@ -0,0 +1,18 @@ -+ -+ -+ -+AM_CPPFLAGS = -include $(top_builddir)/config.h -+ -+sbin_PROGRAMS = traceroute -+ -+man8_MANS = traceroute.8 -+ -+traceroute_CFLAGS = $(AM_CFLAGS) -fpie -+traceroute_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/libsupp -+traceroute_SOURCES = as_lookups.c extension.c mod-icmp.c mod-tcp.c \ -+ mod-udp.c poll.c time.c traceroute.c \ -+ csum.c flowlabel.h mod-tcpconn.c traceroute.h \ -+ mod-dccp.c mod-raw.c module.c random.c -+ -+traceroute_LDFLAGS = -pie -+traceroute_LDADD = $(top_builddir)/libsupp/libsupp.la -\ No newline at end of file ---- traceroute-2.0.20.orig/traceroute/traceroute.c -+++ traceroute-2.0.20/traceroute/traceroute.c +--- traceroute-2.0.21.orig/traceroute/traceroute.c ++++ traceroute-2.0.21/traceroute/traceroute.c @@ -28,7 +28,6 @@ #include "flowlabel.h"