pkgsrc/security/pks/files/pksd.sh
adrianp f279a1edea Install the index file for the www server
Don't run as root
Bump to nb3
2005-10-23 17:45:39 +00:00

80 lines
1.5 KiB
Bash

#!@RCD_SCRIPTS_SHELL@
#
# $NetBSD: pksd.sh,v 1.8 2005/10/23 17:45:39 adrianp Exp $
#
# PROVIDE: pksd
# REQUIRE: DAEMON
if [ -f /etc/rc.subr ]
then
. /etc/rc.subr
fi
name="pksd"
rcvar=${name}
command="@PREFIX@/bin/pksd"
run_command="@PREFIX@/bin/pks-queue-run.sh"
ctl_command="@PREFIX@/bin/pksdctl"
client_command="@PREFIX@/bin/pksclient"
conf_file="@PKG_SYSCONFDIR@/${name}.conf"
required_files="${conf_file}"
extra_commands="dbinit"
pksd_user="@PKS_USER@"
pksd_group="@PKS_GROUP@"
pksd_dbinit()
{
(
umask 007
if [ -r ${conf_file} ]
then
dbdir=`@AWK@ '/db_dir/ { print $2 }' < ${conf_file}`
if [ ! -f ${dbdir}/keydb000 -a -x ${client_command} ]
then
@SU@ -m ${pksd_user} -c "${client_command} ${dbdir} create"
fi
fi
)
}
pksd_start()
{
if [ -r ${conf_file} -a -x ${command} -a -x ${run_command} ]
then
@ECHO@ "Starting ${name} (local)."
@ECHO@ "${command} ${conf_file}"
@SU@ -m ${pksd_user} -c "${command} ${conf_file} &"
sleep 5
@SU@ -m ${pksd_user} -c "${run_command} ${conf_file}"
fi
}
pksd_stop()
{
if [ -r ${conf_file} -a -x ${ctl_command} ]
then
socket=`@AWK@ '/socket_name/ { print $2 }' < ${conf_file}`
if [ -S ${socket} ]
then
@ECHO@ "Stopping ${name} (local)."
@SU@ -m ${pksd_user} -c "${ctl_command} ${socket} shutdown"
fi
fi
}
dbinit_cmd=pksd_dbinit
start_precmd=pksd_dbinit
start_cmd=pksd_start
stop_cmd=pksd_stop
if [ -f /etc/rc.subr ]
then
load_rc_config $name
run_rc_command "$1"
else
@ECHO@ -n " ${name}"
pksd_dbinit
pksd_start
fi