#!/bin/sh
# Based on:
# FreeBSD: src/etc/rc.d/dumpon,v 1.12.2.1.4.1 2010/06/14 02:09:06 kensmith Exp

# dumpon

dumpon_try()
{
	if /sbin/dumpon "${1}" ; then
		# Make a symlink in devfs for savecore
		echo "Using ${1} for dump device."
		ln -fs "${1}" /dev/dumpdev
		return 0
	fi
	echo "Unable to specify $1 as a dump device."
	return 1
}

# Enable dumpdev so that savecore can see it. Enable it
# early so a crash early in the boot process can be caught.
#
while read dev mp type more ; do
	[ "${type}" = "swap" ] || continue
	[ -c "${dev}" ] || continue
	dumpon_try "${dev}" && works=true
done </etc/fstab
if [ "${works}" != "true" ]; then
	echo "No suitable dump device was found." 1>&2
	exit
fi

# ddb
if [ ! -z "`sysctl -Nq debug.ddb.scripting.scripts`" ]; then
	/sbin/ddb /etc/ddb.conf
fi
