blob: 9766108a96bf86111862d2184bf2a7f220c34d4a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# NVRAM overrides
#
# This file handles the NVRAM quirks of various hardware.
# THIS FILE IS NOT A REPLACEMENT FOR NVRAM
# Load sysconf defaults
[ -f /etc/sysconf ] && . /etc/sysconf
# linksys bug; remove when not using static configuration for lan
lan_proto="static"
remap () {
for type in lan wifi wan pppoe
do
for s in '' s
do
eval ${type}_ifname$s=\"$(nvram get ${type}_ifname$s|sed s/$1/$2/g)\"
done
done
}
# hacks for wrt54g 1.x hardware
[ "$(nvram get boardnum)" = "42" \
-a "$(nvram get boardtype)" = "bcm94710dev" ] && {
debug "### wrt54g 1.x hack ###"
vlan1hwname="et0"
vlan2hwname="et0"
FAILSAFE_ifnames="vlan1 vlan2 eth2"
remap eth0 vlan2
remap eth1 vlan1
}
# hacks for asus wl-500g deluxe
[ "$(nvram get boardtype)" = "bcm95365r" \
-a "$(nvram get boardnum)" = "45" ] && {
debug "### wl-500g deluxe hacks ###"
vlan0hwname="et0"
vlan1hwname="et0"
FAILSAFE_ifnames="vlan0 eth1"
remap eth0.1 vlan0
remap eth0 vlan1
}
# hacks for asus wl-300g
[ "$(nvram get productid)" = "WL300g" ] && {
debug "### wl-300g hacks ###"
lan_ifnames="eth0 eth2"
wan_ifname="none"
}
# hacks for wap54g hardware
[ "$(nvram get boardnum)" = "2" \
-o "$(nvram get boardnum)" = "1024" ] && {
debug "### wap54g hack ###"
wan_ifname="none"
FAILSAFE_ifnames="eth0 eth1"
}
# hacks for buffalo wla2-g54l
[ "$(nvram get boardnum)" = "00" \
-a "$(nvram get product_name)" = "Product_name" \
-o "$(nvram get product_name)" = "WLA2-G54L" ] && {
debug "### wla2-g54l hacks ###"
wan_ifname="none"
lan_ifnames="vlan0"
}
# hack for asus wl-500g hardware
[ "$(nvram get boardnum)" = "asusX" \
-a "$(nvram get boardtype)" = "bcm94710dev" ] && {
FAILSAFE_ifnames="eth0 eth2"
}
# defaults if lan_ifname is missing
[ -z "$(nvram get lan_ifname)" ] && {
lan_ifname="br0"
lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan2 eth1 eth2 eth3"}
}
# defaults if wan_ifname is missing
[ -z "$(nvram get wan_ifname)" ] && {
wan_ifname="vlan1"
wan_proto="dhcp"
}
DEFAULT_lan_ipaddr=${BR2_SYSCONF_FAILSAFE_IP:-"192.168.1.1"}
DEFAULT_lan_netmask=${BR2_SYSCONF_FAILSAFE_NETMASK:-"255.255.255.0"}
DEFAULT_lan_hwaddr=${BR2_SYSCONF_FAILSAFE_MAC:-"00:0B:AD:0A:DD:00"}
# failsafe if reset is held
[ "$FAILSAFE" = "true" ] && {
echo "### YOU ARE IN FAILSAFE MODE ####"
lan_ifname="br0"
lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan1 eth1 eth2 eth3"}
lan_ipaddr=$DEFAULT_lan_ipaddr
lan_netmask=$DEFAULT_lan_netmask
lan_hwaddr=$DEFAULT_lan_hwaddr
wan_ifname="none"
wifi_ifname="none"
}
|