b43f464
## <summary>D-Bus service providing high-level OBEX client and server side functionality.</summary>
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##  Transition to obex.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
## <summary>
1ec3d1a
##  Domain allowed to transition.
1ec3d1a
## </summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`obex_domtrans',`
1ec3d1a
    gen_require(`
1ec3d1a
        type obex_t, obex_exec_t;
1ec3d1a
    ')
1ec3d1a
1ec3d1a
    corecmd_search_bin($1)
1ec3d1a
    domtrans_pattern($1, obex_exec_t, obex_t)
1ec3d1a
')
1ec3d1a
1ec3d1a
########################################
1ec3d1a
## <summary>
1ec3d1a
##  Send and receive messages from
1ec3d1a
##  obex over dbus.
1ec3d1a
## </summary>
1ec3d1a
## <param name="domain">
1ec3d1a
##  <summary>
1ec3d1a
##  Domain allowed access.
1ec3d1a
##  </summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
interface(`obex_dbus_chat',`
1ec3d1a
    gen_require(`
1ec3d1a
        type obex_t;
1ec3d1a
        class dbus send_msg;
1ec3d1a
    ')
1ec3d1a
1ec3d1a
    allow $1 obex_t:dbus send_msg;
1ec3d1a
    allow obex_t $1:dbus send_msg;
1ec3d1a
')
1ec3d1a
1ec3d1a
#######################################
1ec3d1a
## <summary>
1ec3d1a
##	Role access for obex domains
1ec3d1a
##	that executes via dbus-session
1ec3d1a
## </summary>
1ec3d1a
## <param name="user_role">
1ec3d1a
##	<summary>
1ec3d1a
##	The role associated with the user domain.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
## <param name="user_domain">
1ec3d1a
##	<summary>
1ec3d1a
##	The type of the user domain.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
## <param name="domain_prefix">
1ec3d1a
##	<summary>
1ec3d1a
##	User domain prefix to be used.
1ec3d1a
##	</summary>
1ec3d1a
## </param>
1ec3d1a
#
1ec3d1a
template(`obex_role',`
1ec3d1a
	gen_require(`
bec6113
			attribute_role obex_roles;
1ec3d1a
	        type obex_t, obex_exec_t;
1ec3d1a
	')
1ec3d1a
b43f464
    ########################################
b43f464
    #    
b43f464
    # Declarations
b43f464
    #
b43f464
b43f464
	roleattribute $1 obex_roles;
b43f464
	#role $1 types obex_t;
b43f464
b43f464
    ########################################
b43f464
    #    
b43f464
    # Policy
b43f464
    #         
1ec3d1a
1ec3d1a
	allow $2 obex_t:process signal_perms;
1ec3d1a
	ps_process_pattern($2, obex_t)
1ec3d1a
1ec3d1a
	dbus_session_domain($3, obex_exec_t, obex_t)
1ec3d1a
1ec3d1a
	obex_dbus_chat($2)
1ec3d1a
')