## Hardware abstraction layer ######################################## ## ## Execute hal in the hal domain. ## ## ## Domain allowed access. ## # interface(`hal_domtrans',` gen_require(` type hald_t, hald_exec_t; ') domain_auto_trans($1,hald_exec_t,hald_t) allow $1 hald_t:fd use; allow hald_t $1:fd use; allow hald_t $1:fifo_file rw_file_perms; allow hald_t $1:process sigchld; ') ######################################## ## ## Send to hal over a unix domain ## datagram socket. ## ## ## Domain allowed access. ## # interface(`hal_dgram_sendto',` gen_require(` type hald_t; ') allow $1 hald_t:unix_dgram_socket sendto; ') ######################################## ## ## Send to hal over a unix domain ## stream socket. ## ## ## Domain allowed access. ## # interface(`hal_stream_connect',` gen_require(` type hald_t; ') allow $1 hald_t:unix_stream_socket connectto; ') ######################################## ## ## Send a dbus message to hal. ## ## ## Domain allowed access. ## # interface(`hal_dbus_send',` gen_require(` type hald_t; class dbus send_msg; ') allow $1 hald_t:dbus send_msg; ') ######################################## ## ## Send and receive messages from ## hal over dbus. ## ## ## Domain allowed access. ## # interface(`hal_dbus_chat',` gen_require(` type hald_t; class dbus send_msg; ') allow $1 hald_t:dbus send_msg; allow hald_t $1:dbus send_msg; ')