# Copyright (C) 2005 Tresys Technology, LLC ######################################## ## ## ## Execute hwclock in the clock domain. ## ## ## The type of the process performing this action. ## ## ## # define(`clock_transition',` requires_block_template(`$0'_depend) allow $1 hwclock_exec_t:file { getattr read execute }; allow $1 hwclock_t:process transition; type_transition $1 hwclock_exec_t:file hwclock_t; dontaudit $1 hwclock_t:process { noatsecure siginh rlimitinh }; ') define(`clock_transition_depend',` type hwclock_t, hwclock_exec_t; class file { getattr read execute }; class process { transition noatsecure siginh rlimitinh }; ') ######################################## ## ## ## Execute hwclock in the clock domain, and ## allow the specified role the hwclock domain. ## ## ## The type of the process performing this action. ## ## ## The role to be allowed the clock domain. ## ## ## The type of the terminal allow the clock domain to use. ## ## ## # define(`clock_transition_add_role_use_terminal',` requires_block_template(`$0'_depend) clock_transition($1) role $2 types hwclock_t; allow hwclock_t $3:chr_file { getattr read write ioctl }; ') define(`clock_transition_add_role_use_terminal_depend',` type hwclock_t; class chr_file { getattr read write ioctl }; ') ####################################### # # clock_execute(domain) # define(`clock_execute',` requires_block_template(`$0'_depend) allow $1 hwclock_exec_t:file { getattr read execute execute_no_trans }; ') define(`clock_execute_depend',` type hwclock_exec_t; class file { getattr read execute execute_no_trans }; ') ####################################### # # clock_modify_drift_records(domain) # define(`clock_modify_drift_records',` requires_block_template(`$0'_depend) allow $1 adjtime_t:file { getattr read write ioctl lock append }; files_read_general_system_config_directory($1) ') define(`clock_modify_drift_records_depend',` type adjtime_t; class file { getattr read write ioctl lock append }; ')