## Cyrus is an IMAP service intended to be run on sealed servers
########################################
##
## Allow caller to create, read, write,
## and delete cyrus data files.
##
##
##
## Domain allowed access.
##
##
#
interface(`cyrus_manage_data',`
gen_require(`
type cyrus_var_lib_t;
')
files_search_var_lib($1)
allow $1 cyrus_var_lib_t:dir rw_dir_perms;
allow $1 cyrus_var_lib_t:file manage_file_perms;
')
########################################
##
## Connect to Cyrus using a unix domain stream socket.
##
##
##
## Domain allowed access.
##
##
#
interface(`cyrus_stream_connect',`
gen_require(`
type cyrus_t, cyrus_var_lib_t;
')
files_search_var_lib($1)
allow $1 cyrus_var_lib_t:dir search;
allow $1 cyrus_var_lib_t:sock_file write;
allow $1 cyrus_t:unix_stream_socket connectto;
')