Module Name: src Committed By: jdc Date: Fri Jul 12 11:18:32 UTC 2013
Modified Files: src/sys/netinet6 [netbsd-6-0]: nd6_rtr.c Log Message: Pull up revision 1.84 via patch to fix gcc 4.1 compilation error (uninitialised variable): Some fun in trying to work out what was broken with gcc-4.1 to trigger the following warning when gcc-4.5 was silent: nd6_rtr.c: In function 'nd6_ra_input': nd6_rtr.c:788: warning: 'ext' may be used uninitialized in this function Eventually determined that it was not unreasonable for gcc-4.1 to bleat in this case as there is a nasty 'goto insert' which could indeed have resulted in an uninitialised variable use. Yay gcc 4.1. To generate a diff of this commit: cvs rdiff -u -r1.82.8.1 -r1.82.8.2 src/sys/netinet6/nd6_rtr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/netinet6/nd6_rtr.c diff -u src/sys/netinet6/nd6_rtr.c:1.82.8.1 src/sys/netinet6/nd6_rtr.c:1.82.8.2 --- src/sys/netinet6/nd6_rtr.c:1.82.8.1 Mon Jul 8 07:40:34 2013 +++ src/sys/netinet6/nd6_rtr.c Fri Jul 12 11:18:32 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: nd6_rtr.c,v 1.82.8.1 2013/07/08 07:40:34 jdc Exp $ */ +/* $NetBSD: nd6_rtr.c,v 1.82.8.2 2013/07/12 11:18:32 jdc Exp $ */ /* $KAME: nd6_rtr.c,v 1.95 2001/02/07 08:09:47 itojun Exp $ */ /* @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: nd6_rtr.c,v 1.82.8.1 2013/07/08 07:40:34 jdc Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nd6_rtr.c,v 1.82.8.2 2013/07/12 11:18:32 jdc Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -744,6 +744,7 @@ static struct nd_defrouter * defrtrlist_update(struct nd_defrouter *new) { struct nd_defrouter *dr, *n; + struct in6_ifextra *ext = new->ifp->if_afdata[AF_INET6]; int s = splsoftnet(); if ((dr = defrouter_lookup(&new->rtaddr, new->ifp)) != NULL) { @@ -785,7 +786,6 @@ defrtrlist_update(struct nd_defrouter *n return (dr); } - struct in6_ifextra *ext = new->ifp->if_afdata[AF_INET6]; if (ip6_maxifdefrouters >= 0 && ext->ndefrouters >= ip6_maxifdefrouters) { splx(s);