#!/bin/sh
-echo "S" > /proc/jffs2_bbc
+. /etc/nvram.sh
+
+[ "$(uname -r|grep -c 2.4)" = "1" ] && {
+ echo "S" > /proc/jffs2_bbc
+}
mkdir -p /var/run
mkdir -p /var/log
touch /var/log/wtmp
touch /var/log/lastlog
-[ "$(nvram get il0macaddr)" = "00:90:4c:5f:00:2a" ] && {
- # if default wifi mac, set two higher than the lan mac
- nvram set il0macaddr=$(nvram get et0macaddr|
- awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')
-}
-
-# set up the vlan*ports variables for the asus wl-500g deluxe
-# if they don't already exist
-[ "$(nvram get boardtype)" = "bcm95365r" \
--a "$(nvram get boardnum)" = "45" \
--a -z "$(nvram get vlan0ports)$(nvram get vlan1ports)" ] && {
- nvram set vlan0ports="1 2 3 4 5*"
- nvram set vlan1ports="0 5"
+[ -x /usr/sbin/nvram ] && {
+ [ "$(nvram get il0macaddr)" = "00:90:4c:5f:00:2a" ] && {
+ # if default wifi mac, set two higher than the lan mac
+ nvram set il0macaddr=$(nvram get et0macaddr|
+ awk '{OFS=FS=":";for(x=7,y=2;--x;){$x=sprintf("%02x",(y+="0x"$x)%256);y/=256}print}')
+ }
+
+ # set up the vlan*ports variables for the asus wl-500g deluxe
+ # if they don't already exist
+ [ "$(nvram get boardtype)" = "bcm95365r" \
+ -a "$(nvram get boardnum)" = "45" \
+ -a -z "$(nvram get vlan0ports)" \
+ -a -z "$(nvram get vlan1ports)" ] && {
+ nvram set vlan0ports="1 2 3 4 5*"
+ nvram set vlan1ports="0 5"
+ }
}
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 ] && {
+ 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" ] && {
+[ -z "$FAILSAFE" -a -z "$(nvram get no_root_swap)" ] && {
{ mount|grep "on / type jffs2" 1>&-; } || firstboot
}