svn commit: r220746 - in head/sys: conf netinet

Bjoern A. Zeeb bz at FreeBSD.org
Sun Apr 17 16:35:17 UTC 2011


Author: bz
Date: Sun Apr 17 16:35:16 2011
New Revision: 220746
URL: http://svn.freebsd.org/changeset/base/220746

Log:
  Make in_proto.c dependent on either inet or inet6.
  
  While it does not provide any functionality for IPv6, it provides
  the sysctl nodes for net.inet.* that a lot of functionality shared
  between IPv4 and IPv6 depends on.  We cannot change these anymore
  without breaking a lot of management and tuning.
  
  In case of IPv6 only, we compile out everything but the sysctl node
  declarations.
  
  Reviewed by:	gnn
  Sponsored by:	The FreeBSD Foundation
  Sponsored by:	iXsystems
  MFC After:	5 days

Modified:
  head/sys/conf/files
  head/sys/netinet/in_proto.c

Modified: head/sys/conf/files
==============================================================================
--- head/sys/conf/files	Sun Apr 17 16:31:21 2011	(r220745)
+++ head/sys/conf/files	Sun Apr 17 16:35:16 2011	(r220746)
@@ -2653,7 +2653,7 @@ netinet/ip_gre.c		optional gre inet
 netinet/ip_id.c			optional inet
 netinet/in_mcast.c		optional inet
 netinet/in_pcb.c		optional inet | inet6
-netinet/in_proto.c		optional inet \
+netinet/in_proto.c		optional inet | inet6 \
 	compile-with "${NORMAL_C} -I$S/contrib/pf"
 netinet/in_rmx.c		optional inet
 netinet/ip_divert.c		optional inet ipdivert ipfirewall

Modified: head/sys/netinet/in_proto.c
==============================================================================
--- head/sys/netinet/in_proto.c	Sun Apr 17 16:31:21 2011	(r220745)
+++ head/sys/netinet/in_proto.c	Sun Apr 17 16:35:16 2011	(r220746)
@@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$");
 #include "opt_ipx.h"
 #include "opt_mrouting.h"
 #include "opt_ipsec.h"
+#include "opt_inet.h"
 #include "opt_inet6.h"
 #include "opt_pf.h"
 #include "opt_sctp.h"
@@ -50,6 +51,13 @@ __FBSDID("$FreeBSD$");
 #include <sys/queue.h>
 #include <sys/sysctl.h>
 
+/*
+ * While this file provides the domain and protocol switch tables for IPv4, it
+ * also provides the sysctl node declarations for net.inet.* often shared with
+ * IPv6 for common features or by upper layer protocols.  In case of no IPv4
+ * support compile out everything but these sysctl nodes.
+ */
+#ifdef INET
 #include <net/if.h>
 #include <net/route.h>
 #ifdef RADIX_MPATH
@@ -372,6 +380,7 @@ struct domain inetdomain = {
 };
 
 VNET_DOMAIN_SET(inet);
+#endif /* INET */
 
 SYSCTL_NODE(_net,      PF_INET,		inet,	CTLFLAG_RW, 0,
 	"Internet Family");


More information about the svn-src-all mailing list