Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Mar 2009 22:54:17 +0000 (UTC)
From:      Bruce M Simpson <bms@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r189603 - head/sys/netinet
Message-ID:  <200903092254.n29MsHpb039627@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bms
Date: Mon Mar  9 22:54:17 2009
New Revision: 189603
URL: http://svn.freebsd.org/changeset/base/189603

Log:
  Fix uninitialized use of ifp for ii.
  
  Found by:	Peter Holm

Modified:
  head/sys/netinet/in.c

Modified: head/sys/netinet/in.c
==============================================================================
--- head/sys/netinet/in.c	Mon Mar  9 22:43:00 2009	(r189602)
+++ head/sys/netinet/in.c	Mon Mar  9 22:54:17 2009	(r189603)
@@ -223,7 +223,6 @@ in_control(struct socket *so, u_long cmd
 	int iaIsFirst;
 
 	ia = NULL;
-	ii = ((struct in_ifinfo *)ifp->if_afdata[AF_INET]);
 	iaIsFirst = 0;
 	iaIsNew = 0;
 	allhosts_addr.s_addr = htonl(INADDR_ALLHOSTS_GROUP);
@@ -428,6 +427,7 @@ in_control(struct socket *so, u_long cmd
 		if (error != 0 && iaIsNew)
 			break;
 		if (error == 0) {
+			ii = ((struct in_ifinfo *)ifp->if_afdata[AF_INET]);
 			if (iaIsFirst &&
 			    (ifp->if_flags & IFF_MULTICAST) != 0) {
 				error = in_joingroup(ifp, &allhosts_addr,
@@ -478,6 +478,7 @@ in_control(struct socket *so, u_long cmd
 		    (ifra->ifra_broadaddr.sin_family == AF_INET))
 			ia->ia_broadaddr = ifra->ifra_broadaddr;
 		if (error == 0) {
+			ii = ((struct in_ifinfo *)ifp->if_afdata[AF_INET]);
 			if (iaIsFirst &&
 			    (ifp->if_flags & IFF_MULTICAST) != 0) {
 				error = in_joingroup(ifp, &allhosts_addr,
@@ -529,6 +530,7 @@ in_control(struct socket *so, u_long cmd
 		oia = NULL;
 		IFP_TO_IA(ifp, oia);
 		if (oia == NULL) {
+			ii = ((struct in_ifinfo *)ifp->if_afdata[AF_INET]);
 			IFF_LOCKGIANT(ifp);
 			IN_MULTI_LOCK();
 			if (ii->ii_allhosts) {



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