mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-26 05:02:18 +00:00
76 lines
1.5 KiB
Bash
76 lines
1.5 KiB
Bash
#!/bin/sh
|
|
|
|
# PROVIDE: dnetc
|
|
# REQUIRE: LOGIN
|
|
# KEYWORD: shutdown
|
|
|
|
#
|
|
# Add the following lines to /etc/rc.conf to enable dnetc:
|
|
# dnetc_enable (bool): Set to "NO" by default.
|
|
# Set to "YES" to enable dnetc.
|
|
# dnetc_dir (path): Set to "%%BINDIR%%" by default.
|
|
# dnetc_user (user): Set to "dnetc" by default.
|
|
# dnetc_idprio (priority): Unset by default. See idprio manpage.
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="dnetc"
|
|
rcvar=dnetc_enable
|
|
|
|
load_rc_config $name
|
|
|
|
: ${dnetc_enable="NO"}
|
|
: ${dnetc_dir="%%BINDIR%%"}
|
|
: ${dnetc_user="dnetc"}
|
|
|
|
required_files=${dnetc_dir}/${name}.ini
|
|
|
|
start_cmd="${name}_start"
|
|
stop_cmd="${name}_stop"
|
|
|
|
extra_commands="flush fetch update"
|
|
|
|
flush_cmd="${name}_flush"
|
|
fetch_cmd="${name}_fetch"
|
|
update_cmd="${name}_update"
|
|
|
|
dnetc_start()
|
|
{
|
|
if ps -x -o ucomm -U${dnetc_user} | grep ${name} >/dev/null; then
|
|
echo "${name} already running?"
|
|
else
|
|
${dnetc_idprio:+idprio} ${dnetc_idprio} su -m ${dnetc_user} -c "${dnetc_dir}/${name} -quiet" >/dev/null 2>&1
|
|
echo -n " ${name}"
|
|
fi
|
|
}
|
|
|
|
dnetc_stop()
|
|
{
|
|
if ps -x -o ucomm -U${dnetc_user} | grep ${name} >/dev/null; then
|
|
su -m ${dnetc_user} -c "${dnetc_dir}/${name} -shutdown" >/dev/null 2>&1
|
|
# wait for dnetc to stop
|
|
sleep 2
|
|
echo -n " ${name}"
|
|
else
|
|
echo "${name} not running?"
|
|
fi
|
|
}
|
|
|
|
dnetc_flush()
|
|
{
|
|
su -m ${dnetc_user} -c "${dnetc_dir}/${name} -flush" >/dev/null 2>&1
|
|
}
|
|
|
|
dnetc_fetch()
|
|
{
|
|
su -m ${dnetc_user} -c "${dnetc_dir}/${name} -fetch" >/dev/null 2>&1
|
|
}
|
|
|
|
dnetc_update()
|
|
{
|
|
su -m ${dnetc_user} -c "${dnetc_dir}/${name} -update" >/dev/null 2>&1
|
|
}
|
|
|
|
run_rc_command "$1"
|