blob: ab4e275482728f4b7f145c730d353aab4e8f6ba4 [file] [log] [blame]
# PRNG seeder daemon
# Started from early init, maintains a FIPS approved DRBG which it periodically reseeds from
# /dev/hw_random. When BoringSSL (libcrypto) in other processes needs seeding data for its
# internal DRBGs it will connect to /dev/socket/prng_seeder and the daemon will write a
# fixed size block of entropy then disconnect. No other IO is performed.
type prng_seeder, domain, coredomain;
type prng_seeder_exec, system_file_type, exec_type, file_type;
init_daemon_domain(prng_seeder)
# prng_seeder is using bootstrap bionic
use_bootstrap_libs(prng_seeder)
# Socket open and listen are performed by init.
allow prng_seeder prng_seeder:unix_stream_socket { read write getattr accept };
allow prng_seeder hw_random_device:chr_file { read open };
allow prng_seeder kmsg_debug_device:chr_file { w_file_perms getattr ioctl };