-case "${1}" in
- start)
- boot_mesg "Loading MASQ helper modules"
- modprobe iptable_nat
- modprobe ip_conntrack
- modprobe ip_conntrack_ftp
- modprobe ip_nat_ftp
- modprobe ip_conntrack_h323
- modprobe ip_nat_h323
- modprobe ip_conntrack_irc
- modprobe ip_nat_irc
- modprobe ip_conntrack_mms
- modprobe ip_nat_mms
- modprobe ip_conntrack_pptp
- modprobe ip_nat_pptp
- modprobe ip_conntrack_proto_gre
- modprobe ip_nat_proto_gre
- modprobe ip_conntrack_quake3
- modprobe ip_nat_quake3
-
- # Remove possible leftover files
- rm -f CONFIG_ROOT/red/{active,device,dial-on-demand,dns1,dns2,local-ipaddress,remote-ipaddress,resolv.conf}
-
- # This won't actually do anything unless a PCMCIA controller was
- # detected at install time, because /etc/pcmcia.conf won't exist.
- /etc/rc.d/rc.pcmcia start
- # Now, just in case we found a PCMCIA USB controller, we'll need to reload
- # the USB here.
- /usr/local/bin/resetusb
-
- # The 'for' loop force driver loading order
- for NIC in 0 1 2 3; do
- ETHX="eth${NIC}"
- if [ "$GREEN_DEV" == "$ETHX" ]; then
- if [ "$GREEN_DRIVER" != "" ]; then
- modprobe $GREEN_DRIVER $GREEN_DRIVER_OPTIONS
- evaluate_retval
- fi
- fi
- if [ "$ORANGE_DEV" == "$ETHX" ]; then
- if [ "$ORANGE_DRIVER" != "" ]; then
- modprobe $ORANGE_DRIVER $ORANGE_DRIVER_OPTIONS
- evaluate_retval
- fi
- fi
- if [ "$BLUE_DEV" == "$ETHX" ]; then
- if [ "$BLUE_DRIVER" != "" ]; then
- modprobe $BLUE_DRIVER $BLUE_DRIVER_OPTIONS
- evaluate_retval
- fi
- fi
- if [ "$RED_DEV" == "$ETHX" ]; then
- if [ "$RED_DRIVER" != "" ]; then
- modprobe $RED_DRIVER $RED_DRIVER_OPTIONS
- evaluate_retval
- fi
- fi
- done
+init_networking() {
+ boot_mesg "Loading firewall modules into the kernel"
+ modprobe iptable_nat || failed=1
+ for i in $(find /lib/modules/$(uname -r) -name nf_conntrack*); do
+ modprobe $(basename $i | cut -d. -f1) || failed=1
+ done
+ for i in $(find /lib/modules/$(uname -r) -name nf_nat*); do
+ modprobe $(basename $i | cut -d. -f1) || failed=1
+ done
+ (exit ${failed})
+ evaluate_retval