Home | History | Annotate | Line # | Download | only in rc.d
securelevel revision 1.7
      1  1.1     lukem #!/bin/sh
      2  1.1     lukem #
      3  1.7        ad # $NetBSD: securelevel,v 1.7 2008/11/12 12:35:52 ad Exp $
      4  1.1     lukem #
      5  1.1     lukem 
      6  1.1     lukem # PROVIDE: securelevel
      7  1.7        ad # REQUIRE: ipnat mountd
      8  1.4   thorpej # BEFORE:  DAEMON
      9  1.1     lukem 
     10  1.5   mycroft $_rc_subr_loaded . /etc/rc.subr
     11  1.1     lukem 
     12  1.1     lukem name="securelevel"
     13  1.1     lukem start_cmd="securelevel_start"
     14  1.1     lukem stop_cmd=":"
     15  1.1     lukem 
     16  1.1     lukem securelevel_start()
     17  1.1     lukem {
     18  1.3       mrg 	#	if $securelevel is set higher, change it here, else if
     19  1.3       mrg 	#	it is 0, change it to 1 here, before we start daemons
     20  1.3       mrg 	#	or login services.
     21  1.1     lukem 	#
     22  1.6  christos 	osecurelevel=$(sysctl -n kern.securelevel)
     23  1.3       mrg 	if [ -n "$securelevel" -a "$securelevel" != "$osecurelevel" ]; then
     24  1.3       mrg 		if [ "$securelevel" -lt "$osecurelevel" ]; then
     25  1.3       mrg 			echo "Can't lower securelevel."
     26  1.3       mrg 			exit 1
     27  1.3       mrg 		else
     28  1.3       mrg 			echo -n "Setting securelevel: "
     29  1.3       mrg 			sysctl -w kern.securelevel=$securelevel
     30  1.3       mrg 		fi
     31  1.1     lukem 	else
     32  1.3       mrg 		if [ "$osecurelevel" = 0 ]; then
     33  1.1     lukem 			echo -n "Setting securelevel: "
     34  1.1     lukem 			sysctl -w kern.securelevel=1
     35  1.1     lukem 		fi
     36  1.1     lukem  	fi
     37  1.1     lukem }
     38  1.1     lukem 
     39  1.1     lukem load_rc_config $name
     40  1.1     lukem run_rc_command "$1"
     41