mountd revision 98585
1#!/bin/sh
2#
3# $NetBSD: mountd,v 1.11 2002/01/31 01:26:06 lukem Exp $
4# $FreeBSD: head/etc/rc.d/mountd 98585 2002-06-21 19:50:01Z dougb $
5#
6
7# PROVIDE: mountd
8# REQUIRE: NETWORKING mountall beforemountlkm nfsserver rpcbind quota
9# KEYWORD: FreeBSD NetBSD
10
11. /etc/rc.subr
12
13name="mountd"
14required_files="/etc/exports"
15start_precmd="mountd_precmd"
16extra_commands="reload"
17
18case `${CMD_OSTYPE}` in
19FreeBSD)
20	rcvar=`set_rcvar nfs_server`
21	command="/sbin/${name}"
22	;;
23NetBSD)
24	rcvar=`set_rcvar`
25	command="/usr/sbin/${name}"
26	;;
27esac
28
29mountd_precmd()
30{
31	case `${CMD_OSTYPE}` in
32	FreeBSD)
33		if ! sysctl vfs.nfsrv >/dev/null 2>&1; then
34			force_depend nfsserver || return 1
35		fi
36
37		if ! checkyesno portmap_enable  && \
38		    ! /etc/rc.d/rpcbind forcestatus 1>/dev/null 2>&1
39                then
40			force_depend rpcbind || return 1
41		fi
42
43		# mountd flags will differ depending on rc.conf settings
44		#
45		case ${nfs_server_enable} in
46		[Yy][Ee][Ss])
47			if checkyesno weak_mountd_authentication ; then
48				mountd_flags="${mountd_flags} -n"
49			fi
50			;;
51		*)
52			if checkyesno single_mountd_enable ; then
53				checkyesno weak_mountd_authentication && mountd_flags="-n"
54			fi
55		esac
56		;;
57	esac
58	rm -f /var/db/mountdtab
59	( umask 022 ; > /var/db/mountdtab )
60	return 0
61}
62
63load_rc_config $name
64run_rc_command "$1"
65