summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2012-08-22 23:37:24 +0000
committerobrien <obrien@FreeBSD.org>2012-08-22 23:37:24 +0000
commit6068eb26e19970f27d6bf2ce07076852fa188d12 (patch)
tree61a718862378f925d7bbb2baf2a52b63c4e281cb /etc
parent9df6f2a093e6b1e10c593f4f63086a8ee033d02f (diff)
downloadFreeBSD-src-6068eb26e19970f27d6bf2ce07076852fa188d12.zip
FreeBSD-src-6068eb26e19970f27d6bf2ce07076852fa188d12.tar.gz
* Reinstate r128059's consumption of our best entropy first.
r128060 for "hardware-supplied entropy" reversed this without reason, seems a typo. * Isolate "better than nothing" implementation to a function. Submitted by: obrien & Arthur Mesh <arthurmesh@gmail.com> Sponsored by: Juniper Networks
Diffstat (limited to 'etc')
-rwxr-xr-xetc/rc.d/initrandom21
1 files changed, 13 insertions, 8 deletions
diff --git a/etc/rc.d/initrandom b/etc/rc.d/initrandom
index fcc047b..49ba190 100755
--- a/etc/rc.d/initrandom
+++ b/etc/rc.d/initrandom
@@ -21,6 +21,17 @@ feed_dev_random()
fi
}
+better_than_nothing()
+{
+ # XXX temporary until we can improve the entropy
+ # harvesting rate.
+ # Entropy below is not great, but better than nothing.
+ # This unblocks the generator at startup
+ ( ps -fauxww; sysctl -a; date; df -ib; dmesg; ps -fauxww ) \
+ | dd of=/dev/random bs=8k 2>/dev/null
+ cat /bin/ls | dd of=/dev/random bs=8k 2>/dev/null
+}
+
initrandom_start()
{
soft_random_generator=`sysctl kern.random 2>/dev/null`
@@ -52,14 +63,6 @@ initrandom_start()
fi
fi
- # XXX temporary until we can improve the entropy
- # harvesting rate.
- # Entropy below is not great, but better than nothing.
- # This unblocks the generator at startup
- ( ps -fauxww; sysctl -a; date; df -ib; dmesg; ps -fauxww ) \
- | dd of=/dev/random bs=8k 2>/dev/null
- cat /bin/ls | dd of=/dev/random bs=8k 2>/dev/null
-
# First pass at reseeding /dev/random.
#
case ${entropy_file} in
@@ -72,6 +75,8 @@ initrandom_start()
;;
esac
+ better_than_nothing()
+
echo -n ' kickstart'
fi
OpenPOWER on IntegriCloud