--- /dev/null
+#!/bin/sh
+########################################################################
+# Begin $network_devices/ifdown
+#
+# Description : Interface Down
+#
+# Authors : Nathan Coulson - nathan@linuxfromscratch.org
+# Kevin P. Fleming - kpfleming@linuxfromscratch.org
+# Michael Tremer - mitch@ipfire.org
+#
+# Version : 00.01
+#
+# Notes :
+#
+########################################################################
+
+. /etc/sysconfig/rc
+. ${rc_functions}
+eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
+
+if [ "$name" == "green" ]; then
+ DEVICE="${GREEN_DEV}"
+elif [ "$name" == "blue" ]; then
+ DEVICE="${BLUE_DEV}"
+elif [ "$name" == "orange" ]; then
+ DEVICE="${ORANGE_DEV}"
+elif [ "$name" == "red" ]; then
+ DEVICE="${RED_DEV}"
+fi
+
+if ip link show ${DEVICE} > /dev/null 2>&1
+then
+ if [ "$name" == "green" ]; then
+ NAME=${name} ADDRESS=${GREEN_ADDRESS} NETMASK=${GREEN_NETMASK}\
+ NETADDRESS=${GREEN_NETADDRESS} BROADCAST=${GREEN_BROADCAST} \
+ /etc/rc.d/init.d/net/common/ipv4-static ${GREEN_DEV} down
+
+ elif [ "$name" == "blue" ]; then
+ NAME=${name} ADDRESS=${BLUE_ADDRESS} NETMASK=${BLUE_NETMASK}\
+ NETADDRESS=${BLUE_NETADDRESS} BROADCAST=${BLUE_BROADCAST} \
+ /etc/rc.d/init.d/net/common/ipv4-static ${BLUE_DEV} down
+
+ elif [ "$name" == "orange" ]; then
+ NAME=${name} ADDRESS=${ORANGE_ADDRESS} NETMASK=${ORANGE_NETMASK}\
+ NETADDRESS=${ORANGE_NETADDRESS} BROADCAST=${ORANGE_BROADCAST} \
+ /etc/rc.d/init.d/net/common/ipv4-static ${ORANGE_DEV} down
+
+ elif [ "$name" == "red" ]; then
+ if [ "${RED_TYPE}" == "PPPOE" ]; then
+ echo
+ elif [ "${RED_TYPE}" == "PPTP" ]; then
+ echo
+ elif [ "${RED_TYPE}" == "DHCP" ]; then
+ NAME=${name} DHCP_HOSTNAME=${RED_DHCP_HOSTNAME} \
+ PRINTIP=yes PRINTALL=yes \
+ /etc/rc.d/init.d/net/red/dhcpcd ${RED_DEV} down
+ elif [ "${RED_TYPE}" == "STATIC" ]; then
+ NAME=${name} ADDRESS=${RED_ADDRESS} NETMASK=${RED_NETMASK}\
+ NETADDRESS=${RED_NETADDRESS} BROADCAST=${RED_BROADCAST} \
+ DNS1=${DNS1} DNS2=${DNS2} GATEWAY=${DEFAULT_GATEWAY}
+ /etc/rc.d/init.d/net/red/ipv4-static ${RED_DEV} down
+ fi
+ fi
+else
+ boot_mesg "Interface ${DEVICE} doesn't exist." ${WARNING}
+ echo_warning
+fi
+
+link_status=`ip link show $DEVICE 2> /dev/null`
+if [ -n "${link_status}" ]; then
+ if echo "${link_status}" | grep -q UP; then
+ boot_mesg "Bringing down the ${DEVICE} interface..."
+ ip link set ${DEVICE} down
+ evaluate_retval
+ fi
+fi
+
+# End $network_devices/ifdown