Add rc.d script for the rtsold(8) daemon.

The rtsol(8) handles just one RA then exit.  So, the OtherConfig flag
may not be handled well by rtsol(8) in the environment where there are
multiple RA servers on the segment.  In such case, rtsold(8) will be
your friend.

Reviewed by:	hrs
MFC after:	2 weeks
This commit is contained in:
Hajimu UMEMOTO 2010-02-03 16:18:42 +00:00
parent 877a6d9994
commit e60d067996
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=203433
4 changed files with 34 additions and 2 deletions

View File

@ -460,6 +460,10 @@ ipv6_default_interface="NO" # Default output interface for scoped addrs.
# Now this works only for IPv6 link local
# multicast addrs.
rtsol_flags="" # Flags to IPv6 router solicitation.
rtsold_enable="NO" # Set to YES to enable an IPv6 router
# solicitation daemon.
rtsold_flags="-a" # Flags to an IPv6 router solicitation
# daemon.
rtadvd_enable="NO" # Set to YES to enable an IPv6 router
# advertisement daemon. If set to YES,
# this router becomes a possible candidate

View File

@ -882,7 +882,9 @@ ipv6_accept_rtadv_up()
{
if ipv6_autoconfif $1; then
ifconfig $1 inet6 accept_rtadv up
rtsol ${rtsol_flags} $1
if ! checkyesno rtsold_enable; then
rtsol ${rtsol_flags} $1
fi
fi
}

View File

@ -30,7 +30,7 @@ FILES= DAEMON FILESYSTEMS LOGIN NETWORKING SERVERS \
powerd power_profile ppp pppoed pwcheck \
quota \
random rarpd resolv rfcomm_pppd_server root \
route6d routed routing rpcbind rtadvd rwho \
route6d routed routing rpcbind rtadvd rtsold rwho \
savecore sdpd securelevel sendmail \
serial sppp statd static_arp stf swap1 \
syscons sysctl syslogd \

26
etc/rc.d/rtsold Executable file
View File

@ -0,0 +1,26 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: rtsold
# REQUIRE: netif
# BEFORE: NETWORKING
# KEYWORD: nojail
. /etc/rc.subr
name="rtsold"
rcvar=`set_rcvar`
command="/usr/sbin/${name}"
pidfile="/var/run/${name}.pid"
start_postcmd="rtsold_poststart"
rtsold_poststart()
{
# wait for DAD
sleep $(($(${SYSCTL_N} net.inet6.ip6.dad_count) + 1))
}
load_rc_config $name
run_rc_command "$1"