aboutsummaryrefslogtreecommitdiff
path: root/security/cfs/files/cfsd.in
blob: 1357f4edd33d035a06469a27b961d2a0d500b4b5 (plain) (blame)
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
45
46
47
48
#!/bin/sh

# PROVIDE: cfsd
# REQUIRE: mountd
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable cfsd:
#
# cfsd_enable=YES
#
# Additional options:
#
# cfsd_port=3049		# the port to listen to
# cfsd_mountpoint=/crypt	# the CFS mountpoint
#

. /etc/rc.subr

name=cfsd
rcvar=cfsd_enable

load_rc_config $name

: ${cfsd_enable:=no}
: ${cfsd_port=3049}
: ${cfsd_mountpoint=/crypt}

command=%%PREFIX%%/sbin/cfsd
command_args="$cfsd_port > /dev/null 2>&1"
required_dirs="%%CFSD_BOOTSTRAP%% $cfsd_mountpoint"
start_postcmd=cfsd_poststart
stop_precmd=cfsd_prestop

cfsd_poststart()
{
	if [ -n "$cfsd_mountpoint" ]; then
		mount -o port="$cfsd_port",udp,nfsv2,nolockd 127.0.0.1:%%CFSD_BOOTSTRAP%% "$cfsd_mountpoint"
	fi
}

cfsd_prestop()
{
	if [ -n "$cfsd_mountpoint" ]; then
		umount "$cfsd_mountpoint"
	fi
}

run_rc_command $1