xref: /freebsd/libexec/rc/rc.d/sysctl (revision 0696600c41600d80bcd993bfd8e675d0ae6951fe)
1*0696600cSBjoern A. Zeeb#!/bin/sh
2*0696600cSBjoern A. Zeeb#
3*0696600cSBjoern A. Zeeb# $FreeBSD$
4*0696600cSBjoern A. Zeeb#
5*0696600cSBjoern A. Zeeb
6*0696600cSBjoern A. Zeeb# PROVIDE: sysctl
7*0696600cSBjoern A. Zeeb
8*0696600cSBjoern A. Zeeb. /etc/rc.subr
9*0696600cSBjoern A. Zeeb
10*0696600cSBjoern A. Zeebname="sysctl"
11*0696600cSBjoern A. Zeebdesc="Set sysctl variables from /etc/sysctl.conf and /etc/sysctl.conf.local"
12*0696600cSBjoern A. Zeebcommand="/sbin/sysctl"
13*0696600cSBjoern A. Zeebstop_cmd=":"
14*0696600cSBjoern A. Zeebstart_cmd="sysctl_start"
15*0696600cSBjoern A. Zeebreload_cmd="sysctl_start last"
16*0696600cSBjoern A. Zeeblastload_cmd="sysctl_start last"
17*0696600cSBjoern A. Zeebextra_commands="reload lastload"
18*0696600cSBjoern A. Zeeb
19*0696600cSBjoern A. Zeebsysctl_start()
20*0696600cSBjoern A. Zeeb{
21*0696600cSBjoern A. Zeeb	case $1 in
22*0696600cSBjoern A. Zeeb	last)
23*0696600cSBjoern A. Zeeb		command_args="-f"
24*0696600cSBjoern A. Zeeb	;;
25*0696600cSBjoern A. Zeeb	*)
26*0696600cSBjoern A. Zeeb		command_args="-i -f"
27*0696600cSBjoern A. Zeeb	;;
28*0696600cSBjoern A. Zeeb	esac
29*0696600cSBjoern A. Zeeb
30*0696600cSBjoern A. Zeeb	for _f in /etc/sysctl.conf /etc/sysctl.conf.local; do
31*0696600cSBjoern A. Zeeb		if [ -r ${_f} ]; then
32*0696600cSBjoern A. Zeeb			${command} ${command_args} ${_f} > /dev/null
33*0696600cSBjoern A. Zeeb		fi
34*0696600cSBjoern A. Zeeb	done
35*0696600cSBjoern A. Zeeb}
36*0696600cSBjoern A. Zeeb
37*0696600cSBjoern A. Zeebload_rc_config $name
38*0696600cSBjoern A. Zeebrun_rc_command "$1"
39