type citadeld, domain;
type citadeld_exec, exec_type, vendor_file_type, file_type;

vndbinder_use(citadeld)
add_service(citadeld, citadeld_service)

allow citadeld citadel_device:chr_file rw_file_perms;

init_daemon_domain(citadeld)

allow citadeld debugfs_ipc:dir search;

allow citadeld hal_power_stats_default:binder { call transfer };
allow citadeld power_stats_service:service_manager find;

# Let citadeld find and use statsd.
hwbinder_use(citadeld)
get_prop(citadeld, hwservicemanager_prop)
allow citadeld fwk_stats_hwservice:hwservice_manager find;
binder_call(citadeld, stats_service_server)
