xref: /minix/etc/rc.d/rtadvd (revision bb9622b5)
1#!/bin/sh
2#
3# $NetBSD: rtadvd,v 1.8 2013/07/09 09:34:58 roy Exp $
4#
5
6# PROVIDE: rtadvd
7# REQUIRE: DAEMON
8# BEFORE:  LOGIN
9
10$_rc_subr_loaded . /etc/rc.subr
11
12name=rtadvd
13rcvar=$name
14command="/usr/sbin/$name"
15pidfile="/var/run/$name.pid"
16extra_commands=reload
17start_precmd=rtadvd_prestart
18reload_precmd=rtadvd_prereload
19
20rtadvd_prereload()
21{
22	local chdir="$(getent passwd _rtadvd | cut -d: -f6)"
23	local conf=/etc/rtadvd.conf myflags o confdir
24
25	[ -z "$chdir" -o "$chdir" = / ] && return 0
26
27	if [ -n "$flags" ]; then
28		myflags=$flags
29	else
30		eval myflags=\$${name}_flags
31	fi
32	set -- ${myflags}
33	while getopts c:dDfM:Rs o; do
34		case "$1" in
35		-c)	conf="$OPTARG";;
36		esac
37		shift
38	done
39	confdir=$(dirname "$conf")
40
41	echo "$name: copying $conf to $chdir$conf"
42	cp "$conf" "$chdir$conf"
43
44	# Provide a link to the chrooted dump file
45	ln -snf "$chdir/var/run/$name.dump" /var/run
46}
47
48rtadvd_prestart()
49{
50	if [ "$ip6mode" != router ]; then
51		warn \
52	"${name} cannot be used on IPv6 host, only on an IPv6 router."
53		return 1
54	fi
55
56	rtadvd_prereload
57}
58
59load_rc_config $name
60run_rc_command "$1"
61