#!/bin/sh
-. /etc/nvram.sh
+# Copyright (C) 2006 OpenWrt.org
-[ "$(uname -r|grep -c 2.4)" = "1" ] && {
- echo "S" > /proc/jffs2_bbc
-}
+. /etc/functions.sh
+
+[ -f /proc/mounts ] || /sbin/mount_root
+[ -f /proc/jffs2_bbc ] && echo "S" > /proc/jffs2_bbc
+vconfig set_name_type VLAN_PLUS_VID_NO_PAD
+
+HOSTNAME=${wan_hostname%%.*}
+echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
mkdir -p /var/run
mkdir -p /var/log
touch /var/log/wtmp
touch /var/log/lastlog
+[ "$FAILSAFE" = "true" ] && touch /tmp/.failsafe
+
+for iface in $(/sbin/ifconfig -a | awk '{print $1}' | grep eth); do
+ /usr/bin/env -i ACTION=add INTERFACE="$iface" /sbin/hotplug net
+done
-sed 's/^[^#]/insmod &/' /etc/modules /etc/modules.d/* 2>&-|ash
+load_modules /etc/modules /etc/modules.d/*
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
-}
-
-HOSTNAME=$(nvram get wan_hostname)
-HOSTNAME=${HOSTNAME%%.*}
-echo ${HOSTNAME:=OpenWrt}>/proc/sys/kernel/hostname
-
-vconfig set_name_type VLAN_PLUS_VID_NO_PAD
-
-# automagically run firstboot
-[ -z "$FAILSAFE" -a -z "$(nvram get no_root_swap)" ] && {
- { mount|grep "on / type jffs2" 1>&-; } || firstboot
-}