Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Apr 2011 08:05:23 +0000 (UTC)
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r220881 - head/sys/netinet6
Message-ID:  <201104200805.p3K85NaB037716@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bz
Date: Wed Apr 20 08:05:23 2011
New Revision: 220881
URL: http://svn.freebsd.org/changeset/base/220881

Log:
  MFp4 CH=191760,191770:
  
  Not compiling in and not initializing from inetsw from in_proto.c for
  IPv6 only, we need to initialize upper layer protocols from inet6sw.
  Make sure to not initialize them twice in a Dual-Stack
  environment but only conditionally on no INET as we have done for
  TCP for a long time.  Otherwise we would leak resources.
  
  Reviewed by:	gnn
  Sponsored by:	The FreeBSD Foundation
  Sponsored by:	iXsystems
  MFC after:	3 days

Modified:
  head/sys/netinet6/in6_proto.c

Modified: head/sys/netinet6/in6_proto.c
==============================================================================
--- head/sys/netinet6/in6_proto.c	Wed Apr 20 08:03:22 2011	(r220880)
+++ head/sys/netinet6/in6_proto.c	Wed Apr 20 08:05:23 2011	(r220881)
@@ -169,6 +169,9 @@ struct ip6protosw inet6sw[] = {
 	.pr_input =		udp6_input,
 	.pr_ctlinput =		udp6_ctlinput,
 	.pr_ctloutput =		ip6_ctloutput,
+#ifndef INET	/* Do not call initialization twice. */
+	.pr_init =		udp_init,
+#endif
 	.pr_usrreqs =		&udp6_usrreqs,
 },
 {
@@ -196,6 +199,9 @@ struct ip6protosw inet6sw[] = {
         .pr_ctlinput =  sctp6_ctlinput,
         .pr_ctloutput = sctp_ctloutput,
         .pr_drain =	sctp_drain,
+#ifndef INET	/* Do not call initialization twice. */
+	.pr_init =	sctp_init,
+#endif
         .pr_usrreqs =	&sctp6_usrreqs
 },
 {
@@ -231,6 +237,9 @@ struct ip6protosw inet6sw[] = {
 	.pr_output =		rip6_output,
 	.pr_ctlinput =		rip6_ctlinput,
 	.pr_ctloutput =		rip6_ctloutput,
+#ifndef INET	/* Do not call initialization twice. */
+	.pr_init =		rip_init,
+#endif
 	.pr_usrreqs =		&rip6_usrreqs
 },
 {



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