summaryrefslogtreecommitdiffstats
path: root/etc/rc.d/nfslocking
diff options
context:
space:
mode:
Diffstat (limited to 'etc/rc.d/nfslocking')
-rwxr-xr-xetc/rc.d/nfslocking22
1 files changed, 18 insertions, 4 deletions
diff --git a/etc/rc.d/nfslocking b/etc/rc.d/nfslocking
index f8a77e8..5853a48 100755
--- a/etc/rc.d/nfslocking
+++ b/etc/rc.d/nfslocking
@@ -5,7 +5,7 @@
#
# PROVIDE: nfslocking
-# REQUIRE: nfsserver nfsclient nfsd
+# REQUIRE: nfsserver nfsclient nfsd rpcbind
# BEFORE: DAEMON
# KEYWORD: nojail
@@ -17,10 +17,24 @@ arg=$1
# Either NFS client or server must be enabled or this must be a 'forcestart'
# for either of the daemons to start.
#
-start_precmd='checkyesno nfs_server_enable || checkyesno nfs_client_enable ||
+nfslocking_precmd()
+{
+ if ! checkyesno nfs_server_enable && ! checkyesno nfs_client_enable && \
+ [ -z "$rc_force" ]
+ then
+ return 1
+ fi
+ if ! checkyesno rpcbind_enable && \
+ ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
+ then
+ force_depend rpcbind || return 1
+ fi
+}
+
+start_precmd="nfslocking_precmd"
+stop_precmd='checkyesno nfs_server_enable || checkyesno nfs_client_enable ||
[ -n "$rc_force" ]'
-stop_precmd=$start_precmd
-status_precmd=$start_precmd
+status_precmd=$stop_precmd
# rpc.statd
#
OpenPOWER on IntegriCloud