blob: 0974da941be189df28fef6debad1723bfd419e7b [file] [log] [blame]
yuezonghe824eb0c2024-06-27 02:32:26 -07001#!/bin/sh
2#
3# This script is called with the following parameters:
4# interface tty speed local-address remote-address ipparam
5#
6
7
8# Start router advertisements on this link.
9# Based on radvd 0.5.0 behaviour
10
11DEVICE="$1"
12
13CFGFILE="/etc/radvd.conf-$DEVICE"
14PIDFILE="/var/run/radvd-$DEVICE.pid"
15EXEFILE="/usr/sbin/radvd"
16
17if [ -x "$EXEFILE" -a -f "$CFGFILE" ]; then
18 touch "$PIDFILE"
19 if [ ! -f "$PIDFILE" ]; then
20 echo "error: $PIDFILE is not a regular file. Aborting"
21 exit 0
22 fi
23
24 PID="$(cat "$PIDFILE")"
25 if [ -n "$PID" ]; then
26 ps h "$PID" >/dev/null 2>&1 && exit 0
27 fi
28
29 # radvd 0.5.0 doesn't write a pid-file so we do it here
30 # enabling debugging keeps radvd in foreground, putting it
31 # on background gives us the PID.
32 "$EXEFILE" -d 1 -C "$CFGFILE" &
33 echo $! >"$PIDFILE"
34fi