[BACK]Return to securelevel CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / etc / rc.d

File: [cvs.NetBSD.org] / src / etc / rc.d / securelevel (download)

Revision 1.4, Fri Mar 22 04:34:00 2002 UTC (22 years ago) by thorpej
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, fvdl_fs64_base
Changes since 1.3: +2 -1 lines

Correct the "direction" of the barrier dependencies (DAEMON, LOGIN,
NETWORKING, and SERVERS) by specifying that certain things should
come BEFORE a given barrier, rather than having the barrier REQUIRE
a service.  This allows scripts to be removed without having to
edit the barrier dependencies.

As discussed on tech-userlevel, and approved by Luke.

#!/bin/sh
#
# $NetBSD: securelevel,v 1.4 2002/03/22 04:34:00 thorpej Exp $
#

# PROVIDE: securelevel
# REQUIRE: aftermountlkm ipnat mountd
# BEFORE:  DAEMON

. /etc/rc.subr

name="securelevel"
start_cmd="securelevel_start"
stop_cmd=":"

securelevel_start()
{
	#	if $securelevel is set higher, change it here, else if
	#	it is 0, change it to 1 here, before we start daemons
	#	or login services.
	#
	osecurelevel=`sysctl -n kern.securelevel`
	if [ -n "$securelevel" -a "$securelevel" != "$osecurelevel" ]; then
		if [ "$securelevel" -lt "$osecurelevel" ]; then
			echo "Can't lower securelevel."
			exit 1
		else
			echo -n "Setting securelevel: "
			sysctl -w kern.securelevel=$securelevel
		fi
	else
		if [ "$osecurelevel" = 0 ]; then
			echo -n "Setting securelevel: "
			sysctl -w kern.securelevel=1
		fi
 	fi
}

load_rc_config $name
run_rc_command "$1"