summaryrefslogtreecommitdiffstats
path: root/etc/rc.d/auto_linklocal
blob: 28d03c0cd6f0b4ab86368651885bae2b85296dc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/sh
#
# $FreeBSD$
#

# PROVIDE: auto_linklocal
# REQUIRE: root
# BEFORE:  sysctl
# KEYWORD: nojail

. /etc/rc.subr
. /etc/network.subr

name="auto_linklocal"
start_cmd="auto_linklocal_start"
stop_cmd=":"

auto_linklocal_start()
{
	if ! checkyesno ipv6_enable && ${SYSCTL} net.inet6 > /dev/null 2>&1; then
		if ! ${SYSCTL_W} net.inet6.ip6.auto_linklocal=0 >/dev/null 2>&1; then
			warn "failed to set sysctl(8)"
			return 1
		fi
		laddr=`network6_getladdr lo0`
		if [ -z "${laddr}" ]; then
			ifconfig lo0 inet6 fe80::1 prefixlen 64
		fi
	fi
}

load_rc_config $name
run_rc_command "$1"
OpenPOWER on IntegriCloud