ar71xx: create generic network config from an uci-defaults script

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28817 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Gabor Juhos 2011-11-07 21:43:51 +00:00
parent 1c203e5ff8
commit 23e7014185
3 changed files with 66 additions and 17 deletions

View File

@ -1,16 +0,0 @@
config interface loopback
option ifname lo
option proto static
option ipaddr 127.0.0.1
option netmask 255.0.0.0
config interface lan
option ifname eth0
option type bridge
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0
config interface wan
option ifname eth1
option proto dhcp

View File

@ -10,7 +10,7 @@ start() {
local board=$(ar71xx_board_name)
[ ! -d /etc/defconfig/$board ] && board="generic"
[ ! -d /etc/defconfig/$board ] && return 0
for f in $( ls /etc/defconfig/$board ); do
if [ ! -e /etc/config/$f ]; then

View File

@ -0,0 +1,65 @@
#!/bin/sh
#
# Copyright (C) 2011 OpenWrt.org
#
set_interface_loopback() {
uci batch <<EOF
set network.loopback='interface'
set network.loopback.ifname='lo'
set network.loopback.proto='static'
set network.loopback.ipaddr='127.0.0.1'
set network.loopback.netmask='255.0.0.0'
EOF
}
set_interface_lan() {
local ifname=$1
uci batch <<EOF
set network.lan='interface'
set network.lan.ifname='$ifname'
set network.lan.type='bridge'
set network.lan.proto='static'
set network.lan.ipaddr='192.168.1.1'
set network.lan.netmask='255.255.255.0'
EOF
}
set_interface_wan() {
local ifname=$1
uci batch <<EOF
set network.wan='interface'
set network.wan.ifname='$ifname'
set network.wan.proto='dhcp'
EOF
}
set_interfaces_lan_wan() {
local lan_ifname=$1
local wan_ifname=$2
set_interface_lan "$lan_ifname"
set_interface_wan "$wan_ifname"
}
[ -e /etc/config/network ] && exit 0
touch /etc/config/network
set_interface_loopback
. /lib/ar71xx.sh
board=$(ar71xx_board_name)
case "$board" in
*)
set_interfaces_lan_wan "eth0" "eth1"
;;
esac
uci commit network
exit 0