2002-06-13 22:14:37 +00:00
|
|
|
#!/bin/sh
|
|
|
|
#
|
|
|
|
# $FreeBSD$
|
|
|
|
#
|
|
|
|
|
|
|
|
# PROVIDE: initrandom
|
2010-05-19 19:03:19 +00:00
|
|
|
# REQUIRE: dumpon ddb
|
2002-06-13 22:14:37 +00:00
|
|
|
# BEFORE: disks
|
2004-10-07 13:55:26 +00:00
|
|
|
# KEYWORD: nojail
|
2002-06-13 22:14:37 +00:00
|
|
|
|
|
|
|
. /etc/rc.subr
|
|
|
|
|
|
|
|
name="initrandom"
|
|
|
|
start_cmd="initrandom_start"
|
|
|
|
stop_cmd=":"
|
|
|
|
|
|
|
|
initrandom_start()
|
|
|
|
{
|
2004-04-09 15:56:16 +00:00
|
|
|
soft_random_generator=`sysctl kern.random 2>/dev/null`
|
|
|
|
|
2002-06-13 22:14:37 +00:00
|
|
|
echo -n 'Entropy harvesting:'
|
|
|
|
|
2004-04-09 15:56:16 +00:00
|
|
|
if [ \! -z "${soft_random_generator}" ] ; then
|
|
|
|
|
2008-04-22 15:18:47 +00:00
|
|
|
if [ -w /dev/random ]; then
|
|
|
|
if checkyesno harvest_interrupt; then
|
2011-03-30 01:19:00 +00:00
|
|
|
${SYSCTL} kern.random.sys.harvest.interrupt=1 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
echo -n ' interrupts'
|
2008-04-22 15:18:47 +00:00
|
|
|
else
|
2011-03-30 01:19:00 +00:00
|
|
|
${SYSCTL} kern.random.sys.harvest.interrupt=0 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
fi
|
2002-06-13 22:14:37 +00:00
|
|
|
|
2008-04-22 15:18:47 +00:00
|
|
|
if checkyesno harvest_ethernet; then
|
2011-03-30 01:19:00 +00:00
|
|
|
${SYSCTL} kern.random.sys.harvest.ethernet=1 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
echo -n ' ethernet'
|
2008-04-22 15:18:47 +00:00
|
|
|
else
|
2011-03-30 01:19:00 +00:00
|
|
|
${SYSCTL} kern.random.sys.harvest.ethernet=0 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
fi
|
2002-06-13 22:14:37 +00:00
|
|
|
|
2008-04-22 15:18:47 +00:00
|
|
|
if checkyesno harvest_p_to_p; then
|
2011-03-30 01:19:00 +00:00
|
|
|
${SYSCTL} kern.random.sys.harvest.point_to_point=1 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
echo -n ' point_to_point'
|
2008-04-22 15:18:47 +00:00
|
|
|
else
|
2011-03-30 01:19:00 +00:00
|
|
|
${SYSCTL} kern.random.sys.harvest.point_to_point=0 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
fi
|
2002-06-13 22:14:37 +00:00
|
|
|
|
2013-10-06 12:43:42 +00:00
|
|
|
if checkyesno harvest_swi; then
|
|
|
|
${SYSCTL} kern.random.sys.harvest.swi=1 >/dev/null
|
|
|
|
echo -n ' swi'
|
|
|
|
else
|
|
|
|
${SYSCTL} kern.random.sys.harvest.swi=0 >/dev/null
|
2004-04-09 15:56:16 +00:00
|
|
|
fi
|
2013-10-06 12:43:42 +00:00
|
|
|
fi
|
2012-08-22 23:37:24 +00:00
|
|
|
|
2004-04-09 15:56:16 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
echo '.'
|
2002-06-13 22:14:37 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
load_rc_config random
|
|
|
|
run_rc_command "$1"
|