|
|
1ec3d1a |
## <summary>File system quota management</summary>
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
########################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Execute quota management tools in the quota domain.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain allowed to transition.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_domtrans',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_t, quota_exec_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
corecmd_search_bin($1)
|
|
|
1ec3d1a |
domtrans_pattern($1, quota_exec_t, quota_t)
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
########################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Execute quota management tools in the quota domain, and
|
|
|
1ec3d1a |
## allow the specified role the quota domain.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain allowed to transition.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
## <param name="role">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Role allowed access.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
## <rolecap/>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_run',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
quota_domtrans($1)
|
|
|
1ec3d1a |
role $2 types quota_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
#######################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Alow to read of filesystem quota data files.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain to not audit.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_read_db',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_db_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
allow $1 quota_db_t:file read_file_perms;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
########################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Do not audit attempts to get the attributes
|
|
|
1ec3d1a |
## of filesystem quota data files.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain to not audit.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_dontaudit_getattr_db',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_db_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
dontaudit $1 quota_db_t:file getattr_file_perms;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
########################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Create, read, write, and delete quota
|
|
|
1ec3d1a |
## db files.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain to not audit.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_manage_db',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_db_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
allow $1 quota_db_t:file manage_file_perms;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
########################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Create, read, write, and delete quota
|
|
|
1ec3d1a |
## flag files.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain allowed access.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_manage_flags',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_flag_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
files_search_var_lib($1)
|
|
|
1ec3d1a |
manage_files_pattern($1, quota_flag_t, quota_flag_t)
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
########################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Transition to quota named content
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain allowed access.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_filetrans_named_content',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_db_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
files_root_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_root_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_boot_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_boot_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_etc_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_etc_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_tmp_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_tmp_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_home_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_home_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_usr_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_usr_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_var_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_var_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
files_spool_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
files_spool_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
mta_spool_filetrans($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
mta_spool_filetrans($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
mta_spool_filetrans_queue($1, quota_db_t, file, "aquota.user")
|
|
|
1ec3d1a |
mta_spool_filetrans_queue($1, quota_db_t, file, "aquota.group")
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
#######################################
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Transition to quota_nld.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## <param name="domain">
|
|
|
1ec3d1a |
## <summary>
|
|
|
1ec3d1a |
## Domain allowed to transition.
|
|
|
1ec3d1a |
## </summary>
|
|
|
1ec3d1a |
## </param>
|
|
|
1ec3d1a |
#
|
|
|
1ec3d1a |
interface(`quota_domtrans_nld',`
|
|
|
1ec3d1a |
gen_require(`
|
|
|
1ec3d1a |
type quota_nld_t, quota_nld_exec_t;
|
|
|
1ec3d1a |
')
|
|
|
1ec3d1a |
|
|
|
1ec3d1a |
corecmd_search_bin($1)
|
|
|
1ec3d1a |
domtrans_pattern($1, quota_nld_exec_t, quota_nld_t)
|
|
|
1ec3d1a |
')
|