summaryrefslogtreecommitdiffstats
path: root/etc/rc.d/statd
blob: aaf8bb404d89238b37ebf9be1fc614f7f2c433c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/sh
#
# $NetBSD: nfslocking,v 1.6 2002/03/24 15:52:41 lukem Exp $
# FreeBSD History: src/etc/rc.d/nfslocking,v 1.11 2004/10/07 13:55:26 mtm Exp
# $FreeBSD$
#

# PROVIDE: statd
# REQUIRE: nfsserver nfsclient nfsd rpcbind
# BEFORE:  DAEMON
# KEYWORD: nojail

. /etc/rc.subr

name="statd"
rcvar=rpc_statd_enable
command="/usr/sbin/rpc.${name}"
start_precmd='statd_precmd'
stop_precmd='checkyesno nfs_server_enable || checkyesno nfs_client_enable'
status_precmd=$stop_precmd

# Make sure that we are either an NFS client or server, and that we get
# the correct flags from rc.conf(5).
#
statd_precmd()
{
	local ret
	ret=0

	if ! checkyesno nfs_server_enable && ! checkyesno nfs_client_enable
	then
		ret=1
	fi
	if ! checkyesno rpcbind_enable && \
	    ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
	then
		force_depend rpcbind || ret=1
	fi
	rc_flags=${rpc_statd_flags}
	return ${ret}
}

load_rc_config $name
run_rc_command $1
OpenPOWER on IntegriCloud