svn commit: r191356 - in head: sys/netinet usr.bin/netstat

Bruce M Simpson bms at FreeBSD.org
Tue Apr 21 12:47:10 UTC 2009


Author: bms
Date: Tue Apr 21 12:47:09 2009
New Revision: 191356
URL: http://svn.freebsd.org/changeset/base/191356

Log:
  Bracket struct mfc and struct rtdetq with #ifdef _KERNEL.
  Match the bracketing in netstat.
  Since the cleanup of MROUTING, ports have broken because they
  expect to include <netinet/ip_mroute.h> without including
  <sys/queue.h>. Fix breakage at source.
  
  The real fix, of course, is to fix the MROUTING APIs by blowing them
  away and replacing them with something else...

Modified:
  head/sys/netinet/ip_mroute.h
  head/usr.bin/netstat/mroute.c

Modified: head/sys/netinet/ip_mroute.h
==============================================================================
--- head/sys/netinet/ip_mroute.h	Tue Apr 21 11:44:40 2009	(r191355)
+++ head/sys/netinet/ip_mroute.h	Tue Apr 21 12:47:09 2009	(r191356)
@@ -52,7 +52,6 @@
  * bandwidth metering and signaling.
  */
 
-
 /*
  * Multicast Routing set/getsockopt commands.
  */
@@ -85,6 +84,7 @@ typedef u_short vifi_t;		/* type of a vi
 #define	VIFM_COPY(mfrom, mto)	((mto) = (mfrom))
 #define	VIFM_SAME(m1, m2)	((m1) == (m2))
 
+struct mfc;
 
 /*
  * Argument structure for MRT_ADD_VIF.
@@ -265,6 +265,7 @@ struct vif {
     struct route	v_route;	/* cached route */
 };
 
+#ifdef _KERNEL
 /*
  * The kernel's multicast forwarding cache entry structure
  */
@@ -285,6 +286,7 @@ struct mfc {
 	u_long		mfc_nstall;		/* # of packets awaiting mfc */
 	TAILQ_HEAD(, rtdetq) mfc_stall;		/* q of packets awaiting mfc */
 };
+#endif /* _KERNEL */
 
 /*
  * Struct used to communicate from kernel to multicast router
@@ -304,6 +306,7 @@ struct igmpmsg {
     struct in_addr  im_src, im_dst;
 };
 
+#ifdef _KERNEL
 /*
  * Argument structure used for pkt info. while upcall is made
  */
@@ -314,6 +317,7 @@ struct rtdetq {
     vifi_t		xmt_vif;	/* Saved copy of imo_multicast_vif  */
 };
 #define MAX_UPQ	4		/* max. no of pkts in upcall Q */
+#endif /* _KERNEL */
 
 /*
  * Structure for measuring the bandwidth and sending an upcall if the

Modified: head/usr.bin/netstat/mroute.c
==============================================================================
--- head/usr.bin/netstat/mroute.c	Tue Apr 21 11:44:40 2009	(r191355)
+++ head/usr.bin/netstat/mroute.c	Tue Apr 21 12:47:09 2009	(r191356)
@@ -59,7 +59,10 @@ __FBSDID("$FreeBSD$");
 #include <netinet/in.h>
 #include <netinet/igmp.h>
 #include <net/route.h>
+
+#define _KERNEL 1
 #include <netinet/ip_mroute.h>
+#undef _KERNEL
 
 #include <err.h>
 #include <stdint.h>


More information about the svn-src-head mailing list