12345678910111213141516171819202122232425262728293031323334353637383940 |
- #!/bin/sh
- #PKG rng-tools
- #INIT 60
- . /etc/rc.conf
- case $1 in
- autostop) ;;
- autostart)
- test x"${rngd:-NO}" = x"NO" && exit 0
- test x"$rngd" = x"DAEMON" && test -x /bin/mksh && exec mksh -T- $0 start
- exec sh $0 start
- ;;
- start)
- devnode=""
- for node in hw_random hwrandom i810_rng hwrng; do
- if [ -e /dev/$node ]; then
- devnode=/dev/$node
- break
- fi
- done
- if [ -z "$devnode" ]; then
- echo "no hardware RNG found, falling back to /dev/urandom"
- devnode=/dev/urandom
- fi
- /usr/sbin/rngd -b -r $devnode
- ;;
- stop)
- kill $(pgrep -f /usr/sbin/rngd)
- ;;
- restart)
- sh $0 stop
- sleep 1
- sh $0 start
- ;;
- *)
- echo "Usage: $0 {start | stop | restart}"
- exit 1
- ;;
- esac
- exit $?
|