]> git.ipfire.org Git - ipfire-2.x.git/blob - src/initscripts/system/random
random: Initialise the kernel's PRNG earlier
[ipfire-2.x.git] / src / initscripts / system / random
1 #!/bin/sh
2 . /etc/sysconfig/rc
3 . $rc_functions
4
5 if [ -e /proc/sys/kernel/random/poolsize ]; then
6 poolsize=$(</proc/sys/kernel/random/poolsize);
7 poolsize=$(expr $poolsize / 8 );
8 else
9 poolsize=512;
10 fi
11
12 case "$1" in
13 start)
14
15 #CRNG init need 128bit so wait until there is more)
16 avail=$(</proc/sys/kernel/random/entropy_avail)
17 while [ $avail -lt 130 ]; do
18 avail=$(</proc/sys/kernel/random/entropy_avail)
19 boot_mesg -n "\rWait for entropy: $avail/130 "
20 # Generate some disc access to gather entropy
21 echo avail > /var/tmp/random-tmpfile
22 sync
23 rm -f /var/tmp/random-tmpfile
24 done;
25 ;;
26
27 *)
28 echo "Usage: $0 {start}"
29 exit 1
30 ;;
31 esac
32
33 # End $rc_base/init.d/random