xref: /dragonfly/etc/rc.d/statd (revision e54c8dc8)
1ce0e08e2SPeter Avalos#!/bin/sh
2ce0e08e2SPeter Avalos#
3ce0e08e2SPeter Avalos# FreeBSD History: src/etc/rc.d/nfslocking,v 1.11 2004/10/07 13:55:26 mtm Exp
4ce0e08e2SPeter Avalos# $FreeBSD: src/etc/rc.d/statd,v 1.21 2008/07/16 19:50:29 dougb Exp $
5ce0e08e2SPeter Avalos#
6ce0e08e2SPeter Avalos
7ce0e08e2SPeter Avalos# PROVIDE: statd
8ce0e08e2SPeter Avalos# REQUIRE: nfsserver nfsclient nfsd rpcbind
9ce0e08e2SPeter Avalos# BEFORE:  DAEMON
10ce0e08e2SPeter Avalos# KEYWORD: nojail shutdown
11ce0e08e2SPeter Avalos
12ce0e08e2SPeter Avalos. /etc/rc.subr
13ce0e08e2SPeter Avalos
14ce0e08e2SPeter Avalosname="statd"
15*e54c8dc8SAaron LIrcvar="rpc_statd_enable"
16ce0e08e2SPeter Avaloscommand="/usr/sbin/rpc.${name}"
17ce0e08e2SPeter Avalosstart_precmd='statd_precmd'
18ce0e08e2SPeter Avalosstop_precmd='checkyesno nfs_server_enable || checkyesno nfs_client_enable'
19ce0e08e2SPeter Avalosstatus_precmd=$stop_precmd
20ce0e08e2SPeter Avalos
21ce0e08e2SPeter Avalos# Make sure that we are either an NFS client or server, and that we get
22ce0e08e2SPeter Avalos# the correct flags from rc.conf(5).
23ce0e08e2SPeter Avalos#
24ce0e08e2SPeter Avalosstatd_precmd()
25ce0e08e2SPeter Avalos{
26*e54c8dc8SAaron LI	local ret=0
27ce0e08e2SPeter Avalos
28ce0e08e2SPeter Avalos	if ! checkyesno nfs_server_enable && ! checkyesno nfs_client_enable
29ce0e08e2SPeter Avalos	then
30ce0e08e2SPeter Avalos		ret=1
31ce0e08e2SPeter Avalos	fi
32ce0e08e2SPeter Avalos	if ! checkyesno rpcbind_enable && \
33*e54c8dc8SAaron LI	   ! /etc/rc.d/rpcbind forcestatus >/dev/null 2>&1
34ce0e08e2SPeter Avalos	then
35ce0e08e2SPeter Avalos		force_depend rpcbind || ret=1
36ce0e08e2SPeter Avalos	fi
37*e54c8dc8SAaron LI
38ce0e08e2SPeter Avalos	rc_flags=${rpc_statd_flags}
39ce0e08e2SPeter Avalos	return ${ret}
40ce0e08e2SPeter Avalos}
41ce0e08e2SPeter Avalos
42ce0e08e2SPeter Avalosload_rc_config $name
43ce0e08e2SPeter Avalosrun_rc_command $1
44