#!/bin/bash
#
# /etc/rc.d/net: start/stop network interface
#

DHCP_OPTS="-t 10 -b"

# If USE_DHCP[interface] is set to "yes", this overrides any other settings.
# If you don't have an interface, leave the settings null ("").

# ----------------------------------------

# ipv4 config options for eth0
DEV[0]=""
ADDR[0]=""
MASK[0]=""
USE_DHCP[0]=""

# ipv4 config options for eth1
DEV[1]=""
ADDR[1]=""
MASK[1]=""
USE_DHCP[1]=""

# ipv4 config options for eth2
DEV[2]=""
ADDR[2]=""
MASK[2]=""
USE_DHCP[2]=""

# ipv4 default gateway ip address
GW=""

# ----------------------------------------

case $1 in
	start)
		for i in ${!DEV[@]}; do
			if [ "${USE_DHCP[$i]}" = "yes" ]; then
				/sbin/dhcpcd ${DHCP_OPTS} ${DEV[$i]}
			elif [ ! -z "${DEV[$i]}" -a ! -z "${ADDR[$i]}" -a ! -z "${MASK[$i]}" ]; then
				/sbin/ip addr add ${ADDR[$i]}/${MASK[$i]} dev ${DEV[$i]} broadcast +
				/sbin/ip link set ${DEV[$i]} up
			fi
		done
		if [ ! -z $GW ] ; then
			/sbin/ip route add default via ${GW}
		fi
		;;
	stop)
		if [ ! -z $GW ] ; then
			echo /sbin/ip route del default
		fi
		for i in ${!DEV[@]}; do
			if [ "${USE_DHCP[$i]}" = "yes" ]; then
				/sbin/dhcpcd -k ${DEV[$i]}
			elif [ ! -z "${DEV[$i]}" -a ! -z "${ADDR[$i]}" -a ! -z "${MASK[$i]}" ]; then
				/sbin/ip link set ${DEV[$i]} down
				/sbin/ip addr del ${ADDR[$i]}/${MASK[$i]} dev ${DEV[$i]}
			fi
		done
		;;
	restart)
		$0 stop
		sleep 1
		$0 start
		;;
	*)
		echo "Usage: $0 [start|stop|restart]"
		;;
esac

# End of file

