diff --git a/tinc/subnet-up b/tinc/subnet-up new file mode 100644 index 0000000..947a0e5 --- /dev/null +++ b/tinc/subnet-up @@ -0,0 +1,19 @@ +#!/bin/ash +echo "Route up: $SUBNET weight $WEIGHT via $NODE ($REMOTEADDRESS:$REMOTEPORT)" +nonMACChars=`echo $SUBNET | tr -d "[:digit:]" | tr -d [:ABCDEFabcdef]` +date=`date -u` + +if [ -z "$nonMACChars" ]; then + # This subnet is a MAC + echo "$NODE mac $SUBNET $WEIGHT $REMOTEADDRESS:$REMOTEPORT $date" > /tmp/tinc_peer/$NODE_mac_$SUBNET +else + # This subnet is an IP address + if echo "$SUBNET" | grep -q -E ".+/32\$"; then + address=`echo "\$SUBNET" | cut -d '/' -f 1` + echo "$NODE ip $SUBNET $WEIGHT $REMOTEADDRESS:$REMOTEPORT $date" > /tmp/tinc_peer/$NODE_ip_$address + fi +fi + +SCRIPT=$(readlink -f "$0") +SCRIPTPATH=$(dirname "$SCRIPT") +$SCRIPTPATH/check-node diff --git a/tinc/subnet-up.tmpl b/tinc/subnet-up.tmpl deleted file mode 100644 index 41df9f1..0000000 --- a/tinc/subnet-up.tmpl +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/ash -echo "Route up: \$SUBNET weight \$WEIGHT via \$NODE (\$REMOTEADDRESS:\$REMOTEPORT)" -nonMACChars=`echo \$SUBNET | tr -d "[:digit:]" | tr -d [:ABCDEFabcdef]` -date=`date -u` - -if [ -z "\$nonMACChars" ]; then - # This subnet is a MAC - echo "\$NODE mac \$SUBNET \$WEIGHT \$REMOTEADDRESS:\$REMOTEPORT \$date" > /tmp/tinc_peer_mac_\$NODE_\$SUBNET -else - # This subnet is an IP address - if echo "\$SUBNET" | grep -q -E ".+/32\$"; then - address=`echo "\$SUBNET" | cut -d '/' -f 1` - echo "\$NODE ip \$SUBNET \$WEIGHT \$REMOTEADDRESS:\$REMOTEPORT \$date" > /tmp/tinc_peer_mac_\$NODE_\$address - fi -fi - -SCRIPT=$(readlink -f "$0") -SCRIPTPATH=$(dirname "$SCRIPT") -\$SCRIPTPATH/check-node