Date: Sun, 20 Nov 2005 12:21:30 GMT From: Mark Knight <markk@knigma.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/89312: Patch fixes to bugs in net/mtr Message-ID: <200511201221.jAKCLUe7029772@shrewd.pub.knigma.org> Resent-Message-ID: <200511201230.jAKCUZDx098328@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 89312 >Category: ports >Synopsis: Patch fixes to bugs in net/mtr >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Nov 20 12:30:34 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Mark Knight >Release: FreeBSD 6.0-STABLE i386 >Organization: >Environment: System: FreeBSD shrewd.pub.knigma.org 6.0-STABLE FreeBSD 6.0-STABLE #0: Wed Nov 16 08:03:51 GMT 2005 root@shrewd.pub.knigma.org:/usr/src/sys/i386/compile/SHREWD i386 >Description: Since upgrading to mtr-0.69, I've been getting duplicate entries for multi-path routers. This first bug affects 5.4 and 6.0: <http://www.bitwizard.nl/cgi-bin/mtr/incoming?id=2506> There's also a bug in the IPv6 handling that affects FreeBSD 6.0 (fix found by Hajimu UMEMOTO). >How-To-Repeat: Use mtr on a 6.0-STABLE system. >Fix: The following patch fixes both of these issues: Index: patch-net.c =================================================================== RCS file: /home/ncvs/ports/net/mtr/files/patch-net.c,v retrieving revision 1.1 diff -u -r1.1 patch-net.c --- patch-net.c 29 Oct 2004 22:31:02 -0000 1.1 +++ patch-net.c 16 Nov 2005 19:43:15 -0000 @@ -1,10 +1,28 @@ ---- net.c.orig Wed Aug 25 09:21:27 2004 -+++ net.c Tue Oct 26 12:46:58 2004 -@@ -249,7 +249,6 @@ +--- net.c.orig Thu Jan 13 08:13:53 2005 ++++ net.c Wed Nov 16 19:43:05 2005 +@@ -277,7 +277,7 @@ + exit( EXIT_FAILURE); + } + echotype = ICMP6_ECHO_REQUEST; +- salen = sizeof (struct sockaddr_storage); ++ salen = sizeof (struct sockaddr_in6); + break; + #endif + } +@@ -305,7 +305,6 @@ rv = sendto(sendsock, packet, abs(packetsize), 0, - (struct sockaddr *)&remoteaddress, sizeof(remoteaddress)); + remotesockaddr, salen); if (rv >= 0) { - fprintf (stderr, "You've got a broken (FreeBSD?) system\n"); BSDfix = 1; } } +@@ -346,7 +345,7 @@ + addrcpy( (void *) &(host[index].addrs[0]), addr, af ); + } else { + for( i=0; i<MAXPATH; ) { +- if( addrcmp( (void *) &(host[index].addrs[i]), (void *) &addr, ++ if( addrcmp( (void *) &(host[index].addrs[i]), addr, + af ) == 0 || + addrcmp( (void *) &(host[index].addrs[i]), + (void *) &unspec_addr, af ) == 0 ) break; This patch can also be downloaded here: <http://www.knigma.org.uk/scratch/patch-net.c.txt> >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200511201221.jAKCLUe7029772>