#!/bin/sh # # $NetBSD: entropy,v 1.1 2021/01/10 23:24:25 riastradh Exp $ # # PROVIDE: entropy # REQUIRE: random_seed rndctl # BEFORE: ike ipsec network $_rc_subr_loaded . /etc/rc.subr name="entropy" start_cmd="entropy_start" stop_cmd=":" entropy_start() { case ${entropy-} in '') ;; check) echo -n "Checking for entropy..." # dd will print an error message `Resource temporarily # unavailable' to stderr, which is a little annoying, # but getting rid of it is also a little annoying. if dd if=/dev/random iflag=nonblock of=/dev/null bs=1 count=1 \ msgfmt=quiet; then echo "done" else echo "not enough entropy available, aborting boot." stop_boot fi ;; wait) echo -n "Waiting for entropy..." dd if=/dev/random of=/dev/null bs=1 count=1 msgfmt=quiet echo "done" ;; esac } load_rc_config "$name" run_rc_command "$1"