Files
poky/meta/recipes-core/initscripts/initscripts-1.0/urandom
Richard Purdie d677826f85 initscripts: Clean up license handling/identifiers
The license is clear, add an SPDX license identification headers to the scripts
and drop the weird patch, we don't need it.

(From OE-Core rev: 540041ac80cfc91df61b45d48f9c9ebbc9b2e71e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-04-01 23:11:37 +01:00

1.5 KiB
Executable File

#!/bin/sh

SPDX-License-Identifier: GPL-2.0-only

BEGIN INIT INFO

Provides: urandom

Required-Start: $local_fs mountvirtfs

Required-Stop: $local_fs

Default-Start: S

Default-Stop: 0 6

Short-Description: Save and restore the random seed

Description: Save the random seed on shutdown and restore it on boot,

to ensure that the seed isn't predicable on startup

(because the boot process is predictable)

END INIT INFO

test -c /dev/urandom || exit 0

RANDOM_SEED_FILE=/var/lib/urandom/random-seed

. /etc/default/rcS [ -f /etc/default/urandom ] && . /etc/default/urandom

case "$1" in start|"") test "$VERBOSE" != no && echo "Initializing random number generator..." # Load and then save 512 bytes, which is the size of the entropy # pool. Also load the current date, in case the seed file is # empty. ( date +%s.%N; [ -f "$RANDOM_SEED_FILE" ] && cat "$RANDOM_SEED_FILE" )
>/dev/urandom rm -f "$RANDOM_SEED_FILE" umask 077 dd if=/dev/urandom of=$RANDOM_SEED_FILE count=1
>/dev/null 2>&1 || echo "urandom start: failed." umask 022 ;; stop) # Carry a random seed from shut-down to start-up; # see documentation in linux/drivers/char/random.c test "$VERBOSE" != no && echo "Saving random seed..." umask 077 dd if=/dev/urandom of=$RANDOM_SEED_FILE count=1
>/dev/null 2>&1 || echo "urandom stop: failed." ;; *) echo "Usage: urandom {start|stop}" >&2 exit 1 ;; esac

exit 0