#!/bin/sh
PATH=/sbin:/usr/sbin:/bin:/usr/bin

cd /etc/sysconfig/network-scripts
. network-functions

PENTANETT=/usr/sbin/pentanett
IP=/sbin/ip

CONFIG=$1
[ -f "$CONFIG" ] || CONFIG="ifcfg-$1"
source_config

if [ -z "$IPADDR" ]; then
 echo "missing IPADDR"
 exit 1
fi

if [ -z "$MACADDR" ]; then
 echo "missing MACADDR"
 exit 1
fi

if [ -z "$CONFIGFILE" ]; then
 echo "missing CONFIGFILE"
 exit 1
fi

if [ "$2" = "boot" -a "$ONBOOT" = "no" ]; then
  exit
fi

[ -x "$IP" ] || {
 echo "$IP does not exist or is not executable"
 echo "ifup-pentanet for $DEVICE exiting"
 logger -p daemon.info -t ifup-pentanet "$IP does not exist or is not executable for $DEVICE"
 exit 1
}

[ -x "$PENTANETT" ] || {
 echo "$PENTANETT does not exist or is not executable"
 echo "ifup-pentanet for $DEVICE exiting"
 logger -p daemon.info -t ifup-pentanet "$PENTANETT does not exist or is not executable for $DEVICE"
 exit 1
}

modprobe pentanet
$IP link set dev $DEVICE address $MACADDR
$IP link set dev $DEVICE up
$IP address add $IPADDR/32 dev $DEVICE
echo "0" > /proc/sys/net/ipv4/conf/$DEVICE/rp_filter
$PENTANETT -a -f $CONFIGFILE >/dev/null
