type hal_audio_default, domain;
hal_server_domain(hal_audio_default, hal_audio)

type hal_audio_default_exec, exec_type, file_type;
init_daemon_domain(hal_audio_default)

hal_client_domain(hal_audio_default, hal_allocator)

typeattribute hal_audio_default socket_between_core_and_vendor_violators;
# TODO (b/36601590) move hal_audio's data file to
# /data/vendor/hardware/hal_audio. Remove coredata_in_vendor_violators
# attribute.
typeattribute hal_audio_default coredata_in_vendor_violators;
