rc.subr: Add _rc_subr_loaded to avoid sourcing it again
authorAaron LI <aly@aaronly.me>
Tue, 27 Mar 2018 15:52:35 +0000 (23:52 +0800)
committerAaron LI <aly@aaronly.me>
Fri, 30 Mar 2018 01:03:49 +0000 (09:03 +0800)
* Once /etc/rc.subr been sourced, $_rc_subr_loaded="YES", then /etc/rc.subr
  takes care of avoiding sourcing it again. (obtained from FreeBSD)

* Remove the unnecessary "$_rc_subr_loaded" prefix from several rc scripts,
  which also make the "$_rc_subr_loaded . /etc/rc.subr" command fail.

etc/rc.d/btconfig
etc/rc.d/bthcid
etc/rc.d/cryptdisks
etc/rc.d/lvm
etc/rc.d/sdpd
etc/rc.subr

index 7c85098..c5869f0 100644 (file)
@@ -1,13 +1,13 @@
 #!/bin/sh
 #
 # $NetBSD: btconfig,v 1.1 2006/06/19 15:44:36 gdamore Exp $
-# $DragonFly: src/etc/rc.d/btconfig,v 1.1 2008/01/06 21:51:30 hasso Exp $
+#
 
 # PROVIDE: bluetooth
 # REQUIRE: DAEMON
 # BEFORE:  LOGIN
 
-$_rc_subr_loaded . /etc/rc.subr
+. /etc/rc.subr
 
 name="btconfig"
 rcvar=${name}
index a8b67aa..2459c2c 100644 (file)
@@ -1,13 +1,13 @@
 #!/bin/sh
 #
 # $NetBSD: bthcid,v 1.1 2006/06/19 15:44:36 gdamore Exp $
-# $DragonFly: src/etc/rc.d/bthcid,v 1.1 2008/01/30 14:10:19 hasso Exp $
+#
 
 # PROVIDE: bthcid
 # REQUIRE: bluetooth
 # BEFORE: LOGIN
 
-$rc_subr_loaded . /etc/rc.subr
+. /etc/rc.subr
 
 name="bthcid"
 rcvar=$name
index 3bc6232..36f2a12 100644 (file)
@@ -3,7 +3,7 @@
 # PROVIDE: cryptdisks
 # BEFORE:  mountcritlocal localswap dumpon
 
-$_rc_subr_loaded . /etc/rc.subr
+. /etc/rc.subr
 
 name="cryptdisks"
 start_cmd="cryptdisks_start"
index 12f2c98..219646b 100644 (file)
@@ -7,7 +7,7 @@
 # REQUIRE: udevd_early
 # BEFORE:  mountcritlocal cryptdisks
 
-$_rc_subr_loaded . /etc/rc.subr
+. /etc/rc.subr
 
 name="lvm"
 rcvar=$name
index 6888930..40d28a7 100644 (file)
@@ -1,13 +1,13 @@
 #!/bin/sh
 #
 # $NetBSD: sdpd,v 1.2 2007/03/18 15:53:54 plunky Exp $
-# $DragonFly: src/etc/rc.d/sdpd,v 1.1 2008/01/06 21:51:30 hasso Exp $
+#
 
 # PROVIDE: sdpd
 # REQUIRE: bluetooth
 # BEFORE: LOGIN
 
-$rc_subr_loaded . /etc/rc.subr
+. /etc/rc.subr
 
 name="sdpd"
 rcvar=$name
index fbf8558..edf73b4 100644 (file)
 #      Operating System dependent/independent variables
 #
 
-if [ "X$_file" = "X" ]; then
-    _file=$0
+if [ -n "${_rc_subr_loaded}" ]; then
+       return
 fi
 
+_rc_subr_loaded="YES"
+
+if [ -z "$_file" ]; then
+       _file="$0"
+fi
 provide_list=`rcorder -p $_file`
 
 SYSCTL="/sbin/sysctl"