## <summary>libmtp: An Initiatior implementation of the Media Transfer Protocol (MTP).</summary>

###########################################################
## <summary>
##	Role access for libmtp.
## </summary>
## <param name="role_prefix">
##	<summary>
##	The prefix of the user role (e.g., user
##	is the prefix for user_r).
##	</summary>
## </param>
## <param name="user_domain">
##	<summary>
##	User domain for the role.
##	</summary>
## </param>
## <param name="user_exec_domain">
##	<summary>
##	User exec domain for execute and transition access.
##	</summary>
## </param>
## <param name="role">
##	<summary>
##	Role allowed access
##	</summary>
## </param>
#
template(`libmtp_role',`
	gen_require(`
		attribute_role libmtp_roles;
		type libmtp_t, libmtp_exec_t;
	')

	roleattribute $4 libmtp_roles;

	domtrans_pattern($3, libmtp_exec_t, libmtp_t)

	allow $3 libmtp_t:process { ptrace signal_perms };
	ps_process_pattern($3, libmtp_t)

	optional_policy(`
		systemd_user_app_status($1, libmtp_t)
	')
')
