#!/bin/sh
#
-# $Id$
#
PATH=/sbin:/usr/sbin:/bin:/usr/bin
# device name must be ifcfg-somename
DEV=$1
-SYSCTLDEVICE=$(echo ${DEVICE} | sed 's/\./\//g')
-
[ -z "$DEV" ] && {
nls "Usage: %s <device name>" "ifup" >&2
exit 1
# set all major variables
setup_ip_param
+SYSCTLDEVICE=$(echo ${DEVICE} | sed 's/\./\//g')
+
OTHERSCRIPT="/lib/rc-scripts/ifup-${DEVICETYPE}"
if [ -x "$OTHERSCRIPT" ]; then
if [ -n "$MACVLAN_DEV" -a -n "$MACVLAN_MACADDR" ]; then
ip link del link ${MACVLAN_DEV} ${DEVICE} type macvlan > /dev/null 2>&1
- ip link add link ${MACVLAN_DEV} address ${MACVLAN_MACADDR} ${DEVICE} type macvlan
+ ip link add link ${MACVLAN_DEV} address ${MACVLAN_MACADDR} name ${DEVICE} type macvlan
fi
# is this device available? (this catches PCMCIA devices for us)
exit 1
fi
-if is_yes "$SLAVE" && [ ! -x /sbin/ifenslave ]; then
- nls "%s is missing. Can't continue." "/sbin/ifenslave"
- exit 1
-fi
-
-if is_yes "$SLAVE" && [ -n "$MASTER" -a -x /sbin/ifenslave ]; then
- RFLAG="" && is_yes "${RECIEVE-ONLY}" && RFLAG="-r"
-
- ip link set ${DEVICE} down
- nls "Enslaving %s to %s" "$DEVICE" "$MASTER"
- ifenslave $RFLAG "$MASTER" "$DEVICE"
-
- if [ -n "$ETHTOOL_OPTS" ] ; then
- /sbin/ethtool -s $DEVICE $ETHTOOL_OPTS
- fi
-
- exit 0
-fi
-
if [ -n "$MACADDR" ]; then
ip link set ${DEVICE} address ${MACADDR}
fi
check_link_down ${DEVICE} $(( $WLAN_WPA_WAIT_TIMEOUT * 2 ))
fi
+if [ -n "$ETHTOOL_OPTS" ] ; then
+ /sbin/ethtool -s $DEVICE $ETHTOOL_OPTS
+fi
+
+if is_yes "$SLAVE" && [ -n "$MASTER" ] ; then
+ nls "Enslaving %s to %s" "$DEVICE" "$MASTER"
+ ip link set "$DEVICE" master "$MASTER"
+ ip link set "$DEVICE" up
+
+ exit 0
+fi
+
if [ "$HANDLING" = "2" ]; then
exit 0
fi
DHCP_ARGS=
if [ -n "$DHCP_CLIENT" ]; then
if [ -z "$DHCP_HOSTNAME" ]; then
- DHCP_HOSTNAME="$HOSTNAME"
+ # set DHCP_HOSTNAME only basename
+ DHCP_HOSTNAME=${HOSTNAME%%.*}
fi
case ${DHCP_CLIENT##*/} in
pump)