#must be defined for file_contexts type qmi_test_service_exec, exec_type, vendor_file_type, file_type; userdebug_or_eng(` type qmi_test_service, domain; domain_auto_trans(shell, qmi_test_service_exec, qmi_test_service) #domain_auto_trans(adbd, qmi_test_service_exec, qmi_test_service) #enable access to loader in 64 bit system allow qmi_test_service shell:fd use; #test is launched from pseudo terminal so output goes there allow qmi_test_service devpts:chr_file {read write getattr ioctl}; #to access smem log allow qmi_test_service smem_log_device:chr_file {read write open ioctl}; #enable accessing the path where qmuxds named sockets are present #to interface with qmuxd through unix sockets #to access ipc router socket allow qmi_test_service qmi_test_service:socket {create bind read write setopt}; #enable running test as root user => privileged process #enable privileged processes to bypass permission checks allow qmi_test_service qmi_test_service:capability {dac_override dac_read_search setgid setuid fsetid}; #QCCI calls qmuxd API. The API will internally require this qmux_socket(qmi_test_service); #enable accessing the system health monitor to check the system health, #if a request times out allow qmi_test_service system_health_monitor_device:chr_file rw_file_perms; ')