#!/usr/bin/openrc-run

. /opt/etc/functions.openrc

PIDFILE=${PIDFILE-"/var/run/dhcpd4.pid"}
CONFIG=${CONFIG-"/opt/etc/dhcpd.conf"}
LEASES=${LEASES-"/opt/var/dhcpd.leases"}

COMMAND=${COMMAND-"/usr/bin/dhcpd"}
COMMAND_ARGS=${COMMAND_ARGS-"-4 -cf ${CONFIG} -pf ${PIDFILE} -lf ${LEASES}"}

depend() {
	need net
	after bootmisc
	before libvirtd
	provide ${SVCNAME}
}

start()
{
	local _rc=1
	ebegin "Starting service \"${SVCNAME}\""
	[ -f ${LEASES} ] || touch ${LEASES}
	${COMMAND} ${COMMAND_ARGS}
	_rc=$?
	eend ${_rc}
	return ${_rc}
}

stop()
{
	ebegin "Stopping service \"${SVCNAME}\""
	/bin/kill -s INT `cat ${PIDFILE}`
	while ps axwww | grep -v grep | grep ${CONFIG} > /dev/null 2>&1; do
		sleep 1
	done
	[ "${RC_CMD}" = "restart" ] && sleep 1
	eend 0
	return 0
}
