type atfwd, domain, device_domain_deprecated;
type atfwd_exec, exec_type, file_type;

# Started by init
init_daemon_domain(atfwd)

# Creates/Talks to qmuxd via the qmux_radio socket.
qmux_socket(atfwd);

binder_use(atfwd);
binder_call(atfwd, servicemanager);
binder_call(atfwd, system_app);

allow atfwd self:udp_socket create;

allow atfwd atfwd_service:service_manager find;

set_prop(atfwd, radio_atfwd_prop)
