# inputflinger
type inputflinger, domain;
type inputflinger_exec, exec_type, file_type;

init_daemon_domain(inputflinger)
binder_use(inputflinger)
binder_service(inputflinger)

binder_call(inputflinger, system_server)

allow inputflinger inputflinger_service:service_manager add;

# Audited locally.
service_manager_local_audit_domain(inputflinger)
auditallow inputflinger { service_manager_type -inputflinger_service }:service_manager find;
