changeset 3098:64c563c52ef5

Make ip6_init2() visible globally to allow method of disabling ipv6 support at runtime. [ Bugzilla 1001502 ]
author grante
date Tue, 06 Mar 2012 17:16:11 +0000
parents a75d37e86790
children 44b61e2c19f7
files packages/net/bsd_tcpip/current/ChangeLog packages/net/bsd_tcpip/current/include/sys/param.h packages/net/bsd_tcpip/current/src/sys/netinet6/ip6_input.c
diffstat 3 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/packages/net/bsd_tcpip/current/ChangeLog
+++ b/packages/net/bsd_tcpip/current/ChangeLog
@@ -1,3 +1,12 @@
+2012-03-06  Grant Edwards <grant.b.edwards@gmail.com>
+	
+	* include/sys/param.h:
+	* src/sys/netinet6/ip6_input.c:  Make ip6_init2() visible globally
+	as cyg_ip6_init2() so that it's possible to disable ipv6 support
+	at runtime by munging the net init table and replacing calls to
+	net_add_domain(&inet6domain) and ip6_init2() with calls to a noop
+	function. [ Bugzilla 1001502 ]
+
 2012-02-29  Grant Edwards <grant.b.edwards@gmail.com>
 
 	* cdl/freebsd_net.cdl:  Add -fno-strict-aliasing compiler flag to fix
--- a/packages/net/bsd_tcpip/current/include/sys/param.h
+++ b/packages/net/bsd_tcpip/current/include/sys/param.h
@@ -222,6 +222,7 @@
 #define ip6_get_prevhdr cyg_ip6_get_prevhdr
 #define ip6_getdstifaddr cyg_ip6_getdstifaddr
 #define ip6_init cyg_ip6_init
+#define ip6_init2 cyg_ip6_init2
 #define ip6_input cyg_ip6_input
 #define ip6_lasthdr cyg_ip6_lasthdr
 #define ip6_mforward cyg_ip6_mforward
--- a/packages/net/bsd_tcpip/current/src/sys/netinet6/ip6_input.c
+++ b/packages/net/bsd_tcpip/current/src/sys/netinet6/ip6_input.c
@@ -222,7 +222,7 @@ int ip6_fw_enable = 1;
 
 struct ip6stat ip6stat;
 
-static void ip6_init2 __P((void *));
+void ip6_init2 __P((void *));
 static struct mbuf *ip6_setdstifaddr __P((struct mbuf *, struct in6_ifaddr *));
 
 static int ip6_hopopts_input __P((u_int32_t *, u_int32_t *, struct mbuf **, int *));
@@ -338,7 +338,7 @@ ip6_init()
 #endif
 }
 
-static void
+void
 ip6_init2(dummy)
 	void *dummy;
 {