34f6c6fc38
Signed-off-by: Claudio Leite <leitec@staticky.com> SVN-Revision: 44036
82 lines
1.5 KiB
Bash
82 lines
1.5 KiB
Bash
#!/bin/sh
|
|
#
|
|
# Copyright (C) 2012-2014 OpenWrt.org
|
|
#
|
|
|
|
[ -e /etc/config/network ] && exit 0
|
|
|
|
touch /etc/config/network
|
|
|
|
set_lan_dhcp() {
|
|
local ifname=$1
|
|
uci batch <<EOF
|
|
set network.lan='interface'
|
|
set network.lan.ifname='$ifname'
|
|
set network.lan.proto='dhcp'
|
|
set network.lan6='interface'
|
|
set network.lan6.ifname='@lan'
|
|
set network.lan6.proto='dhcpv6'
|
|
set network.lan6.reqprefix='no'
|
|
EOF
|
|
}
|
|
|
|
add_port_based_vlan() {
|
|
local device=$1
|
|
local vlan=$2
|
|
local ports=$3
|
|
uci batch <<EOF
|
|
add network switch_vlan
|
|
set network.@switch_vlan[-1].device='$device'
|
|
set network.@switch_vlan[-1].vlan='$vlan'
|
|
set network.@switch_vlan[-1].ports='$ports'
|
|
set network.@switch_vlan[-1].port_based='1'
|
|
EOF
|
|
}
|
|
|
|
. /lib/functions/uci-defaults.sh
|
|
. /lib/kirkwood.sh
|
|
|
|
board=$(kirkwood_board_name)
|
|
|
|
ucidef_set_interface_loopback
|
|
|
|
case "$board" in
|
|
"dockstar")
|
|
set_lan_dhcp "eth0"
|
|
;;
|
|
"iconnect")
|
|
set_lan_dhcp "eth0"
|
|
;;
|
|
"ib62x0")
|
|
set_lan_dhcp "eth0"
|
|
;;
|
|
"pogo_e02")
|
|
set_lan_dhcp "eth0"
|
|
;;
|
|
"ea3500")
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
ucidef_add_switch "switch0" "1" "0"
|
|
add_port_based_vlan "switch0" "1" "0 1 2 3 5"
|
|
add_port_based_vlan "switch0" "2" "4 6"
|
|
;;
|
|
"ea4500")
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
ucidef_add_switch "switch0" "1" "0"
|
|
add_port_based_vlan "switch0" "1" "0 1 2 3 5"
|
|
add_port_based_vlan "switch0" "2" "4 6"
|
|
;;
|
|
"guruplug-server-plus")
|
|
set_lan_dhcp "eth0" "eth1"
|
|
;;
|
|
"sheevaplug" | \
|
|
"sheevaplug-esata")
|
|
set_lan_dhcp "eth0"
|
|
;;
|
|
*)
|
|
ucidef_set_interface_lan "eth0"
|
|
;;
|
|
esac
|
|
|
|
uci commit network
|
|
|
|
exit 0
|