add new rc.common for standardized init scripts, convert existing init scripts
[openwrt/staging/dedeckeh.git] / openwrt / package / base-files / default / etc / init.d / S10boot
index d5ec19436a127bde1a93ef983ba9ab06422aa54d..77b5ca72d52c9aa51ab7eb009dcc1b06bc1586be 100755 (executable)
@@ -1,35 +1,25 @@
-#!/bin/sh
-. /etc/nvram.sh
-
-[ "$(uname -r|grep -c 2.4)" = "1" ] && {
-        echo "S" > /proc/jffs2_bbc
-}
-
-vconfig set_name_type VLAN_PLUS_VID_NO_PAD
-
-HOSTNAME=$(nvram get wan_hostname)
-HOSTNAME=${HOSTNAME%%.*}
-echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
-
-# automagically run firstboot
-[ -z "$FAILSAFE" -a -z "$(nvram get no_root_swap)" ] && {
-       { mount|grep "on / type jffs2" 1>&-; } || firstboot
-}
-
-mkdir -p /var/run
-mkdir -p /var/log
-touch /var/log/wtmp
-touch /var/log/lastlog
-[ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
-
-sed 's/^[^#]/insmod &/' /etc/modules /etc/modules.d/* 2>&-|ash
-
-ifconfig lo 127.0.0.1 up
-ifconfig eth0 promisc
-
-[ "$(uname -r|grep -c 2.6)" = "1" ] && [ -x /sbin/robocfg ] && { # FIXME: replace when the new switch driver is integrated...
-  robocfg switch disable vlans enable reset vlan 0 ports "0 1 2 3 5t" vlan 1 ports "4 5t" port 4 state enabled stp none switch enable
-  robocfg show
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2006 OpenWrt.org
+
+start() {
+       [ -f /proc/mounts ] || /sbin/mount_root
+       [ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
+       vconfig set_name_type DEV_PLUS_VID_NO_PAD
+       
+       HOSTNAME=${wan_hostname%%.*}
+       echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
+       
+       mkdir -p /var/run
+       mkdir -p /var/log
+       mkdir -p /var/lock
+       touch /var/log/wtmp
+       touch /var/log/lastlog
+       [ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
+       
+       # manually trigger hotplug before loading modules
+       for iface in $(awk -F: '/:/ {print $1}' /proc/net/dev); do
+               /usr/bin/env -i ACTION=add INTERFACE="$iface" /sbin/hotplug net
+       done
+       
+       load_modules /etc/modules /etc/modules.d/*
 }
-
-