blob: 0974da941be189df28fef6debad1723bfd419e7b [file] [log] [blame]
#!/bin/sh
#
# This script is called with the following parameters:
# interface tty speed local-address remote-address ipparam
#
# Start router advertisements on this link.
# Based on radvd 0.5.0 behaviour
DEVICE="$1"
CFGFILE="/etc/radvd.conf-$DEVICE"
PIDFILE="/var/run/radvd-$DEVICE.pid"
EXEFILE="/usr/sbin/radvd"
if [ -x "$EXEFILE" -a -f "$CFGFILE" ]; then
touch "$PIDFILE"
if [ ! -f "$PIDFILE" ]; then
echo "error: $PIDFILE is not a regular file. Aborting"
exit 0
fi
PID="$(cat "$PIDFILE")"
if [ -n "$PID" ]; then
ps h "$PID" >/dev/null 2>&1 && exit 0
fi
# radvd 0.5.0 doesn't write a pid-file so we do it here
# enabling debugging keeps radvd in foreground, putting it
# on background gives us the PID.
"$EXEFILE" -d 1 -C "$CFGFILE" &
echo $! >"$PIDFILE"
fi