Date: Tue, 6 May 2003 14:05:01 -0700 From: "Sean Hamilton" <sh@planetquake.com> To: <hackers@freebsd.org> Subject: Re: Bridge config in /etc/rc (patch) Message-ID: <001501c31413$28ace720$0300000a@antalus> References: <000d01c31410$0e574b20$0300000a@antalus>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
------=_NextPart_000_0012_01C313D8.7C1E4C90
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
I wrote:
| And here it is. This is a patch for 5.0-RELEASE, not a diff from my
| previous one.
Probably helps if I remember to include the patch.
sh
------=_NextPart_000_0012_01C313D8.7C1E4C90
Content-Type: application/octet-stream;
name="rcbridge2.diff"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
filename="rcbridge2.diff"
diff -Nru etcorig/rc.d/bridge etc/rc.d/bridge=0A=
--- etcorig/rc.d/bridge Wed Dec 31 16:00:00 1969=0A=
+++ etc/rc.d/bridge Tue May 6 13:25:47 2003=0A=
@@ -0,0 +1,83 @@=0A=
+#!/bin/sh -x=0A=
+=0A=
+# PROVIDE: bridge=0A=
+# REQUIRE: ipfw ip6fw ipfilter=0A=
+# KEYWORD: FreeBSD=0A=
+=0A=
+. /etc/rc.subr=0A=
+=0A=
+name=3D"bridge"=0A=
+start_cmd=3D"bridge_start"=0A=
+stop_cmd=3D"bridge_stop"=0A=
+=0A=
+bridge_start()=0A=
+{=0A=
+ case ${bridge_enable} in=0A=
+ [Yy][Ee][Ss])=0A=
+=0A=
+ bridge_in_kernel=3D1=0A=
+=0A=
+ if ! sysctl net.link.ether.bridge >/dev/null 2>&1; then=0A=
+ if kldload bridge; then=0A=
+ echo 'Bridge module loaded'=0A=
+ else=0A=
+ echo 'Warning: Bridge module failed to load.'=0A=
+ bridge_in_kernel=3D0=0A=
+ fi=0A=
+ fi=0A=
+=0A=
+ if [ "${bridge_in_kernel}" -eq 1 ]; then=0A=
+=0A=
+ bridgenum=3D1=0A=
+ bridgecfg=3D=0A=
+=0A=
+ if [ -n "${bridges}" ]; then=0A=
+ for bridge in ${bridges}; do=0A=
+ eval bridge_args=3D\$bridge_${bridge}=0A=
+ bridge_args=3D`echo -n "${bridge_args}" | sed 's/,/ /'`=0A=
+ for iface in ${bridge_args}; do=0A=
+ if [ -n "${bridgecfg}" ]; then=0A=
+ bridgecfg=3D${bridgecfg},=0A=
+ fi=0A=
+ bridgecfg=3D${bridgecfg}${iface}:$(($bridgenum))=0A=
+ done=0A=
+ bridgenum=3D$(($bridgenum + 1))=0A=
+ done=0A=
+ fi=0A=
+=0A=
+ echo $bridgecfg=0A=
+=0A=
+ case ${bridge_ipfw} in=0A=
+ [Yy][Ee][Ss])=0A=
+ sysctl net.link.ether.bridge_ipfw=3D1 >/dev/null=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
+ case ${bridge_ipfilter} in=0A=
+ [Yy][Ee][Ss])=0A=
+ sysctl net.link.ether.bridge_ipf=3D1 >/dev/null=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
+ sysctl net.link.ether.bridge_cfg=3D"${bridgecfg}" >/dev/null=0A=
+ sysctl net.link.ether.bridge=3D1 >/dev/null=0A=
+ fi=0A=
+ ;;=0A=
+ esac=0A=
+}=0A=
+=0A=
+bridge_stop()=0A=
+{=0A=
+ sysctl net.link.ether.bridge=3D0 >/dev/null=0A=
+ sysctl net.link.ether.bridge_cfg=3D >/dev/null=0A=
+ sysctl net.link.ether.bridge_ipfw=3D0 >/dev/null=0A=
+ sysctl net.link.ether.bridge_ipf=3D0 >/dev/null=0A=
+=0A=
+ if kldstat -n bridge >/dev/null 2>&1; then=0A=
+ kldunload bridge=0A=
+ fi=0A=
+}=0A=
+=0A=
+load_rc_config $name=0A=
+run_rc_command "$1"=0A=
+=0A=
diff -Nru etcorig/rc.d/network2 etc/rc.d/network2=0A=
--- etcorig/rc.d/network2 Mon May 5 22:05:19 2003=0A=
+++ etc/rc.d/network2 Mon May 5 22:05:42 2003=0A=
@@ -115,6 +115,13 @@=0A=
;;=0A=
esac=0A=
=0A=
+ case ${ip_any_interface} in=0A=
+ [Yy][Ee][Ss])=0A=
+ echo -n ' any interface=3DYES'=0A=
+ sysctl net.inet.ip.check_interface=3D0 >/dev/null=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
case ${ip_portrange_first} in=0A=
[Nn][Oo] | '')=0A=
;;=0A=
diff -Nru etcorig/rc.network etc/rc.network=0A=
--- etcorig/rc.network Mon May 5 21:58:12 2003=0A=
+++ etc/rc.network Tue May 6 13:32:44 2003=0A=
@@ -393,6 +393,64 @@=0A=
;;=0A=
esac=0A=
=0A=
+ # Bridge=0A=
+ #=0A=
+ case ${bridge_enable} in=0A=
+ [Yy][Ee][Ss])=0A=
+=0A=
+ bridge_in_kernel=3D1=0A=
+ if ! sysctl net.link.ether.bridge >/dev/null 2>&1; then=0A=
+ if kldload bridge; then=0A=
+ echo 'Bridge module loaded'=0A=
+ else=0A=
+ echo 'Warning: Bridge module failed to load.'=0A=
+ bridge_in_kernel=3D0=0A=
+ fi=0A=
+ fi=0A=
+=0A=
+ if [ "${bridge_in_kernel}" -eq 1 ]; then=0A=
+=0A=
+ bridgenum=3D1=0A=
+ bridgecfg=3D=0A=
+=0A=
+ if [ -n "${bridges}" ]; then=0A=
+ for bridge in ${bridges}; do=0A=
+ eval bridge_args=3D\$bridge_${bridge}=0A=
+ bridge_args=3D`echo -n "${bridge_args}" | sed 's/,/ /'`=0A=
+ for iface in ${bridge_args}; do=0A=
+ if [ -n "${bridgecfg}" ]; then=0A=
+ bridgecfg=3D${bridgecfg},=0A=
+ fi=0A=
+ bridgecfg=3D${bridgecfg}${iface}:$(($bridgenum))=0A=
+ done=0A=
+ bridgenum=3D$(($bridgenum + 1))=0A=
+ done=0A=
+ fi=0A=
+=0A=
+ case ${bridge_ipfw} in=0A=
+ [Yy][Ee][Ss])=0A=
+ sysctl net.link.ether.bridge_ipfw=3D1 >/dev/null=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
+ case ${bridge_ipfilter} in=0A=
+ [Yy][Ee][Ss])=0A=
+ sysctl net.link.ether.bridge_ipf=3D1 >/dev/null=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
+ sysctl net.link.ether.bridge_cfg=3D"${bridgecfg}" >/dev/null=0A=
+ sysctl net.link.ether.bridge=3D1 >/dev/null=0A=
+ fi=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
+ case ${ip_any_interface} in=0A=
+ [Yy][Ee][Ss])=0A=
+ sysctl net.inet.ip.check_interface=3D0 >/dev/null=0A=
+ ;;=0A=
+ esac=0A=
+=0A=
# Additional ATM interface configuration=0A=
#=0A=
if [ -n "${atm_pass1_done}" ]; then=0A=
------=_NextPart_000_0012_01C313D8.7C1E4C90--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?001501c31413$28ace720$0300000a>
