(roletype r domain)
(typeattributeset dev_type (device_26_0 alarm_device_26_0 ashmem_device_26_0 audio_device_26_0 audio_timer_device_26_0 audio_seq_device_26_0 binder_device_26_0 hwbinder_device_26_0 vndbinder_device_26_0 block_device_26_0 camera_device_26_0 dm_device_26_0 keychord_device_26_0 loop_control_device_26_0 loop_device_26_0 pmsg_device_26_0 radio_device_26_0 ram_device_26_0 rtc_device_26_0 vold_device_26_0 console_device_26_0 cpuctl_device_26_0 fscklogs_26_0 full_device_26_0 gpu_device_26_0 graphics_device_26_0 hw_random_device_26_0 input_device_26_0 kmem_device_26_0 port_device_26_0 log_device_26_0 mtd_device_26_0 mtp_device_26_0 nfc_device_26_0 ptmx_device_26_0 kmsg_device_26_0 null_device_26_0 random_device_26_0 sensors_device_26_0 serial_device_26_0 socket_device_26_0 owntty_device_26_0 tty_device_26_0 video_device_26_0 vcs_device_26_0 zero_device_26_0 fuse_device_26_0 iio_device_26_0 ion_device_26_0 qtaguid_device_26_0 watchdog_device_26_0 uhid_device_26_0 uio_device_26_0 tun_device_26_0 usbaccessory_device_26_0 usb_device_26_0 properties_device_26_0 properties_serial_26_0 i2c_device_26_0 hci_attach_dev_26_0 rpmsg_device_26_0 root_block_device_26_0 frp_block_device_26_0 system_block_device_26_0 recovery_block_device_26_0 boot_block_device_26_0 userdata_block_device_26_0 cache_block_device_26_0 swap_block_device_26_0 metadata_block_device_26_0 misc_block_device_26_0 ppp_device_26_0 tee_device_26_0))
(typeattributeset domain (adbd_26_0 audioserver_26_0 blkid_26_0 blkid_untrusted_26_0 bluetooth_26_0 bootanim_26_0 bootstat_26_0 bufferhubd_26_0 cameraserver_26_0 charger_26_0 clatd_26_0 cppreopts_26_0 crash_dump_26_0 dex2oat_26_0 dhcp_26_0 dnsmasq_26_0 drmserver_26_0 dumpstate_26_0 ephemeral_app_26_0 fingerprintd_26_0 fsck_26_0 fsck_untrusted_26_0 gatekeeperd_26_0 healthd_26_0 hwservicemanager_26_0 idmap_26_0 incident_26_0 incidentd_26_0 init_26_0 inputflinger_26_0 install_recovery_26_0 installd_26_0 isolated_app_26_0 kernel_26_0 keystore_26_0 lmkd_26_0 logd_26_0 logpersist_26_0 mdnsd_26_0 mediacodec_26_0 mediadrmserver_26_0 mediaextractor_26_0 mediametrics_26_0 mediaserver_26_0 modprobe_26_0 mtp_26_0 netd_26_0 netutils_wrapper_26_0 nfc_26_0 otapreopt_chroot_26_0 otapreopt_slot_26_0 performanced_26_0 perfprofd_26_0 platform_app_26_0 postinstall_26_0 postinstall_dexopt_26_0 ppp_26_0 preopt2cachename_26_0 priv_app_26_0 profman_26_0 racoon_26_0 radio_26_0 recovery_26_0 recovery_persist_26_0 recovery_refresh_26_0 rild_26_0 runas_26_0 sdcardd_26_0 servicemanager_26_0 sgdisk_26_0 shared_relro_26_0 shell_26_0 slideshow_26_0 su_26_0 surfaceflinger_26_0 system_app_26_0 system_server_26_0 tee_26_0 tombstoned_26_0 toolbox_26_0 tzdatacheck_26_0 ueventd_26_0 uncrypt_26_0 untrusted_app_26_0 untrusted_app_25_26_0 untrusted_v2_app_26_0 update_engine_26_0 update_verifier_26_0 vdc_26_0 virtual_touchpad_26_0 vndservicemanager_26_0 vold_26_0 vr_hwc_26_0 watchdogd_26_0 webview_zygote_26_0 wificond_26_0 zygote_26_0 hal_audio_default hal_bluetooth_default hal_bootctl_default hal_camera_default hal_configstore_default hal_contexthub_default hal_drm_default hal_dumpstate_default hal_fingerprint_default hal_gatekeeper_default hal_gnss_default hal_graphics_allocator_default hal_graphics_composer_default hal_health_default hal_ir_default hal_keymaster_default hal_light_default hal_memtrack_default hal_nfc_default hal_power_default hal_sensors_default hal_thermal_default hal_tv_cec_default hal_tv_input_default hal_usb_default hal_vibrator_default hal_vr_default hal_wifi_default hal_wifi_offload_default hal_wifi_supplicant_default hostapd vendor_modprobe))
(typeattributeset fs_type (device_26_0 labeledfs_26_0 pipefs_26_0 sockfs_26_0 rootfs_26_0 proc_26_0 proc_security_26_0 proc_drop_caches_26_0 proc_overcommit_memory_26_0 usermodehelper_26_0 qtaguid_proc_26_0 proc_bluetooth_writable_26_0 proc_cpuinfo_26_0 proc_interrupts_26_0 proc_iomem_26_0 proc_meminfo_26_0 proc_misc_26_0 proc_modules_26_0 proc_net_26_0 proc_perf_26_0 proc_stat_26_0 proc_sysrq_26_0 proc_timer_26_0 proc_tty_drivers_26_0 proc_uid_cputime_showstat_26_0 proc_uid_cputime_removeuid_26_0 proc_uid_io_stats_26_0 proc_uid_procstat_set_26_0 proc_zoneinfo_26_0 selinuxfs_26_0 cgroup_26_0 sysfs_26_0 sysfs_uio_26_0 sysfs_batteryinfo_26_0 sysfs_bluetooth_writable_26_0 sysfs_leds_26_0 sysfs_hwrandom_26_0 sysfs_nfc_power_writable_26_0 sysfs_wake_lock_26_0 sysfs_mac_address_26_0 configfs_26_0 sysfs_devices_system_cpu_26_0 sysfs_lowmemorykiller_26_0 sysfs_wlan_fwpath_26_0 sysfs_vibrator_26_0 sysfs_thermal_26_0 sysfs_zram_26_0 sysfs_zram_uevent_26_0 inotify_26_0 devpts_26_0 tmpfs_26_0 shm_26_0 mqueue_26_0 fuse_26_0 sdcardfs_26_0 vfat_26_0 debugfs_26_0 debugfs_mmc_26_0 debugfs_trace_marker_26_0 debugfs_tracing_26_0 debugfs_tracing_instances_26_0 debugfs_wifi_tracing_26_0 tracing_shell_writable_26_0 tracing_shell_writable_debug_26_0 pstorefs_26_0 functionfs_26_0 oemfs_26_0 usbfs_26_0 binfmt_miscfs_26_0 app_fusefs_26_0))
(typeattributeset contextmount_type (oemfs_26_0 app_fusefs_26_0))
(typeattributeset file_type (bootanim_exec_26_0 bootstat_exec_26_0 bufferhubd_exec_26_0 cameraserver_exec_26_0 clatd_exec_26_0 cppreopts_exec_26_0 crash_dump_exec_26_0 dex2oat_exec_26_0 dhcp_exec_26_0 dnsmasq_exec_26_0 drmserver_exec_26_0 drmserver_socket_26_0 dumpstate_exec_26_0 sysfs_usb_26_0 unlabeled_26_0 system_file_26_0 vendor_hal_file_26_0 vendor_file_26_0 vendor_app_file_26_0 vendor_configs_file_26_0 same_process_hal_file_26_0 vndk_sp_file_26_0 vendor_framework_file_26_0 vendor_overlay_file_26_0 runtime_event_log_tags_file_26_0 logcat_exec_26_0 coredump_file_26_0 system_data_file_26_0 unencrypted_data_file_26_0 install_data_file_26_0 drm_data_file_26_0 adb_data_file_26_0 anr_data_file_26_0 tombstone_data_file_26_0 apk_data_file_26_0 apk_tmp_file_26_0 apk_private_data_file_26_0 apk_private_tmp_file_26_0 dalvikcache_data_file_26_0 ota_data_file_26_0 ota_package_file_26_0 user_profile_data_file_26_0 profman_dump_data_file_26_0 resourcecache_data_file_26_0 shell_data_file_26_0 property_data_file_26_0 bootchart_data_file_26_0 heapdump_data_file_26_0 nativetest_data_file_26_0 ringtone_file_26_0 preloads_data_file_26_0 preloads_media_file_26_0 dhcp_data_file_26_0 mnt_media_rw_file_26_0 mnt_user_file_26_0 mnt_expand_file_26_0 storage_file_26_0 mnt_media_rw_stub_file_26_0 storage_stub_file_26_0 postinstall_mnt_dir_26_0 postinstall_file_26_0 adb_keys_file_26_0 audio_data_file_26_0 audiohal_data_file_26_0 audioserver_data_file_26_0 bluetooth_data_file_26_0 bluetooth_logs_data_file_26_0 bootstat_data_file_26_0 boottrace_data_file_26_0 camera_data_file_26_0 gatekeeper_data_file_26_0 incident_data_file_26_0 keychain_data_file_26_0 keystore_data_file_26_0 media_data_file_26_0 media_rw_data_file_26_0 misc_user_data_file_26_0 net_data_file_26_0 nfc_data_file_26_0 radio_data_file_26_0 reboot_data_file_26_0 recovery_data_file_26_0 shared_relro_file_26_0 systemkeys_data_file_26_0 textclassifier_data_file_26_0 vpn_data_file_26_0 wifi_data_file_26_0 zoneinfo_data_file_26_0 vold_data_file_26_0 perfprofd_data_file_26_0 tee_data_file_26_0 update_engine_data_file_26_0 method_trace_data_file_26_0 app_data_file_26_0 system_app_data_file_26_0 cache_file_26_0 cache_backup_file_26_0 cache_private_backup_file_26_0 cache_recovery_file_26_0 efs_file_26_0 wallpaper_file_26_0 shortcut_manager_icons_26_0 icon_file_26_0 asec_apk_file_26_0 asec_public_file_26_0 asec_image_file_26_0 backup_data_file_26_0 bluetooth_efs_file_26_0 fingerprintd_data_file_26_0 app_fuse_file_26_0 adbd_socket_26_0 bluetooth_socket_26_0 dnsproxyd_socket_26_0 dumpstate_socket_26_0 fwmarkd_socket_26_0 lmkd_socket_26_0 logd_socket_26_0 logdr_socket_26_0 logdw_socket_26_0 mdns_socket_26_0 mdnsd_socket_26_0 misc_logd_file_26_0 mtpd_socket_26_0 netd_socket_26_0 property_socket_26_0 racoon_socket_26_0 rild_socket_26_0 rild_debug_socket_26_0 system_wpa_socket_26_0 system_ndebug_socket_26_0 tombstoned_crash_socket_26_0 tombstoned_intercept_socket_26_0 uncrypt_socket_26_0 vold_socket_26_0 webview_zygote_socket_26_0 wpa_socket_26_0 zygote_socket_26_0 gps_control_26_0 pdx_display_dir_26_0 pdx_performance_dir_26_0 pdx_bufferhub_dir_26_0 pdx_display_client_endpoint_socket_26_0 pdx_display_manager_endpoint_socket_26_0 pdx_display_screenshot_endpoint_socket_26_0 pdx_display_vsync_endpoint_socket_26_0 pdx_performance_client_endpoint_socket_26_0 pdx_bufferhub_client_endpoint_socket_26_0 file_contexts_file_26_0 mac_perms_file_26_0 property_contexts_file_26_0 seapp_contexts_file_26_0 sepolicy_file_26_0 service_contexts_file_26_0 hwservice_contexts_file_26_0 vndservice_contexts_file_26_0 fingerprintd_exec_26_0 fsck_exec_26_0 gatekeeperd_exec_26_0 healthd_exec_26_0 hwservicemanager_exec_26_0 idmap_exec_26_0 init_exec_26_0 inputflinger_exec_26_0 install_recovery_exec_26_0 installd_exec_26_0 keystore_exec_26_0 lmkd_exec_26_0 logd_exec_26_0 mediacodec_exec_26_0 mediadrmserver_exec_26_0 mediaextractor_exec_26_0 mediametrics_exec_26_0 mediaserver_exec_26_0 mtp_exec_26_0 netd_exec_26_0 netutils_wrapper_exec_26_0 otapreopt_chroot_exec_26_0 otapreopt_slot_exec_26_0 performanced_exec_26_0 perfprofd_exec_26_0 ppp_exec_26_0 preopt2cachename_exec_26_0 profman_exec_26_0 racoon_exec_26_0 recovery_persist_exec_26_0 recovery_refresh_exec_26_0 runas_exec_26_0 sdcardd_exec_26_0 servicemanager_exec_26_0 sgdisk_exec_26_0 shell_exec_26_0 su_exec_26_0 tombstoned_exec_26_0 toolbox_exec_26_0 tzdatacheck_exec_26_0 uncrypt_exec_26_0 update_engine_exec_26_0 update_verifier_exec_26_0 vdc_exec_26_0 vendor_shell_exec_26_0 vendor_toolbox_exec_26_0 virtual_touchpad_exec_26_0 vold_exec_26_0 vr_hwc_exec_26_0 webview_zygote_exec_26_0 wificond_exec_26_0 zygote_exec_26_0 hostapd_socket hal_audio_default_exec hal_audio_default_tmpfs hal_bluetooth_default_exec hal_bluetooth_default_tmpfs hal_bootctl_default_exec hal_bootctl_default_tmpfs hal_camera_default_exec hal_camera_default_tmpfs hal_configstore_default_exec hal_configstore_default_tmpfs hal_contexthub_default_exec hal_contexthub_default_tmpfs hal_drm_default_exec hal_drm_default_tmpfs hal_dumpstate_default_exec hal_dumpstate_default_tmpfs hal_fingerprint_default_exec hal_fingerprint_default_tmpfs hal_gatekeeper_default_exec hal_gatekeeper_default_tmpfs hal_gnss_default_exec hal_gnss_default_tmpfs hal_graphics_allocator_default_exec hal_graphics_allocator_default_tmpfs hal_graphics_composer_default_exec hal_graphics_composer_default_tmpfs hal_health_default_exec hal_health_default_tmpfs hal_ir_default_exec hal_ir_default_tmpfs hal_keymaster_default_exec hal_keymaster_default_tmpfs hal_light_default_exec hal_light_default_tmpfs hal_memtrack_default_exec hal_memtrack_default_tmpfs hal_nfc_default_exec hal_nfc_default_tmpfs mediacodec_tmpfs hal_power_default_exec hal_power_default_tmpfs hal_sensors_default_exec hal_sensors_default_tmpfs hal_thermal_default_exec hal_thermal_default_tmpfs hal_tv_cec_default_exec hal_tv_cec_default_tmpfs hal_tv_input_default_exec hal_tv_input_default_tmpfs hal_usb_default_exec hal_usb_default_tmpfs hal_vibrator_default_exec hal_vibrator_default_tmpfs hal_vr_default_exec hal_vr_default_tmpfs hal_wifi_default_exec hal_wifi_default_tmpfs hal_wifi_offload_default_exec hal_wifi_offload_default_tmpfs hal_wifi_supplicant_default_exec hal_wifi_supplicant_default_tmpfs hostapd_exec hostapd_tmpfs rild_exec rild_tmpfs tee_exec tee_tmpfs vndservicemanager_exec vndservicemanager_tmpfs))
(typeattributeset exec_type (bootanim_exec_26_0 bootstat_exec_26_0 bufferhubd_exec_26_0 cameraserver_exec_26_0 clatd_exec_26_0 cppreopts_exec_26_0 crash_dump_exec_26_0 dex2oat_exec_26_0 dhcp_exec_26_0 dnsmasq_exec_26_0 drmserver_exec_26_0 dumpstate_exec_26_0 logcat_exec_26_0 fingerprintd_exec_26_0 fsck_exec_26_0 gatekeeperd_exec_26_0 healthd_exec_26_0 hwservicemanager_exec_26_0 idmap_exec_26_0 init_exec_26_0 inputflinger_exec_26_0 install_recovery_exec_26_0 installd_exec_26_0 keystore_exec_26_0 lmkd_exec_26_0 logd_exec_26_0 mediacodec_exec_26_0 mediadrmserver_exec_26_0 mediaextractor_exec_26_0 mediametrics_exec_26_0 mediaserver_exec_26_0 mtp_exec_26_0 netd_exec_26_0 netutils_wrapper_exec_26_0 otapreopt_chroot_exec_26_0 otapreopt_slot_exec_26_0 performanced_exec_26_0 perfprofd_exec_26_0 ppp_exec_26_0 preopt2cachename_exec_26_0 profman_exec_26_0 racoon_exec_26_0 recovery_persist_exec_26_0 recovery_refresh_exec_26_0 runas_exec_26_0 sdcardd_exec_26_0 servicemanager_exec_26_0 sgdisk_exec_26_0 shell_exec_26_0 su_exec_26_0 tombstoned_exec_26_0 toolbox_exec_26_0 tzdatacheck_exec_26_0 uncrypt_exec_26_0 update_engine_exec_26_0 update_verifier_exec_26_0 vdc_exec_26_0 vendor_shell_exec_26_0 vendor_toolbox_exec_26_0 virtual_touchpad_exec_26_0 vold_exec_26_0 vr_hwc_exec_26_0 webview_zygote_exec_26_0 wificond_exec_26_0 zygote_exec_26_0 hal_audio_default_exec hal_bluetooth_default_exec hal_bootctl_default_exec hal_camera_default_exec hal_configstore_default_exec hal_contexthub_default_exec hal_drm_default_exec hal_dumpstate_default_exec hal_fingerprint_default_exec hal_gatekeeper_default_exec hal_gnss_default_exec hal_graphics_allocator_default_exec hal_graphics_composer_default_exec hal_health_default_exec hal_ir_default_exec hal_keymaster_default_exec hal_light_default_exec hal_memtrack_default_exec hal_nfc_default_exec hal_power_default_exec hal_sensors_default_exec hal_thermal_default_exec hal_tv_cec_default_exec hal_tv_input_default_exec hal_usb_default_exec hal_vibrator_default_exec hal_vr_default_exec hal_wifi_default_exec hal_wifi_offload_default_exec hal_wifi_supplicant_default_exec hostapd_exec rild_exec tee_exec vndservicemanager_exec))
(typeattributeset data_file_type (system_data_file_26_0 unencrypted_data_file_26_0 install_data_file_26_0 drm_data_file_26_0 adb_data_file_26_0 anr_data_file_26_0 tombstone_data_file_26_0 apk_data_file_26_0 apk_tmp_file_26_0 apk_private_data_file_26_0 apk_private_tmp_file_26_0 dalvikcache_data_file_26_0 ota_data_file_26_0 ota_package_file_26_0 user_profile_data_file_26_0 profman_dump_data_file_26_0 resourcecache_data_file_26_0 shell_data_file_26_0 property_data_file_26_0 bootchart_data_file_26_0 heapdump_data_file_26_0 nativetest_data_file_26_0 ringtone_file_26_0 preloads_data_file_26_0 preloads_media_file_26_0 dhcp_data_file_26_0 adb_keys_file_26_0 audio_data_file_26_0 audiohal_data_file_26_0 audioserver_data_file_26_0 bluetooth_data_file_26_0 bluetooth_logs_data_file_26_0 bootstat_data_file_26_0 boottrace_data_file_26_0 camera_data_file_26_0 gatekeeper_data_file_26_0 incident_data_file_26_0 keychain_data_file_26_0 keystore_data_file_26_0 media_data_file_26_0 media_rw_data_file_26_0 misc_user_data_file_26_0 net_data_file_26_0 nfc_data_file_26_0 radio_data_file_26_0 reboot_data_file_26_0 recovery_data_file_26_0 shared_relro_file_26_0 systemkeys_data_file_26_0 textclassifier_data_file_26_0 vpn_data_file_26_0 wifi_data_file_26_0 zoneinfo_data_file_26_0 vold_data_file_26_0 perfprofd_data_file_26_0 tee_data_file_26_0 update_engine_data_file_26_0 method_trace_data_file_26_0 app_data_file_26_0 system_app_data_file_26_0 wallpaper_file_26_0 shortcut_manager_icons_26_0 icon_file_26_0 asec_apk_file_26_0 asec_public_file_26_0 asec_image_file_26_0 backup_data_file_26_0 fingerprintd_data_file_26_0 app_fuse_file_26_0))
(typeattributeset core_data_file_type (system_data_file_26_0 unencrypted_data_file_26_0 install_data_file_26_0 drm_data_file_26_0 adb_data_file_26_0 anr_data_file_26_0 tombstone_data_file_26_0 apk_data_file_26_0 apk_tmp_file_26_0 apk_private_data_file_26_0 apk_private_tmp_file_26_0 dalvikcache_data_file_26_0 ota_data_file_26_0 ota_package_file_26_0 user_profile_data_file_26_0 profman_dump_data_file_26_0 resourcecache_data_file_26_0 shell_data_file_26_0 property_data_file_26_0 bootchart_data_file_26_0 heapdump_data_file_26_0 nativetest_data_file_26_0 ringtone_file_26_0 preloads_data_file_26_0 preloads_media_file_26_0 dhcp_data_file_26_0 adb_keys_file_26_0 audio_data_file_26_0 audiohal_data_file_26_0 audioserver_data_file_26_0 bluetooth_data_file_26_0 bluetooth_logs_data_file_26_0 bootstat_data_file_26_0 boottrace_data_file_26_0 camera_data_file_26_0 gatekeeper_data_file_26_0 incident_data_file_26_0 keychain_data_file_26_0 keystore_data_file_26_0 media_data_file_26_0 media_rw_data_file_26_0 misc_user_data_file_26_0 net_data_file_26_0 nfc_data_file_26_0 radio_data_file_26_0 reboot_data_file_26_0 recovery_data_file_26_0 shared_relro_file_26_0 systemkeys_data_file_26_0 textclassifier_data_file_26_0 vpn_data_file_26_0 wifi_data_file_26_0 zoneinfo_data_file_26_0 vold_data_file_26_0 perfprofd_data_file_26_0 update_engine_data_file_26_0 method_trace_data_file_26_0 app_data_file_26_0 system_app_data_file_26_0 wallpaper_file_26_0 shortcut_manager_icons_26_0 icon_file_26_0 asec_apk_file_26_0 asec_public_file_26_0 asec_image_file_26_0 backup_data_file_26_0 fingerprintd_data_file_26_0 app_fuse_file_26_0))
(typeattributeset vendor_file_type (vendor_hal_file_26_0 vendor_file_26_0 vendor_app_file_26_0 vendor_configs_file_26_0 same_process_hal_file_26_0 vndk_sp_file_26_0 vendor_framework_file_26_0 vendor_overlay_file_26_0 mediacodec_exec_26_0 vendor_shell_exec_26_0 vendor_toolbox_exec_26_0 hal_audio_default_exec hal_bluetooth_default_exec hal_bootctl_default_exec hal_camera_default_exec hal_configstore_default_exec hal_contexthub_default_exec hal_drm_default_exec hal_dumpstate_default_exec hal_fingerprint_default_exec hal_gatekeeper_default_exec hal_gnss_default_exec hal_graphics_allocator_default_exec hal_graphics_composer_default_exec hal_health_default_exec hal_ir_default_exec hal_keymaster_default_exec hal_light_default_exec hal_memtrack_default_exec hal_nfc_default_exec hal_power_default_exec hal_sensors_default_exec hal_thermal_default_exec hal_tv_cec_default_exec hal_tv_input_default_exec hal_usb_default_exec hal_vibrator_default_exec hal_vr_default_exec hal_wifi_default_exec hal_wifi_offload_default_exec hal_wifi_supplicant_default_exec hostapd_exec rild_exec tee_exec vndservicemanager_exec))
(typeattributeset sysfs_type (usermodehelper_26_0 sysfs_26_0 sysfs_uio_26_0 sysfs_batteryinfo_26_0 sysfs_bluetooth_writable_26_0 sysfs_leds_26_0 sysfs_hwrandom_26_0 sysfs_nfc_power_writable_26_0 sysfs_wake_lock_26_0 sysfs_mac_address_26_0 sysfs_usb_26_0 sysfs_devices_system_cpu_26_0 sysfs_lowmemorykiller_26_0 sysfs_wlan_fwpath_26_0 sysfs_vibrator_26_0 sysfs_thermal_26_0 sysfs_zram_26_0 sysfs_zram_uevent_26_0))
(typeattributeset debugfs_type (debugfs_mmc_26_0 debugfs_trace_marker_26_0 debugfs_tracing_26_0 debugfs_tracing_instances_26_0 debugfs_wifi_tracing_26_0 tracing_shell_writable_26_0 tracing_shell_writable_debug_26_0))
(typeattributeset sdcard_type (fuse_26_0 sdcardfs_26_0 vfat_26_0))
(typeattributeset node_type (node_26_0))
(typeattributeset netif_type (netif_26_0))
(typeattributeset port_type (port_26_0))
(typeattributeset property_type (asan_reboot_prop_26_0 audio_prop_26_0 boottime_prop_26_0 bluetooth_prop_26_0 config_prop_26_0 cppreopt_prop_26_0 ctl_bootanim_prop_26_0 ctl_bugreport_prop_26_0 ctl_console_prop_26_0 ctl_default_prop_26_0 ctl_dumpstate_prop_26_0 ctl_fuse_prop_26_0 ctl_mdnsd_prop_26_0 ctl_rildaemon_prop_26_0 dalvik_prop_26_0 debuggerd_prop_26_0 debug_prop_26_0 default_prop_26_0 device_logging_prop_26_0 dhcp_prop_26_0 dumpstate_options_prop_26_0 dumpstate_prop_26_0 ffs_prop_26_0 fingerprint_prop_26_0 firstboot_prop_26_0 hwservicemanager_prop_26_0 logd_prop_26_0 logpersistd_logging_prop_26_0 log_prop_26_0 log_tag_prop_26_0 mmc_prop_26_0 net_dns_prop_26_0 net_radio_prop_26_0 nfc_prop_26_0 overlay_prop_26_0 pan_result_prop_26_0 persist_debug_prop_26_0 persistent_properties_ready_prop_26_0 powerctl_prop_26_0 radio_prop_26_0 restorecon_prop_26_0 safemode_prop_26_0 serialno_prop_26_0 shell_prop_26_0 system_prop_26_0 system_radio_prop_26_0 vold_prop_26_0 wifi_log_prop_26_0 wifi_prop_26_0))
(typeattributeset core_property_type (audio_prop_26_0 config_prop_26_0 cppreopt_prop_26_0 dalvik_prop_26_0 debuggerd_prop_26_0 debug_prop_26_0 default_prop_26_0 dhcp_prop_26_0 dumpstate_prop_26_0 ffs_prop_26_0 fingerprint_prop_26_0 logd_prop_26_0 net_radio_prop_26_0 nfc_prop_26_0 pan_result_prop_26_0 persist_debug_prop_26_0 powerctl_prop_26_0 radio_prop_26_0 restorecon_prop_26_0 shell_prop_26_0 system_prop_26_0 system_radio_prop_26_0 vold_prop_26_0))
(typeattributeset log_property_type (log_prop_26_0 log_tag_prop_26_0 wifi_log_prop_26_0))
(typeattributeset system_server_service (accessibility_service_26_0 account_service_26_0 activity_service_26_0 alarm_service_26_0 appops_service_26_0 appwidget_service_26_0 assetatlas_service_26_0 audio_service_26_0 autofill_service_26_0 backup_service_26_0 batterystats_service_26_0 battery_service_26_0 bluetooth_manager_service_26_0 cameraproxy_service_26_0 clipboard_service_26_0 contexthub_service_26_0 IProxyService_service_26_0 commontime_management_service_26_0 companion_device_service_26_0 connectivity_service_26_0 connmetrics_service_26_0 consumer_ir_service_26_0 content_service_26_0 country_detector_service_26_0 coverage_service_26_0 cpuinfo_service_26_0 dbinfo_service_26_0 device_policy_service_26_0 deviceidle_service_26_0 device_identifiers_service_26_0 devicestoragemonitor_service_26_0 diskstats_service_26_0 display_service_26_0 font_service_26_0 netd_listener_service_26_0 DockObserver_service_26_0 dreams_service_26_0 dropbox_service_26_0 ethernet_service_26_0 fingerprint_service_26_0 gfxinfo_service_26_0 graphicsstats_service_26_0 hardware_service_26_0 hardware_properties_service_26_0 hdmi_control_service_26_0 input_method_service_26_0 input_service_26_0 imms_service_26_0 ipsec_service_26_0 jobscheduler_service_26_0 launcherapps_service_26_0 location_service_26_0 lock_settings_service_26_0 media_projection_service_26_0 media_router_service_26_0 media_session_service_26_0 meminfo_service_26_0 midi_service_26_0 mount_service_26_0 netpolicy_service_26_0 netstats_service_26_0 network_management_service_26_0 network_score_service_26_0 network_time_update_service_26_0 notification_service_26_0 oem_lock_service_26_0 otadexopt_service_26_0 overlay_service_26_0 package_service_26_0 permission_service_26_0 persistent_data_block_service_26_0 pinner_service_26_0 power_service_26_0 print_service_26_0 processinfo_service_26_0 procstats_service_26_0 recovery_service_26_0 registry_service_26_0 restrictions_service_26_0 rttmanager_service_26_0 samplingprofiler_service_26_0 scheduling_policy_service_26_0 search_service_26_0 sec_key_att_app_id_provider_service_26_0 sensorservice_service_26_0 serial_service_26_0 servicediscovery_service_26_0 settings_service_26_0 shortcut_service_26_0 statusbar_service_26_0 storagestats_service_26_0 task_service_26_0 textclassification_service_26_0 textservices_service_26_0 telecom_service_26_0 trust_service_26_0 tv_input_service_26_0 uimode_service_26_0 updatelock_service_26_0 usagestats_service_26_0 usb_service_26_0 user_service_26_0 vibrator_service_26_0 voiceinteraction_service_26_0 vr_manager_service_26_0 wallpaper_service_26_0 webviewupdate_service_26_0 wifip2p_service_26_0 wifiscanner_service_26_0 wifi_service_26_0 wifiaware_service_26_0 window_service_26_0))
(typeattributeset app_api_service (batteryproperties_service_26_0 gatekeeper_service_26_0 accessibility_service_26_0 account_service_26_0 activity_service_26_0 alarm_service_26_0 appops_service_26_0 appwidget_service_26_0 assetatlas_service_26_0 audio_service_26_0 autofill_service_26_0 backup_service_26_0 batterystats_service_26_0 bluetooth_manager_service_26_0 clipboard_service_26_0 contexthub_service_26_0 IProxyService_service_26_0 companion_device_service_26_0 connectivity_service_26_0 connmetrics_service_26_0 consumer_ir_service_26_0 content_service_26_0 country_detector_service_26_0 device_policy_service_26_0 deviceidle_service_26_0 device_identifiers_service_26_0 display_service_26_0 font_service_26_0 dreams_service_26_0 dropbox_service_26_0 ethernet_service_26_0 fingerprint_service_26_0 graphicsstats_service_26_0 hardware_properties_service_26_0 input_method_service_26_0 input_service_26_0 imms_service_26_0 ipsec_service_26_0 jobscheduler_service_26_0 launcherapps_service_26_0 location_service_26_0 media_projection_service_26_0 media_router_service_26_0 media_session_service_26_0 midi_service_26_0 mount_service_26_0 netpolicy_service_26_0 netstats_service_26_0 network_management_service_26_0 notification_service_26_0 package_service_26_0 permission_service_26_0 power_service_26_0 print_service_26_0 procstats_service_26_0 registry_service_26_0 restrictions_service_26_0 rttmanager_service_26_0 search_service_26_0 sec_key_att_app_id_provider_service_26_0 sensorservice_service_26_0 servicediscovery_service_26_0 settings_service_26_0 shortcut_service_26_0 statusbar_service_26_0 storagestats_service_26_0 textclassification_service_26_0 textservices_service_26_0 telecom_service_26_0 trust_service_26_0 tv_input_service_26_0 uimode_service_26_0 usagestats_service_26_0 usb_service_26_0 user_service_26_0 vibrator_service_26_0 voiceinteraction_service_26_0 wallpaper_service_26_0 webviewupdate_service_26_0 wifip2p_service_26_0 wifi_service_26_0 wifiaware_service_26_0))
(typeattributeset ephemeral_app_api_service (batteryproperties_service_26_0 accessibility_service_26_0 account_service_26_0 activity_service_26_0 alarm_service_26_0 appops_service_26_0 appwidget_service_26_0 assetatlas_service_26_0 audio_service_26_0 autofill_service_26_0 backup_service_26_0 batterystats_service_26_0 bluetooth_manager_service_26_0 clipboard_service_26_0 IProxyService_service_26_0 companion_device_service_26_0 connectivity_service_26_0 connmetrics_service_26_0 consumer_ir_service_26_0 content_service_26_0 country_detector_service_26_0 deviceidle_service_26_0 device_identifiers_service_26_0 display_service_26_0 font_service_26_0 dreams_service_26_0 dropbox_service_26_0 graphicsstats_service_26_0 hardware_properties_service_26_0 input_method_service_26_0 input_service_26_0 imms_service_26_0 ipsec_service_26_0 jobscheduler_service_26_0 launcherapps_service_26_0 location_service_26_0 media_projection_service_26_0 media_router_service_26_0 media_session_service_26_0 midi_service_26_0 mount_service_26_0 netpolicy_service_26_0 netstats_service_26_0 network_management_service_26_0 notification_service_26_0 package_service_26_0 permission_service_26_0 power_service_26_0 print_service_26_0 procstats_service_26_0 registry_service_26_0 restrictions_service_26_0 rttmanager_service_26_0 search_service_26_0 sensorservice_service_26_0 servicediscovery_service_26_0 settings_service_26_0 statusbar_service_26_0 storagestats_service_26_0 textclassification_service_26_0 textservices_service_26_0 telecom_service_26_0 tv_input_service_26_0 uimode_service_26_0 usagestats_service_26_0 user_service_26_0 vibrator_service_26_0 voiceinteraction_service_26_0 webviewupdate_service_26_0))
(typeattributeset system_api_service (cpuinfo_service_26_0 dbinfo_service_26_0 diskstats_service_26_0 gfxinfo_service_26_0 hdmi_control_service_26_0 lock_settings_service_26_0 meminfo_service_26_0 network_score_service_26_0 oem_lock_service_26_0 persistent_data_block_service_26_0 serial_service_26_0 updatelock_service_26_0 wifiscanner_service_26_0 window_service_26_0))
(typeattributeset service_manager_type (audioserver_service_26_0 batteryproperties_service_26_0 bluetooth_service_26_0 cameraserver_service_26_0 default_android_service_26_0 drmserver_service_26_0 dumpstate_service_26_0 fingerprintd_service_26_0 hal_fingerprint_service_26_0 gatekeeper_service_26_0 gpu_service_26_0 inputflinger_service_26_0 incident_service_26_0 installd_service_26_0 keystore_service_26_0 mediaserver_service_26_0 mediametrics_service_26_0 mediaextractor_service_26_0 mediacodec_service_26_0 mediadrmserver_service_26_0 mediacasserver_service_26_0 netd_service_26_0 nfc_service_26_0 radio_service_26_0 storaged_service_26_0 surfaceflinger_service_26_0 system_app_service_26_0 update_engine_service_26_0 virtual_touchpad_service_26_0 vr_hwc_service_26_0 accessibility_service_26_0 account_service_26_0 activity_service_26_0 alarm_service_26_0 appops_service_26_0 appwidget_service_26_0 assetatlas_service_26_0 audio_service_26_0 autofill_service_26_0 backup_service_26_0 batterystats_service_26_0 battery_service_26_0 bluetooth_manager_service_26_0 cameraproxy_service_26_0 clipboard_service_26_0 contexthub_service_26_0 IProxyService_service_26_0 commontime_management_service_26_0 companion_device_service_26_0 connectivity_service_26_0 connmetrics_service_26_0 consumer_ir_service_26_0 content_service_26_0 country_detector_service_26_0 coverage_service_26_0 cpuinfo_service_26_0 dbinfo_service_26_0 device_policy_service_26_0 deviceidle_service_26_0 device_identifiers_service_26_0 devicestoragemonitor_service_26_0 diskstats_service_26_0 display_service_26_0 font_service_26_0 netd_listener_service_26_0 DockObserver_service_26_0 dreams_service_26_0 dropbox_service_26_0 ethernet_service_26_0 fingerprint_service_26_0 gfxinfo_service_26_0 graphicsstats_service_26_0 hardware_service_26_0 hardware_properties_service_26_0 hdmi_control_service_26_0 input_method_service_26_0 input_service_26_0 imms_service_26_0 ipsec_service_26_0 jobscheduler_service_26_0 launcherapps_service_26_0 location_service_26_0 lock_settings_service_26_0 media_projection_service_26_0 media_router_service_26_0 media_session_service_26_0 meminfo_service_26_0 midi_service_26_0 mount_service_26_0 netpolicy_service_26_0 netstats_service_26_0 network_management_service_26_0 network_score_service_26_0 network_time_update_service_26_0 notification_service_26_0 oem_lock_service_26_0 otadexopt_service_26_0 overlay_service_26_0 package_service_26_0 permission_service_26_0 persistent_data_block_service_26_0 pinner_service_26_0 power_service_26_0 print_service_26_0 processinfo_service_26_0 procstats_service_26_0 recovery_service_26_0 registry_service_26_0 restrictions_service_26_0 rttmanager_service_26_0 samplingprofiler_service_26_0 scheduling_policy_service_26_0 search_service_26_0 sec_key_att_app_id_provider_service_26_0 sensorservice_service_26_0 serial_service_26_0 servicediscovery_service_26_0 settings_service_26_0 shortcut_service_26_0 statusbar_service_26_0 storagestats_service_26_0 task_service_26_0 textclassification_service_26_0 textservices_service_26_0 telecom_service_26_0 trust_service_26_0 tv_input_service_26_0 uimode_service_26_0 updatelock_service_26_0 usagestats_service_26_0 usb_service_26_0 user_service_26_0 vibrator_service_26_0 voiceinteraction_service_26_0 vr_manager_service_26_0 wallpaper_service_26_0 webviewupdate_service_26_0 wifip2p_service_26_0 wifiscanner_service_26_0 wifi_service_26_0 wificond_service_26_0 wifiaware_service_26_0 window_service_26_0))
(typeattributeset hwservice_manager_type (default_android_hwservice_26_0 fwk_display_hwservice_26_0 fwk_scheduler_hwservice_26_0 fwk_sensor_hwservice_26_0 hal_audio_hwservice_26_0 hal_bluetooth_hwservice_26_0 hal_bootctl_hwservice_26_0 hal_camera_hwservice_26_0 hal_configstore_ISurfaceFlingerConfigs_26_0 hal_contexthub_hwservice_26_0 hal_drm_hwservice_26_0 hal_dumpstate_hwservice_26_0 hal_fingerprint_hwservice_26_0 hal_gatekeeper_hwservice_26_0 hal_gnss_hwservice_26_0 hal_graphics_allocator_hwservice_26_0 hal_graphics_composer_hwservice_26_0 hal_graphics_mapper_hwservice_26_0 hal_health_hwservice_26_0 hal_ir_hwservice_26_0 hal_keymaster_hwservice_26_0 hal_light_hwservice_26_0 hal_memtrack_hwservice_26_0 hal_nfc_hwservice_26_0 hal_oemlock_hwservice_26_0 hal_omx_hwservice_26_0 hal_power_hwservice_26_0 hal_renderscript_hwservice_26_0 hal_sensors_hwservice_26_0 hal_telephony_hwservice_26_0 hal_thermal_hwservice_26_0 hal_tv_cec_hwservice_26_0 hal_tv_input_hwservice_26_0 hal_usb_hwservice_26_0 hal_vibrator_hwservice_26_0 hal_vr_hwservice_26_0 hal_weaver_hwservice_26_0 hal_wifi_hwservice_26_0 hal_wifi_supplicant_hwservice_26_0 hidl_allocator_hwservice_26_0 hidl_base_hwservice_26_0 hidl_manager_hwservice_26_0 hidl_memory_hwservice_26_0 hidl_token_hwservice_26_0 system_wifi_keystore_hwservice_26_0))
(typeattributeset same_process_hwservice (hal_graphics_mapper_hwservice_26_0 hal_renderscript_hwservice_26_0))
(typeattributeset coredomain_hwservice (fwk_display_hwservice_26_0 fwk_scheduler_hwservice_26_0 fwk_sensor_hwservice_26_0 hidl_allocator_hwservice_26_0 hidl_manager_hwservice_26_0 hidl_memory_hwservice_26_0 hidl_token_hwservice_26_0 system_wifi_keystore_hwservice_26_0))
(typeattributeset vndservice_manager_type (default_android_vndservice_26_0))
(typeattributeset mlstrustedsubject (bufferhubd_26_0 cppreopts_26_0 drmserver_26_0 dumpstate_26_0 pdx_display_client_endpoint_socket_26_0 pdx_display_manager_endpoint_socket_26_0 pdx_display_screenshot_endpoint_socket_26_0 pdx_display_vsync_endpoint_socket_26_0 pdx_performance_client_endpoint_socket_26_0 pdx_bufferhub_client_endpoint_socket_26_0 hwservicemanager_26_0 init_26_0 installd_26_0 kernel_26_0 keystore_26_0 lmkd_26_0 logd_26_0 mediacodec_26_0 mediadrmserver_26_0 mediaextractor_26_0 mediaserver_26_0 netd_26_0 otapreopt_slot_26_0 performanced_26_0 perfprofd_26_0 racoon_26_0 radio_26_0 runas_26_0 servicemanager_26_0 shell_26_0 su_26_0 tombstoned_26_0 uncrypt_26_0 vold_26_0))
(typeattributeset mlstrustedobject (alarm_device_26_0 ashmem_device_26_0 binder_device_26_0 hwbinder_device_26_0 pmsg_device_26_0 gpu_device_26_0 log_device_26_0 mtp_device_26_0 ptmx_device_26_0 null_device_26_0 random_device_26_0 owntty_device_26_0 zero_device_26_0 fuse_device_26_0 ion_device_26_0 tun_device_26_0 usbaccessory_device_26_0 usb_device_26_0 qtaguid_proc_26_0 selinuxfs_26_0 cgroup_26_0 sysfs_26_0 sysfs_bluetooth_writable_26_0 sysfs_nfc_power_writable_26_0 sysfs_usb_26_0 inotify_26_0 devpts_26_0 fuse_26_0 sdcardfs_26_0 vfat_26_0 debugfs_trace_marker_26_0 functionfs_26_0 anr_data_file_26_0 tombstone_data_file_26_0 apk_tmp_file_26_0 apk_private_tmp_file_26_0 ota_package_file_26_0 user_profile_data_file_26_0 shell_data_file_26_0 heapdump_data_file_26_0 ringtone_file_26_0 media_rw_data_file_26_0 radio_data_file_26_0 perfprofd_data_file_26_0 method_trace_data_file_26_0 system_app_data_file_26_0 cache_file_26_0 cache_backup_file_26_0 cache_recovery_file_26_0 wallpaper_file_26_0 shortcut_manager_icons_26_0 asec_apk_file_26_0 backup_data_file_26_0 app_fuse_file_26_0 dnsproxyd_socket_26_0 fwmarkd_socket_26_0 logd_socket_26_0 logdr_socket_26_0 logdw_socket_26_0 mdnsd_socket_26_0 property_socket_26_0 system_ndebug_socket_26_0 tombstoned_crash_socket_26_0 pdx_display_client_endpoint_socket_26_0 pdx_display_manager_endpoint_socket_26_0 pdx_display_screenshot_endpoint_socket_26_0 pdx_display_vsync_endpoint_socket_26_0 pdx_performance_client_endpoint_socket_26_0 pdx_bufferhub_client_endpoint_socket_26_0))
(typeattributeset netdomain (clatd_26_0 dhcp_26_0 dnsmasq_26_0 drmserver_26_0 dumpstate_26_0 mediadrmserver_26_0 mediaserver_26_0 mtp_26_0 netd_26_0 ppp_26_0 racoon_26_0 radio_26_0 rild_26_0 shell_26_0 su_26_0 update_engine_26_0 hal_wifi_supplicant_default hostapd))
(typeattributeset bluetoothdomain (radio_26_0))
(typeattributeset binderservicedomain (cameraserver_26_0 drmserver_26_0 gatekeeperd_26_0 healthd_26_0 inputflinger_26_0 keystore_26_0 mediadrmserver_26_0 mediaextractor_26_0 mediametrics_26_0 mediaserver_26_0 radio_26_0 virtual_touchpad_26_0 vr_hwc_26_0))
(typeattributeset update_engine_common (update_engine_26_0))
(typeattributeset coredomain (perfprofd_26_0))
(typeattributeset coredomain_socket (adbd_socket_26_0 bluetooth_socket_26_0 dnsproxyd_socket_26_0 dumpstate_socket_26_0 fwmarkd_socket_26_0 lmkd_socket_26_0 logd_socket_26_0 logdr_socket_26_0 logdw_socket_26_0 mdns_socket_26_0 mdnsd_socket_26_0 misc_logd_file_26_0 mtpd_socket_26_0 netd_socket_26_0 property_socket_26_0 racoon_socket_26_0 system_wpa_socket_26_0 system_ndebug_socket_26_0 tombstoned_crash_socket_26_0 tombstoned_intercept_socket_26_0 uncrypt_socket_26_0 vold_socket_26_0 webview_zygote_socket_26_0 zygote_socket_26_0 pdx_display_client_endpoint_socket_26_0 pdx_display_client_channel_socket_26_0 pdx_display_manager_endpoint_socket_26_0 pdx_display_manager_channel_socket_26_0 pdx_display_screenshot_endpoint_socket_26_0 pdx_display_screenshot_channel_socket_26_0 pdx_display_vsync_endpoint_socket_26_0 pdx_display_vsync_channel_socket_26_0 pdx_performance_client_endpoint_socket_26_0 pdx_performance_client_channel_socket_26_0 pdx_bufferhub_client_endpoint_socket_26_0 pdx_bufferhub_client_channel_socket_26_0))
(typeattributeset pdx_endpoint_dir_type (pdx_display_dir_26_0 pdx_performance_dir_26_0 pdx_bufferhub_dir_26_0))
(typeattributeset pdx_endpoint_socket_type (pdx_display_client_endpoint_socket_26_0 pdx_display_manager_endpoint_socket_26_0 pdx_display_screenshot_endpoint_socket_26_0 pdx_display_vsync_endpoint_socket_26_0 pdx_performance_client_endpoint_socket_26_0 pdx_bufferhub_client_endpoint_socket_26_0))
(typeattributeset pdx_channel_socket_type (pdx_display_client_channel_socket_26_0 pdx_display_manager_channel_socket_26_0 pdx_display_screenshot_channel_socket_26_0 pdx_display_vsync_channel_socket_26_0 pdx_performance_client_channel_socket_26_0 pdx_bufferhub_client_channel_socket_26_0))
(typeattributeset pdx_display_client_endpoint_dir_type (pdx_display_dir_26_0))
(typeattributeset pdx_display_client_endpoint_socket_type (pdx_display_client_endpoint_socket_26_0))
(typeattributeset pdx_display_client_channel_socket_type (pdx_display_client_channel_socket_26_0))
(typeattributeset pdx_display_manager_endpoint_dir_type (pdx_display_dir_26_0))
(typeattributeset pdx_display_manager_endpoint_socket_type (pdx_display_manager_endpoint_socket_26_0))
(typeattributeset pdx_display_manager_channel_socket_type (pdx_display_manager_channel_socket_26_0))
(typeattributeset pdx_display_screenshot_endpoint_dir_type (pdx_display_dir_26_0))
(typeattributeset pdx_display_screenshot_endpoint_socket_type (pdx_display_screenshot_endpoint_socket_26_0))
(typeattributeset pdx_display_screenshot_channel_socket_type (pdx_display_screenshot_channel_socket_26_0))
(typeattributeset pdx_display_vsync_endpoint_dir_type (pdx_display_dir_26_0))
(typeattributeset pdx_display_vsync_endpoint_socket_type (pdx_display_vsync_endpoint_socket_26_0))
(typeattributeset pdx_display_vsync_channel_socket_type (pdx_display_vsync_channel_socket_26_0))
(typeattributeset pdx_performance_client_endpoint_dir_type (pdx_performance_dir_26_0))
(typeattributeset pdx_performance_client_endpoint_socket_type (pdx_performance_client_endpoint_socket_26_0))
(typeattributeset pdx_performance_client_channel_socket_type (pdx_performance_client_channel_socket_26_0))
(typeattributeset pdx_performance_client_server_type (performanced_26_0))
(typeattributeset pdx_bufferhub_client_endpoint_dir_type (pdx_bufferhub_dir_26_0))
(typeattributeset pdx_bufferhub_client_endpoint_socket_type (pdx_bufferhub_client_endpoint_socket_26_0))
(typeattributeset pdx_bufferhub_client_channel_socket_type (pdx_bufferhub_client_channel_socket_26_0))
(typeattributeset pdx_bufferhub_client_server_type (bufferhubd_26_0))
(typeattributeset halserverdomain (rild_26_0 hal_audio_default hal_bluetooth_default hal_bootctl_default hal_camera_default hal_configstore_default hal_contexthub_default hal_drm_default hal_dumpstate_default hal_fingerprint_default hal_gatekeeper_default hal_gnss_default hal_graphics_allocator_default hal_graphics_composer_default hal_health_default hal_ir_default hal_keymaster_default hal_light_default hal_memtrack_default hal_nfc_default hal_power_default hal_sensors_default hal_thermal_default hal_tv_cec_default hal_tv_input_default hal_usb_default hal_vibrator_default hal_vr_default hal_wifi_default hal_wifi_offload_default hal_wifi_supplicant_default))
(typeattributeset halclientdomain (bootanim_26_0 bufferhubd_26_0 cameraserver_26_0 dumpstate_26_0 gatekeeperd_26_0 healthd_26_0 mediacodec_26_0 mediadrmserver_26_0 mediaserver_26_0 radio_26_0 update_engine_26_0 update_verifier_26_0 vold_26_0 vr_hwc_26_0 hal_audio_default))
(typeattributeset hal_allocator_client (mediacodec_26_0 mediaserver_26_0 hal_audio_default))
(typeattributeset hal_audio (hal_audio_default))
(typeattributeset hal_audio_server (hal_audio_default))
(typeattributeset hal_bluetooth (hal_bluetooth_default))
(typeattributeset hal_bluetooth_server (hal_bluetooth_default))
(typeattributeset hal_bootctl (hal_bootctl_default))
(typeattributeset hal_bootctl_client (update_engine_26_0 update_verifier_26_0))
(typeattributeset hal_bootctl_server (hal_bootctl_default))
(typeattributeset hal_camera (hal_camera_default))
(typeattributeset hal_camera_client (cameraserver_26_0))
(typeattributeset hal_camera_server (hal_camera_default))
(typeattributeset hal_configstore (hal_configstore_default))
(typeattributeset hal_configstore_server (hal_configstore_default))
(typeattributeset hal_contexthub (hal_contexthub_default))
(typeattributeset hal_contexthub_server (hal_contexthub_default))
(typeattributeset hal_drm (hal_drm_default))
(typeattributeset hal_drm_client (mediadrmserver_26_0))
(typeattributeset hal_drm_server (hal_drm_default))
(typeattributeset hal_dumpstate (hal_dumpstate_default))
(typeattributeset hal_dumpstate_client (dumpstate_26_0))
(typeattributeset hal_dumpstate_server (hal_dumpstate_default))
(typeattributeset hal_fingerprint (hal_fingerprint_default))
(typeattributeset hal_fingerprint_server (hal_fingerprint_default))
(typeattributeset hal_gatekeeper (hal_gatekeeper_default))
(typeattributeset hal_gatekeeper_client (gatekeeperd_26_0))
(typeattributeset hal_gatekeeper_server (hal_gatekeeper_default))
(typeattributeset hal_gnss (hal_gnss_default))
(typeattributeset hal_gnss_server (hal_gnss_default))
(typeattributeset hal_graphics_allocator (hal_graphics_allocator_default))
(typeattributeset hal_graphics_allocator_client (bootanim_26_0 bufferhubd_26_0 cameraserver_26_0 dumpstate_26_0 mediacodec_26_0 vr_hwc_26_0))
(typeattributeset hal_graphics_allocator_server (hal_graphics_allocator_default))
(typeattributeset hal_graphics_composer (hal_graphics_composer_default))
(typeattributeset hal_graphics_composer_client (bootanim_26_0))
(typeattributeset hal_graphics_composer_server (hal_graphics_composer_default))
(typeattributeset hal_health (hal_health_default))
(typeattributeset hal_health_client (healthd_26_0))
(typeattributeset hal_health_server (hal_health_default))
(typeattributeset hal_ir (hal_ir_default))
(typeattributeset hal_ir_server (hal_ir_default))
(typeattributeset hal_keymaster (hal_keymaster_default))
(typeattributeset hal_keymaster_client (vold_26_0))
(typeattributeset hal_keymaster_server (hal_keymaster_default))
(typeattributeset hal_light (hal_light_default))
(typeattributeset hal_light_server (hal_light_default))
(typeattributeset hal_memtrack (hal_memtrack_default))
(typeattributeset hal_memtrack_server (hal_memtrack_default))
(typeattributeset hal_nfc (hal_nfc_default))
(typeattributeset hal_nfc_server (hal_nfc_default))
(typeattributeset hal_power (hal_power_default))
(typeattributeset hal_power_server (hal_power_default))
(typeattributeset hal_sensors (hal_sensors_default))
(typeattributeset hal_sensors_server (hal_sensors_default))
(typeattributeset hal_telephony (rild_26_0))
(typeattributeset hal_telephony_client (radio_26_0))
(typeattributeset hal_telephony_server (rild_26_0))
(typeattributeset hal_thermal (hal_thermal_default))
(typeattributeset hal_thermal_server (hal_thermal_default))
(typeattributeset hal_tv_cec (hal_tv_cec_default))
(typeattributeset hal_tv_cec_server (hal_tv_cec_default))
(typeattributeset hal_tv_input (hal_tv_input_default))
(typeattributeset hal_tv_input_server (hal_tv_input_default))
(typeattributeset hal_usb (hal_usb_default))
(typeattributeset hal_usb_server (hal_usb_default))
(typeattributeset hal_vibrator (hal_vibrator_default))
(typeattributeset hal_vibrator_client (dumpstate_26_0))
(typeattributeset hal_vibrator_server (hal_vibrator_default))
(typeattributeset hal_vr (hal_vr_default))
(typeattributeset hal_vr_server (hal_vr_default))
(typeattributeset hal_wifi (hal_wifi_default))
(typeattributeset hal_wifi_server (hal_wifi_default))
(typeattributeset hal_wifi_offload (hal_wifi_offload_default))
(typeattributeset hal_wifi_offload_server (hal_wifi_offload_default))
(typeattributeset hal_wifi_supplicant (hal_wifi_supplicant_default))
(typeattributeset hal_wifi_supplicant_server (hal_wifi_supplicant_default))
(typeattribute adbd_26_0)
(roletype object_r adbd_26_0)
(typeattribute audioserver_26_0)
(roletype object_r audioserver_26_0)
(typeattribute blkid_26_0)
(roletype object_r blkid_26_0)
(typeattribute blkid_untrusted_26_0)
(roletype object_r blkid_untrusted_26_0)
(typeattribute bluetooth_26_0)
(roletype object_r bluetooth_26_0)
(typeattribute bootanim_26_0)
(roletype object_r bootanim_26_0)
(typeattribute bootanim_exec_26_0)
(roletype object_r bootanim_exec_26_0)
(typeattribute bootstat_26_0)
(roletype object_r bootstat_26_0)
(typeattribute bootstat_exec_26_0)
(roletype object_r bootstat_exec_26_0)
(typeattribute bufferhubd_26_0)
(roletype object_r bufferhubd_26_0)
(typeattribute bufferhubd_exec_26_0)
(roletype object_r bufferhubd_exec_26_0)
(typeattribute cameraserver_26_0)
(roletype object_r cameraserver_26_0)
(typeattribute cameraserver_exec_26_0)
(roletype object_r cameraserver_exec_26_0)
(typeattribute charger_26_0)
(roletype object_r charger_26_0)
(typeattribute clatd_26_0)
(roletype object_r clatd_26_0)
(typeattribute clatd_exec_26_0)
(roletype object_r clatd_exec_26_0)
(typeattribute cppreopts_26_0)
(roletype object_r cppreopts_26_0)
(typeattribute cppreopts_exec_26_0)
(roletype object_r cppreopts_exec_26_0)
(typeattribute crash_dump_26_0)
(roletype object_r crash_dump_26_0)
(typeattribute crash_dump_exec_26_0)
(roletype object_r crash_dump_exec_26_0)
(typeattribute device_26_0)
(roletype object_r device_26_0)
(typeattribute alarm_device_26_0)
(roletype object_r alarm_device_26_0)
(typeattribute ashmem_device_26_0)
(roletype object_r ashmem_device_26_0)
(typeattribute audio_device_26_0)
(roletype object_r audio_device_26_0)
(typeattribute audio_timer_device_26_0)
(roletype object_r audio_timer_device_26_0)
(typeattribute audio_seq_device_26_0)
(roletype object_r audio_seq_device_26_0)
(typeattribute binder_device_26_0)
(roletype object_r binder_device_26_0)
(typeattribute hwbinder_device_26_0)
(roletype object_r hwbinder_device_26_0)
(typeattribute vndbinder_device_26_0)
(roletype object_r vndbinder_device_26_0)
(typeattribute block_device_26_0)
(roletype object_r block_device_26_0)
(typeattribute camera_device_26_0)
(roletype object_r camera_device_26_0)
(typeattribute dm_device_26_0)
(roletype object_r dm_device_26_0)
(typeattribute keychord_device_26_0)
(roletype object_r keychord_device_26_0)
(typeattribute loop_control_device_26_0)
(roletype object_r loop_control_device_26_0)
(typeattribute loop_device_26_0)
(roletype object_r loop_device_26_0)
(typeattribute pmsg_device_26_0)
(roletype object_r pmsg_device_26_0)
(typeattribute radio_device_26_0)
(roletype object_r radio_device_26_0)
(typeattribute ram_device_26_0)
(roletype object_r ram_device_26_0)
(typeattribute rtc_device_26_0)
(roletype object_r rtc_device_26_0)
(typeattribute vold_device_26_0)
(roletype object_r vold_device_26_0)
(typeattribute console_device_26_0)
(roletype object_r console_device_26_0)
(typeattribute cpuctl_device_26_0)
(roletype object_r cpuctl_device_26_0)
(typeattribute fscklogs_26_0)
(roletype object_r fscklogs_26_0)
(typeattribute full_device_26_0)
(roletype object_r full_device_26_0)
(typeattribute gpu_device_26_0)
(roletype object_r gpu_device_26_0)
(typeattribute graphics_device_26_0)
(roletype object_r graphics_device_26_0)
(typeattribute hw_random_device_26_0)
(roletype object_r hw_random_device_26_0)
(typeattribute input_device_26_0)
(roletype object_r input_device_26_0)
(typeattribute kmem_device_26_0)
(roletype object_r kmem_device_26_0)
(typeattribute port_device_26_0)
(roletype object_r port_device_26_0)
(typeattribute log_device_26_0)
(roletype object_r log_device_26_0)
(typeattribute mtd_device_26_0)
(roletype object_r mtd_device_26_0)
(typeattribute mtp_device_26_0)
(roletype object_r mtp_device_26_0)
(typeattribute nfc_device_26_0)
(roletype object_r nfc_device_26_0)
(typeattribute ptmx_device_26_0)
(roletype object_r ptmx_device_26_0)
(typeattribute kmsg_device_26_0)
(roletype object_r kmsg_device_26_0)
(typeattribute null_device_26_0)
(roletype object_r null_device_26_0)
(typeattribute random_device_26_0)
(roletype object_r random_device_26_0)
(typeattribute sensors_device_26_0)
(roletype object_r sensors_device_26_0)
(typeattribute serial_device_26_0)
(roletype object_r serial_device_26_0)
(typeattribute socket_device_26_0)
(roletype object_r socket_device_26_0)
(typeattribute owntty_device_26_0)
(roletype object_r owntty_device_26_0)
(typeattribute tty_device_26_0)
(roletype object_r tty_device_26_0)
(typeattribute video_device_26_0)
(roletype object_r video_device_26_0)
(typeattribute vcs_device_26_0)
(roletype object_r vcs_device_26_0)
(typeattribute zero_device_26_0)
(roletype object_r zero_device_26_0)
(typeattribute fuse_device_26_0)
(roletype object_r fuse_device_26_0)
(typeattribute iio_device_26_0)
(roletype object_r iio_device_26_0)
(typeattribute ion_device_26_0)
(roletype object_r ion_device_26_0)
(typeattribute qtaguid_device_26_0)
(roletype object_r qtaguid_device_26_0)
(typeattribute watchdog_device_26_0)
(roletype object_r watchdog_device_26_0)
(typeattribute uhid_device_26_0)
(roletype object_r uhid_device_26_0)
(typeattribute uio_device_26_0)
(roletype object_r uio_device_26_0)
(typeattribute tun_device_26_0)
(roletype object_r tun_device_26_0)
(typeattribute usbaccessory_device_26_0)
(roletype object_r usbaccessory_device_26_0)
(typeattribute usb_device_26_0)
(roletype object_r usb_device_26_0)
(typeattribute properties_device_26_0)
(roletype object_r properties_device_26_0)
(typeattribute properties_serial_26_0)
(roletype object_r properties_serial_26_0)
(typeattribute i2c_device_26_0)
(roletype object_r i2c_device_26_0)
(typeattribute hci_attach_dev_26_0)
(roletype object_r hci_attach_dev_26_0)
(typeattribute rpmsg_device_26_0)
(roletype object_r rpmsg_device_26_0)
(typeattribute root_block_device_26_0)
(roletype object_r root_block_device_26_0)
(typeattribute frp_block_device_26_0)
(roletype object_r frp_block_device_26_0)
(typeattribute system_block_device_26_0)
(roletype object_r system_block_device_26_0)
(typeattribute recovery_block_device_26_0)
(roletype object_r recovery_block_device_26_0)
(typeattribute boot_block_device_26_0)
(roletype object_r boot_block_device_26_0)
(typeattribute userdata_block_device_26_0)
(roletype object_r userdata_block_device_26_0)
(typeattribute cache_block_device_26_0)
(roletype object_r cache_block_device_26_0)
(typeattribute swap_block_device_26_0)
(roletype object_r swap_block_device_26_0)
(typeattribute metadata_block_device_26_0)
(roletype object_r metadata_block_device_26_0)
(typeattribute misc_block_device_26_0)
(roletype object_r misc_block_device_26_0)
(typeattribute dex2oat_26_0)
(roletype object_r dex2oat_26_0)
(typeattribute dex2oat_exec_26_0)
(roletype object_r dex2oat_exec_26_0)
(typeattribute dhcp_26_0)
(roletype object_r dhcp_26_0)
(typeattribute dhcp_exec_26_0)
(roletype object_r dhcp_exec_26_0)
(typeattribute dnsmasq_26_0)
(roletype object_r dnsmasq_26_0)
(typeattribute dnsmasq_exec_26_0)
(roletype object_r dnsmasq_exec_26_0)
(typeattribute drmserver_26_0)
(roletype object_r drmserver_26_0)
(typeattribute drmserver_exec_26_0)
(roletype object_r drmserver_exec_26_0)
(typeattribute drmserver_socket_26_0)
(roletype object_r drmserver_socket_26_0)
(typeattribute dumpstate_26_0)
(roletype object_r dumpstate_26_0)
(typeattribute dumpstate_exec_26_0)
(roletype object_r dumpstate_exec_26_0)
(typeattribute ephemeral_app_26_0)
(roletype object_r ephemeral_app_26_0)
(typeattribute labeledfs_26_0)
(roletype object_r labeledfs_26_0)
(typeattribute pipefs_26_0)
(roletype object_r pipefs_26_0)
(typeattribute sockfs_26_0)
(roletype object_r sockfs_26_0)
(typeattribute rootfs_26_0)
(roletype object_r rootfs_26_0)
(typeattribute proc_26_0)
(roletype object_r proc_26_0)
(typeattribute proc_security_26_0)
(roletype object_r proc_security_26_0)
(typeattribute proc_drop_caches_26_0)
(roletype object_r proc_drop_caches_26_0)
(typeattribute proc_overcommit_memory_26_0)
(roletype object_r proc_overcommit_memory_26_0)
(typeattribute usermodehelper_26_0)
(roletype object_r usermodehelper_26_0)
(typeattribute qtaguid_proc_26_0)
(roletype object_r qtaguid_proc_26_0)
(typeattribute proc_bluetooth_writable_26_0)
(roletype object_r proc_bluetooth_writable_26_0)
(typeattribute proc_cpuinfo_26_0)
(roletype object_r proc_cpuinfo_26_0)
(typeattribute proc_interrupts_26_0)
(roletype object_r proc_interrupts_26_0)
(typeattribute proc_iomem_26_0)
(roletype object_r proc_iomem_26_0)
(typeattribute proc_meminfo_26_0)
(roletype object_r proc_meminfo_26_0)
(typeattribute proc_misc_26_0)
(roletype object_r proc_misc_26_0)
(typeattribute proc_modules_26_0)
(roletype object_r proc_modules_26_0)
(typeattribute proc_net_26_0)
(roletype object_r proc_net_26_0)
(typeattribute proc_perf_26_0)
(roletype object_r proc_perf_26_0)
(typeattribute proc_stat_26_0)
(roletype object_r proc_stat_26_0)
(typeattribute proc_sysrq_26_0)
(roletype object_r proc_sysrq_26_0)
(typeattribute proc_timer_26_0)
(roletype object_r proc_timer_26_0)
(typeattribute proc_tty_drivers_26_0)
(roletype object_r proc_tty_drivers_26_0)
(typeattribute proc_uid_cputime_showstat_26_0)
(roletype object_r proc_uid_cputime_showstat_26_0)
(typeattribute proc_uid_cputime_removeuid_26_0)
(roletype object_r proc_uid_cputime_removeuid_26_0)
(typeattribute proc_uid_io_stats_26_0)
(roletype object_r proc_uid_io_stats_26_0)
(typeattribute proc_uid_procstat_set_26_0)
(roletype object_r proc_uid_procstat_set_26_0)
(typeattribute proc_zoneinfo_26_0)
(roletype object_r proc_zoneinfo_26_0)
(typeattribute selinuxfs_26_0)
(roletype object_r selinuxfs_26_0)
(typeattribute cgroup_26_0)
(roletype object_r cgroup_26_0)
(typeattribute sysfs_26_0)
(roletype object_r sysfs_26_0)
(typeattribute sysfs_uio_26_0)
(roletype object_r sysfs_uio_26_0)
(typeattribute sysfs_batteryinfo_26_0)
(roletype object_r sysfs_batteryinfo_26_0)
(typeattribute sysfs_bluetooth_writable_26_0)
(roletype object_r sysfs_bluetooth_writable_26_0)
(typeattribute sysfs_leds_26_0)
(roletype object_r sysfs_leds_26_0)
(typeattribute sysfs_hwrandom_26_0)
(roletype object_r sysfs_hwrandom_26_0)
(typeattribute sysfs_nfc_power_writable_26_0)
(roletype object_r sysfs_nfc_power_writable_26_0)
(typeattribute sysfs_wake_lock_26_0)
(roletype object_r sysfs_wake_lock_26_0)
(typeattribute sysfs_mac_address_26_0)
(roletype object_r sysfs_mac_address_26_0)
(typeattribute sysfs_usb_26_0)
(roletype object_r sysfs_usb_26_0)
(typeattribute configfs_26_0)
(roletype object_r configfs_26_0)
(typeattribute sysfs_devices_system_cpu_26_0)
(roletype object_r sysfs_devices_system_cpu_26_0)
(typeattribute sysfs_lowmemorykiller_26_0)
(roletype object_r sysfs_lowmemorykiller_26_0)
(typeattribute sysfs_wlan_fwpath_26_0)
(roletype object_r sysfs_wlan_fwpath_26_0)
(typeattribute sysfs_vibrator_26_0)
(roletype object_r sysfs_vibrator_26_0)
(typeattribute sysfs_thermal_26_0)
(roletype object_r sysfs_thermal_26_0)
(typeattribute sysfs_zram_26_0)
(roletype object_r sysfs_zram_26_0)
(typeattribute sysfs_zram_uevent_26_0)
(roletype object_r sysfs_zram_uevent_26_0)
(typeattribute inotify_26_0)
(roletype object_r inotify_26_0)
(typeattribute devpts_26_0)
(roletype object_r devpts_26_0)
(typeattribute tmpfs_26_0)
(roletype object_r tmpfs_26_0)
(typeattribute shm_26_0)
(roletype object_r shm_26_0)
(typeattribute mqueue_26_0)
(roletype object_r mqueue_26_0)
(typeattribute fuse_26_0)
(roletype object_r fuse_26_0)
(typeattribute sdcardfs_26_0)
(roletype object_r sdcardfs_26_0)
(typeattribute vfat_26_0)
(roletype object_r vfat_26_0)
(typeattribute debugfs_26_0)
(roletype object_r debugfs_26_0)
(typeattribute debugfs_mmc_26_0)
(roletype object_r debugfs_mmc_26_0)
(typeattribute debugfs_trace_marker_26_0)
(roletype object_r debugfs_trace_marker_26_0)
(typeattribute debugfs_tracing_26_0)
(roletype object_r debugfs_tracing_26_0)
(typeattribute debugfs_tracing_instances_26_0)
(roletype object_r debugfs_tracing_instances_26_0)
(typeattribute debugfs_wifi_tracing_26_0)
(roletype object_r debugfs_wifi_tracing_26_0)
(typeattribute tracing_shell_writable_26_0)
(roletype object_r tracing_shell_writable_26_0)
(typeattribute tracing_shell_writable_debug_26_0)
(roletype object_r tracing_shell_writable_debug_26_0)
(typeattribute pstorefs_26_0)
(roletype object_r pstorefs_26_0)
(typeattribute functionfs_26_0)
(roletype object_r functionfs_26_0)
(typeattribute oemfs_26_0)
(roletype object_r oemfs_26_0)
(typeattribute usbfs_26_0)
(roletype object_r usbfs_26_0)
(typeattribute binfmt_miscfs_26_0)
(roletype object_r binfmt_miscfs_26_0)
(typeattribute app_fusefs_26_0)
(roletype object_r app_fusefs_26_0)
(typeattribute unlabeled_26_0)
(roletype object_r unlabeled_26_0)
(typeattribute system_file_26_0)
(roletype object_r system_file_26_0)
(typeattribute vendor_hal_file_26_0)
(roletype object_r vendor_hal_file_26_0)
(typeattribute vendor_file_26_0)
(roletype object_r vendor_file_26_0)
(typeattribute vendor_app_file_26_0)
(roletype object_r vendor_app_file_26_0)
(typeattribute vendor_configs_file_26_0)
(roletype object_r vendor_configs_file_26_0)
(typeattribute same_process_hal_file_26_0)
(roletype object_r same_process_hal_file_26_0)
(typeattribute vndk_sp_file_26_0)
(roletype object_r vndk_sp_file_26_0)
(typeattribute vendor_framework_file_26_0)
(roletype object_r vendor_framework_file_26_0)
(typeattribute vendor_overlay_file_26_0)
(roletype object_r vendor_overlay_file_26_0)
(typeattribute runtime_event_log_tags_file_26_0)
(roletype object_r runtime_event_log_tags_file_26_0)
(typeattribute logcat_exec_26_0)
(roletype object_r logcat_exec_26_0)
(typeattribute coredump_file_26_0)
(roletype object_r coredump_file_26_0)
(typeattribute system_data_file_26_0)
(roletype object_r system_data_file_26_0)
(typeattribute unencrypted_data_file_26_0)
(roletype object_r unencrypted_data_file_26_0)
(typeattribute install_data_file_26_0)
(roletype object_r install_data_file_26_0)
(typeattribute drm_data_file_26_0)
(roletype object_r drm_data_file_26_0)
(typeattribute adb_data_file_26_0)
(roletype object_r adb_data_file_26_0)
(typeattribute anr_data_file_26_0)
(roletype object_r anr_data_file_26_0)
(typeattribute tombstone_data_file_26_0)
(roletype object_r tombstone_data_file_26_0)
(typeattribute apk_data_file_26_0)
(roletype object_r apk_data_file_26_0)
(typeattribute apk_tmp_file_26_0)
(roletype object_r apk_tmp_file_26_0)
(typeattribute apk_private_data_file_26_0)
(roletype object_r apk_private_data_file_26_0)
(typeattribute apk_private_tmp_file_26_0)
(roletype object_r apk_private_tmp_file_26_0)
(typeattribute dalvikcache_data_file_26_0)
(roletype object_r dalvikcache_data_file_26_0)
(typeattribute ota_data_file_26_0)
(roletype object_r ota_data_file_26_0)
(typeattribute ota_package_file_26_0)
(roletype object_r ota_package_file_26_0)
(typeattribute user_profile_data_file_26_0)
(roletype object_r user_profile_data_file_26_0)
(typeattribute profman_dump_data_file_26_0)
(roletype object_r profman_dump_data_file_26_0)
(typeattribute resourcecache_data_file_26_0)
(roletype object_r resourcecache_data_file_26_0)
(typeattribute shell_data_file_26_0)
(roletype object_r shell_data_file_26_0)
(typeattribute property_data_file_26_0)
(roletype object_r property_data_file_26_0)
(typeattribute bootchart_data_file_26_0)
(roletype object_r bootchart_data_file_26_0)
(typeattribute heapdump_data_file_26_0)
(roletype object_r heapdump_data_file_26_0)
(typeattribute nativetest_data_file_26_0)
(roletype object_r nativetest_data_file_26_0)
(typeattribute ringtone_file_26_0)
(roletype object_r ringtone_file_26_0)
(typeattribute preloads_data_file_26_0)
(roletype object_r preloads_data_file_26_0)
(typeattribute preloads_media_file_26_0)
(roletype object_r preloads_media_file_26_0)
(typeattribute dhcp_data_file_26_0)
(roletype object_r dhcp_data_file_26_0)
(typeattribute mnt_media_rw_file_26_0)
(roletype object_r mnt_media_rw_file_26_0)
(typeattribute mnt_user_file_26_0)
(roletype object_r mnt_user_file_26_0)
(typeattribute mnt_expand_file_26_0)
(roletype object_r mnt_expand_file_26_0)
(typeattribute storage_file_26_0)
(roletype object_r storage_file_26_0)
(typeattribute mnt_media_rw_stub_file_26_0)
(roletype object_r mnt_media_rw_stub_file_26_0)
(typeattribute storage_stub_file_26_0)
(roletype object_r storage_stub_file_26_0)
(typeattribute postinstall_mnt_dir_26_0)
(roletype object_r postinstall_mnt_dir_26_0)
(typeattribute postinstall_file_26_0)
(roletype object_r postinstall_file_26_0)
(typeattribute adb_keys_file_26_0)
(roletype object_r adb_keys_file_26_0)
(typeattribute audio_data_file_26_0)
(roletype object_r audio_data_file_26_0)
(typeattribute audiohal_data_file_26_0)
(roletype object_r audiohal_data_file_26_0)
(typeattribute audioserver_data_file_26_0)
(roletype object_r audioserver_data_file_26_0)
(typeattribute bluetooth_data_file_26_0)
(roletype object_r bluetooth_data_file_26_0)
(typeattribute bluetooth_logs_data_file_26_0)
(roletype object_r bluetooth_logs_data_file_26_0)
(typeattribute bootstat_data_file_26_0)
(roletype object_r bootstat_data_file_26_0)
(typeattribute boottrace_data_file_26_0)
(roletype object_r boottrace_data_file_26_0)
(typeattribute camera_data_file_26_0)
(roletype object_r camera_data_file_26_0)
(typeattribute gatekeeper_data_file_26_0)
(roletype object_r gatekeeper_data_file_26_0)
(typeattribute incident_data_file_26_0)
(roletype object_r incident_data_file_26_0)
(typeattribute keychain_data_file_26_0)
(roletype object_r keychain_data_file_26_0)
(typeattribute keystore_data_file_26_0)
(roletype object_r keystore_data_file_26_0)
(typeattribute media_data_file_26_0)
(roletype object_r media_data_file_26_0)
(typeattribute media_rw_data_file_26_0)
(roletype object_r media_rw_data_file_26_0)
(typeattribute misc_user_data_file_26_0)
(roletype object_r misc_user_data_file_26_0)
(typeattribute net_data_file_26_0)
(roletype object_r net_data_file_26_0)
(typeattribute nfc_data_file_26_0)
(roletype object_r nfc_data_file_26_0)
(typeattribute radio_data_file_26_0)
(roletype object_r radio_data_file_26_0)
(typeattribute reboot_data_file_26_0)
(roletype object_r reboot_data_file_26_0)
(typeattribute recovery_data_file_26_0)
(roletype object_r recovery_data_file_26_0)
(typeattribute shared_relro_file_26_0)
(roletype object_r shared_relro_file_26_0)
(typeattribute systemkeys_data_file_26_0)
(roletype object_r systemkeys_data_file_26_0)
(typeattribute textclassifier_data_file_26_0)
(roletype object_r textclassifier_data_file_26_0)
(typeattribute vpn_data_file_26_0)
(roletype object_r vpn_data_file_26_0)
(typeattribute wifi_data_file_26_0)
(roletype object_r wifi_data_file_26_0)
(typeattribute zoneinfo_data_file_26_0)
(roletype object_r zoneinfo_data_file_26_0)
(typeattribute vold_data_file_26_0)
(roletype object_r vold_data_file_26_0)
(typeattribute perfprofd_data_file_26_0)
(roletype object_r perfprofd_data_file_26_0)
(typeattribute tee_data_file_26_0)
(roletype object_r tee_data_file_26_0)
(typeattribute update_engine_data_file_26_0)
(roletype object_r update_engine_data_file_26_0)
(typeattribute method_trace_data_file_26_0)
(roletype object_r method_trace_data_file_26_0)
(typeattribute app_data_file_26_0)
(roletype object_r app_data_file_26_0)
(typeattribute system_app_data_file_26_0)
(roletype object_r system_app_data_file_26_0)
(typeattribute cache_file_26_0)
(roletype object_r cache_file_26_0)
(typeattribute cache_backup_file_26_0)
(roletype object_r cache_backup_file_26_0)
(typeattribute cache_private_backup_file_26_0)
(roletype object_r cache_private_backup_file_26_0)
(typeattribute cache_recovery_file_26_0)
(roletype object_r cache_recovery_file_26_0)
(typeattribute efs_file_26_0)
(roletype object_r efs_file_26_0)
(typeattribute wallpaper_file_26_0)
(roletype object_r wallpaper_file_26_0)
(typeattribute shortcut_manager_icons_26_0)
(roletype object_r shortcut_manager_icons_26_0)
(typeattribute icon_file_26_0)
(roletype object_r icon_file_26_0)
(typeattribute asec_apk_file_26_0)
(roletype object_r asec_apk_file_26_0)
(typeattribute asec_public_file_26_0)
(roletype object_r asec_public_file_26_0)
(typeattribute asec_image_file_26_0)
(roletype object_r asec_image_file_26_0)
(typeattribute backup_data_file_26_0)
(roletype object_r backup_data_file_26_0)
(typeattribute bluetooth_efs_file_26_0)
(roletype object_r bluetooth_efs_file_26_0)
(typeattribute fingerprintd_data_file_26_0)
(roletype object_r fingerprintd_data_file_26_0)
(typeattribute app_fuse_file_26_0)
(roletype object_r app_fuse_file_26_0)
(typeattribute adbd_socket_26_0)
(roletype object_r adbd_socket_26_0)
(typeattribute bluetooth_socket_26_0)
(roletype object_r bluetooth_socket_26_0)
(typeattribute dnsproxyd_socket_26_0)
(roletype object_r dnsproxyd_socket_26_0)
(typeattribute dumpstate_socket_26_0)
(roletype object_r dumpstate_socket_26_0)
(typeattribute fwmarkd_socket_26_0)
(roletype object_r fwmarkd_socket_26_0)
(typeattribute lmkd_socket_26_0)
(roletype object_r lmkd_socket_26_0)
(typeattribute logd_socket_26_0)
(roletype object_r logd_socket_26_0)
(typeattribute logdr_socket_26_0)
(roletype object_r logdr_socket_26_0)
(typeattribute logdw_socket_26_0)
(roletype object_r logdw_socket_26_0)
(typeattribute mdns_socket_26_0)
(roletype object_r mdns_socket_26_0)
(typeattribute mdnsd_socket_26_0)
(roletype object_r mdnsd_socket_26_0)
(typeattribute misc_logd_file_26_0)
(roletype object_r misc_logd_file_26_0)
(typeattribute mtpd_socket_26_0)
(roletype object_r mtpd_socket_26_0)
(typeattribute netd_socket_26_0)
(roletype object_r netd_socket_26_0)
(typeattribute property_socket_26_0)
(roletype object_r property_socket_26_0)
(typeattribute racoon_socket_26_0)
(roletype object_r racoon_socket_26_0)
(typeattribute rild_socket_26_0)
(roletype object_r rild_socket_26_0)
(typeattribute rild_debug_socket_26_0)
(roletype object_r rild_debug_socket_26_0)
(typeattribute system_wpa_socket_26_0)
(roletype object_r system_wpa_socket_26_0)
(typeattribute system_ndebug_socket_26_0)
(roletype object_r system_ndebug_socket_26_0)
(typeattribute tombstoned_crash_socket_26_0)
(roletype object_r tombstoned_crash_socket_26_0)
(typeattribute tombstoned_intercept_socket_26_0)
(roletype object_r tombstoned_intercept_socket_26_0)
(typeattribute uncrypt_socket_26_0)
(roletype object_r uncrypt_socket_26_0)
(typeattribute vold_socket_26_0)
(roletype object_r vold_socket_26_0)
(typeattribute webview_zygote_socket_26_0)
(roletype object_r webview_zygote_socket_26_0)
(typeattribute wpa_socket_26_0)
(roletype object_r wpa_socket_26_0)
(typeattribute zygote_socket_26_0)
(roletype object_r zygote_socket_26_0)
(typeattribute gps_control_26_0)
(roletype object_r gps_control_26_0)
(typeattribute pdx_display_dir_26_0)
(roletype object_r pdx_display_dir_26_0)
(typeattribute pdx_performance_dir_26_0)
(roletype object_r pdx_performance_dir_26_0)
(typeattribute pdx_bufferhub_dir_26_0)
(roletype object_r pdx_bufferhub_dir_26_0)
(typeattribute pdx_display_client_endpoint_socket_26_0)
(roletype object_r pdx_display_client_endpoint_socket_26_0)
(typeattribute pdx_display_client_channel_socket_26_0)
(roletype object_r pdx_display_client_channel_socket_26_0)
(typeattribute pdx_display_manager_endpoint_socket_26_0)
(roletype object_r pdx_display_manager_endpoint_socket_26_0)
(typeattribute pdx_display_manager_channel_socket_26_0)
(roletype object_r pdx_display_manager_channel_socket_26_0)
(typeattribute pdx_display_screenshot_endpoint_socket_26_0)
(roletype object_r pdx_display_screenshot_endpoint_socket_26_0)
(typeattribute pdx_display_screenshot_channel_socket_26_0)
(roletype object_r pdx_display_screenshot_channel_socket_26_0)
(typeattribute pdx_display_vsync_endpoint_socket_26_0)
(roletype object_r pdx_display_vsync_endpoint_socket_26_0)
(typeattribute pdx_display_vsync_channel_socket_26_0)
(roletype object_r pdx_display_vsync_channel_socket_26_0)
(typeattribute pdx_performance_client_endpoint_socket_26_0)
(roletype object_r pdx_performance_client_endpoint_socket_26_0)
(typeattribute pdx_performance_client_channel_socket_26_0)
(roletype object_r pdx_performance_client_channel_socket_26_0)
(typeattribute pdx_bufferhub_client_endpoint_socket_26_0)
(roletype object_r pdx_bufferhub_client_endpoint_socket_26_0)
(typeattribute pdx_bufferhub_client_channel_socket_26_0)
(roletype object_r pdx_bufferhub_client_channel_socket_26_0)
(typeattribute file_contexts_file_26_0)
(roletype object_r file_contexts_file_26_0)
(typeattribute mac_perms_file_26_0)
(roletype object_r mac_perms_file_26_0)
(typeattribute property_contexts_file_26_0)
(roletype object_r property_contexts_file_26_0)
(typeattribute seapp_contexts_file_26_0)
(roletype object_r seapp_contexts_file_26_0)
(typeattribute sepolicy_file_26_0)
(roletype object_r sepolicy_file_26_0)
(typeattribute service_contexts_file_26_0)
(roletype object_r service_contexts_file_26_0)
(typeattribute hwservice_contexts_file_26_0)
(roletype object_r hwservice_contexts_file_26_0)
(typeattribute vndservice_contexts_file_26_0)
(roletype object_r vndservice_contexts_file_26_0)
(typeattribute fingerprintd_26_0)
(roletype object_r fingerprintd_26_0)
(typeattribute fingerprintd_exec_26_0)
(roletype object_r fingerprintd_exec_26_0)
(typeattribute fsck_26_0)
(roletype object_r fsck_26_0)
(typeattribute fsck_exec_26_0)
(roletype object_r fsck_exec_26_0)
(typeattribute fsck_untrusted_26_0)
(roletype object_r fsck_untrusted_26_0)
(typeattribute gatekeeperd_26_0)
(roletype object_r gatekeeperd_26_0)
(typeattribute gatekeeperd_exec_26_0)
(roletype object_r gatekeeperd_exec_26_0)
(typeattribute healthd_26_0)
(roletype object_r healthd_26_0)
(typeattribute healthd_exec_26_0)
(roletype object_r healthd_exec_26_0)
(typeattribute default_android_hwservice_26_0)
(roletype object_r default_android_hwservice_26_0)
(typeattribute fwk_display_hwservice_26_0)
(roletype object_r fwk_display_hwservice_26_0)
(typeattribute fwk_scheduler_hwservice_26_0)
(roletype object_r fwk_scheduler_hwservice_26_0)
(typeattribute fwk_sensor_hwservice_26_0)
(roletype object_r fwk_sensor_hwservice_26_0)
(typeattribute hal_audio_hwservice_26_0)
(roletype object_r hal_audio_hwservice_26_0)
(typeattribute hal_bluetooth_hwservice_26_0)
(roletype object_r hal_bluetooth_hwservice_26_0)
(typeattribute hal_bootctl_hwservice_26_0)
(roletype object_r hal_bootctl_hwservice_26_0)
(typeattribute hal_camera_hwservice_26_0)
(roletype object_r hal_camera_hwservice_26_0)
(typeattribute hal_configstore_ISurfaceFlingerConfigs_26_0)
(roletype object_r hal_configstore_ISurfaceFlingerConfigs_26_0)
(typeattribute hal_contexthub_hwservice_26_0)
(roletype object_r hal_contexthub_hwservice_26_0)
(typeattribute hal_drm_hwservice_26_0)
(roletype object_r hal_drm_hwservice_26_0)
(typeattribute hal_dumpstate_hwservice_26_0)
(roletype object_r hal_dumpstate_hwservice_26_0)
(typeattribute hal_fingerprint_hwservice_26_0)
(roletype object_r hal_fingerprint_hwservice_26_0)
(typeattribute hal_gatekeeper_hwservice_26_0)
(roletype object_r hal_gatekeeper_hwservice_26_0)
(typeattribute hal_gnss_hwservice_26_0)
(roletype object_r hal_gnss_hwservice_26_0)
(typeattribute hal_graphics_allocator_hwservice_26_0)
(roletype object_r hal_graphics_allocator_hwservice_26_0)
(typeattribute hal_graphics_composer_hwservice_26_0)
(roletype object_r hal_graphics_composer_hwservice_26_0)
(typeattribute hal_graphics_mapper_hwservice_26_0)
(roletype object_r hal_graphics_mapper_hwservice_26_0)
(typeattribute hal_health_hwservice_26_0)
(roletype object_r hal_health_hwservice_26_0)
(typeattribute hal_ir_hwservice_26_0)
(roletype object_r hal_ir_hwservice_26_0)
(typeattribute hal_keymaster_hwservice_26_0)
(roletype object_r hal_keymaster_hwservice_26_0)
(typeattribute hal_light_hwservice_26_0)
(roletype object_r hal_light_hwservice_26_0)
(typeattribute hal_memtrack_hwservice_26_0)
(roletype object_r hal_memtrack_hwservice_26_0)
(typeattribute hal_nfc_hwservice_26_0)
(roletype object_r hal_nfc_hwservice_26_0)
(typeattribute hal_oemlock_hwservice_26_0)
(roletype object_r hal_oemlock_hwservice_26_0)
(typeattribute hal_omx_hwservice_26_0)
(roletype object_r hal_omx_hwservice_26_0)
(typeattribute hal_power_hwservice_26_0)
(roletype object_r hal_power_hwservice_26_0)
(typeattribute hal_renderscript_hwservice_26_0)
(roletype object_r hal_renderscript_hwservice_26_0)
(typeattribute hal_sensors_hwservice_26_0)
(roletype object_r hal_sensors_hwservice_26_0)
(typeattribute hal_telephony_hwservice_26_0)
(roletype object_r hal_telephony_hwservice_26_0)
(typeattribute hal_thermal_hwservice_26_0)
(roletype object_r hal_thermal_hwservice_26_0)
(typeattribute hal_tv_cec_hwservice_26_0)
(roletype object_r hal_tv_cec_hwservice_26_0)
(typeattribute hal_tv_input_hwservice_26_0)
(roletype object_r hal_tv_input_hwservice_26_0)
(typeattribute hal_usb_hwservice_26_0)
(roletype object_r hal_usb_hwservice_26_0)
(typeattribute hal_vibrator_hwservice_26_0)
(roletype object_r hal_vibrator_hwservice_26_0)
(typeattribute hal_vr_hwservice_26_0)
(roletype object_r hal_vr_hwservice_26_0)
(typeattribute hal_weaver_hwservice_26_0)
(roletype object_r hal_weaver_hwservice_26_0)
(typeattribute hal_wifi_hwservice_26_0)
(roletype object_r hal_wifi_hwservice_26_0)
(typeattribute hal_wifi_supplicant_hwservice_26_0)
(roletype object_r hal_wifi_supplicant_hwservice_26_0)
(typeattribute hidl_allocator_hwservice_26_0)
(roletype object_r hidl_allocator_hwservice_26_0)
(typeattribute hidl_base_hwservice_26_0)
(roletype object_r hidl_base_hwservice_26_0)
(typeattribute hidl_manager_hwservice_26_0)
(roletype object_r hidl_manager_hwservice_26_0)
(typeattribute hidl_memory_hwservice_26_0)
(roletype object_r hidl_memory_hwservice_26_0)
(typeattribute hidl_token_hwservice_26_0)
(roletype object_r hidl_token_hwservice_26_0)
(typeattribute system_wifi_keystore_hwservice_26_0)
(roletype object_r system_wifi_keystore_hwservice_26_0)
(typeattribute hwservicemanager_26_0)
(roletype object_r hwservicemanager_26_0)
(typeattribute hwservicemanager_exec_26_0)
(roletype object_r hwservicemanager_exec_26_0)
(typeattribute idmap_26_0)
(roletype object_r idmap_26_0)
(typeattribute idmap_exec_26_0)
(roletype object_r idmap_exec_26_0)
(typeattribute incident_26_0)
(roletype object_r incident_26_0)
(typeattribute incidentd_26_0)
(roletype object_r incidentd_26_0)
(typeattribute init_26_0)
(roletype object_r init_26_0)
(typeattribute init_exec_26_0)
(roletype object_r init_exec_26_0)
(typeattribute inputflinger_26_0)
(roletype object_r inputflinger_26_0)
(typeattribute inputflinger_exec_26_0)
(roletype object_r inputflinger_exec_26_0)
(typeattribute install_recovery_26_0)
(roletype object_r install_recovery_26_0)
(typeattribute install_recovery_exec_26_0)
(roletype object_r install_recovery_exec_26_0)
(typeattribute installd_26_0)
(roletype object_r installd_26_0)
(typeattribute installd_exec_26_0)
(roletype object_r installd_exec_26_0)
(typeattribute isolated_app_26_0)
(roletype object_r isolated_app_26_0)
(typeattribute kernel_26_0)
(roletype object_r kernel_26_0)
(typeattribute keystore_26_0)
(roletype object_r keystore_26_0)
(typeattribute keystore_exec_26_0)
(roletype object_r keystore_exec_26_0)
(typeattribute lmkd_26_0)
(roletype object_r lmkd_26_0)
(typeattribute lmkd_exec_26_0)
(roletype object_r lmkd_exec_26_0)
(typeattribute logd_26_0)
(roletype object_r logd_26_0)
(typeattribute logd_exec_26_0)
(roletype object_r logd_exec_26_0)
(typeattribute logpersist_26_0)
(roletype object_r logpersist_26_0)
(typeattribute mdnsd_26_0)
(roletype object_r mdnsd_26_0)
(typeattribute mediacodec_26_0)
(roletype object_r mediacodec_26_0)
(typeattribute mediacodec_exec_26_0)
(roletype object_r mediacodec_exec_26_0)
(typeattribute mediadrmserver_26_0)
(roletype object_r mediadrmserver_26_0)
(typeattribute mediadrmserver_exec_26_0)
(roletype object_r mediadrmserver_exec_26_0)
(typeattribute mediaextractor_26_0)
(roletype object_r mediaextractor_26_0)
(typeattribute mediaextractor_exec_26_0)
(roletype object_r mediaextractor_exec_26_0)
(typeattribute mediametrics_26_0)
(roletype object_r mediametrics_26_0)
(typeattribute mediametrics_exec_26_0)
(roletype object_r mediametrics_exec_26_0)
(typeattribute mediaserver_26_0)
(roletype object_r mediaserver_26_0)
(typeattribute mediaserver_exec_26_0)
(roletype object_r mediaserver_exec_26_0)
(typeattribute modprobe_26_0)
(roletype object_r modprobe_26_0)
(typeattribute mtp_26_0)
(roletype object_r mtp_26_0)
(typeattribute mtp_exec_26_0)
(roletype object_r mtp_exec_26_0)
(typeattribute node_26_0)
(roletype object_r node_26_0)
(typeattribute netif_26_0)
(roletype object_r netif_26_0)
(typeattribute port_26_0)
(roletype object_r port_26_0)
(typeattribute netd_26_0)
(roletype object_r netd_26_0)
(typeattribute netd_exec_26_0)
(roletype object_r netd_exec_26_0)
(typeattribute netutils_wrapper_26_0)
(roletype object_r netutils_wrapper_26_0)
(typeattribute netutils_wrapper_exec_26_0)
(roletype object_r netutils_wrapper_exec_26_0)
(typeattribute nfc_26_0)
(roletype object_r nfc_26_0)
(typeattribute otapreopt_chroot_26_0)
(roletype object_r otapreopt_chroot_26_0)
(typeattribute otapreopt_chroot_exec_26_0)
(roletype object_r otapreopt_chroot_exec_26_0)
(typeattribute otapreopt_slot_26_0)
(roletype object_r otapreopt_slot_26_0)
(typeattribute otapreopt_slot_exec_26_0)
(roletype object_r otapreopt_slot_exec_26_0)
(typeattribute performanced_26_0)
(roletype object_r performanced_26_0)
(typeattribute performanced_exec_26_0)
(roletype object_r performanced_exec_26_0)
(typeattribute perfprofd_26_0)
(roletype object_r perfprofd_26_0)
(typeattribute perfprofd_exec_26_0)
(roletype object_r perfprofd_exec_26_0)
(typeattribute platform_app_26_0)
(roletype object_r platform_app_26_0)
(typeattribute postinstall_26_0)
(roletype object_r postinstall_26_0)
(typeattribute postinstall_dexopt_26_0)
(roletype object_r postinstall_dexopt_26_0)
(typeattribute ppp_26_0)
(roletype object_r ppp_26_0)
(typeattribute ppp_device_26_0)
(roletype object_r ppp_device_26_0)
(typeattribute ppp_exec_26_0)
(roletype object_r ppp_exec_26_0)
(typeattribute preopt2cachename_26_0)
(roletype object_r preopt2cachename_26_0)
(typeattribute preopt2cachename_exec_26_0)
(roletype object_r preopt2cachename_exec_26_0)
(typeattribute priv_app_26_0)
(roletype object_r priv_app_26_0)
(typeattribute profman_26_0)
(roletype object_r profman_26_0)
(typeattribute profman_exec_26_0)
(roletype object_r profman_exec_26_0)
(typeattribute asan_reboot_prop_26_0)
(roletype object_r asan_reboot_prop_26_0)
(typeattribute audio_prop_26_0)
(roletype object_r audio_prop_26_0)
(typeattribute boottime_prop_26_0)
(roletype object_r boottime_prop_26_0)
(typeattribute bluetooth_prop_26_0)
(roletype object_r bluetooth_prop_26_0)
(typeattribute config_prop_26_0)
(roletype object_r config_prop_26_0)
(typeattribute cppreopt_prop_26_0)
(roletype object_r cppreopt_prop_26_0)
(typeattribute ctl_bootanim_prop_26_0)
(roletype object_r ctl_bootanim_prop_26_0)
(typeattribute ctl_bugreport_prop_26_0)
(roletype object_r ctl_bugreport_prop_26_0)
(typeattribute ctl_console_prop_26_0)
(roletype object_r ctl_console_prop_26_0)
(typeattribute ctl_default_prop_26_0)
(roletype object_r ctl_default_prop_26_0)
(typeattribute ctl_dumpstate_prop_26_0)
(roletype object_r ctl_dumpstate_prop_26_0)
(typeattribute ctl_fuse_prop_26_0)
(roletype object_r ctl_fuse_prop_26_0)
(typeattribute ctl_mdnsd_prop_26_0)
(roletype object_r ctl_mdnsd_prop_26_0)
(typeattribute ctl_rildaemon_prop_26_0)
(roletype object_r ctl_rildaemon_prop_26_0)
(typeattribute dalvik_prop_26_0)
(roletype object_r dalvik_prop_26_0)
(typeattribute debuggerd_prop_26_0)
(roletype object_r debuggerd_prop_26_0)
(typeattribute debug_prop_26_0)
(roletype object_r debug_prop_26_0)
(typeattribute default_prop_26_0)
(roletype object_r default_prop_26_0)
(typeattribute device_logging_prop_26_0)
(roletype object_r device_logging_prop_26_0)
(typeattribute dhcp_prop_26_0)
(roletype object_r dhcp_prop_26_0)
(typeattribute dumpstate_options_prop_26_0)
(roletype object_r dumpstate_options_prop_26_0)
(typeattribute dumpstate_prop_26_0)
(roletype object_r dumpstate_prop_26_0)
(typeattribute ffs_prop_26_0)
(roletype object_r ffs_prop_26_0)
(typeattribute fingerprint_prop_26_0)
(roletype object_r fingerprint_prop_26_0)
(typeattribute firstboot_prop_26_0)
(roletype object_r firstboot_prop_26_0)
(typeattribute hwservicemanager_prop_26_0)
(roletype object_r hwservicemanager_prop_26_0)
(typeattribute logd_prop_26_0)
(roletype object_r logd_prop_26_0)
(typeattribute logpersistd_logging_prop_26_0)
(roletype object_r logpersistd_logging_prop_26_0)
(typeattribute log_prop_26_0)
(roletype object_r log_prop_26_0)
(typeattribute log_tag_prop_26_0)
(roletype object_r log_tag_prop_26_0)
(typeattribute mmc_prop_26_0)
(roletype object_r mmc_prop_26_0)
(typeattribute net_dns_prop_26_0)
(roletype object_r net_dns_prop_26_0)
(typeattribute net_radio_prop_26_0)
(roletype object_r net_radio_prop_26_0)
(typeattribute nfc_prop_26_0)
(roletype object_r nfc_prop_26_0)
(typeattribute overlay_prop_26_0)
(roletype object_r overlay_prop_26_0)
(typeattribute pan_result_prop_26_0)
(roletype object_r pan_result_prop_26_0)
(typeattribute persist_debug_prop_26_0)
(roletype object_r persist_debug_prop_26_0)
(typeattribute persistent_properties_ready_prop_26_0)
(roletype object_r persistent_properties_ready_prop_26_0)
(typeattribute powerctl_prop_26_0)
(roletype object_r powerctl_prop_26_0)
(typeattribute radio_prop_26_0)
(roletype object_r radio_prop_26_0)
(typeattribute restorecon_prop_26_0)
(roletype object_r restorecon_prop_26_0)
(typeattribute safemode_prop_26_0)
(roletype object_r safemode_prop_26_0)
(typeattribute serialno_prop_26_0)
(roletype object_r serialno_prop_26_0)
(typeattribute shell_prop_26_0)
(roletype object_r shell_prop_26_0)
(typeattribute system_prop_26_0)
(roletype object_r system_prop_26_0)
(typeattribute system_radio_prop_26_0)
(roletype object_r system_radio_prop_26_0)
(typeattribute vold_prop_26_0)
(roletype object_r vold_prop_26_0)
(typeattribute wifi_log_prop_26_0)
(roletype object_r wifi_log_prop_26_0)
(typeattribute wifi_prop_26_0)
(roletype object_r wifi_prop_26_0)
(typeattribute racoon_26_0)
(roletype object_r racoon_26_0)
(typeattribute racoon_exec_26_0)
(roletype object_r racoon_exec_26_0)
(typeattribute radio_26_0)
(roletype object_r radio_26_0)
(typeattribute recovery_26_0)
(roletype object_r recovery_26_0)
(typeattribute recovery_persist_26_0)
(roletype object_r recovery_persist_26_0)
(typeattribute recovery_persist_exec_26_0)
(roletype object_r recovery_persist_exec_26_0)
(typeattribute recovery_refresh_26_0)
(roletype object_r recovery_refresh_26_0)
(typeattribute recovery_refresh_exec_26_0)
(roletype object_r recovery_refresh_exec_26_0)
(typeattribute rild_26_0)
(roletype object_r rild_26_0)
(typeattribute runas_26_0)
(roletype object_r runas_26_0)
(typeattribute runas_exec_26_0)
(roletype object_r runas_exec_26_0)
(typeattribute sdcardd_26_0)
(roletype object_r sdcardd_26_0)
(typeattribute sdcardd_exec_26_0)
(roletype object_r sdcardd_exec_26_0)
(typeattribute audioserver_service_26_0)
(roletype object_r audioserver_service_26_0)
(typeattribute batteryproperties_service_26_0)
(roletype object_r batteryproperties_service_26_0)
(typeattribute bluetooth_service_26_0)
(roletype object_r bluetooth_service_26_0)
(typeattribute cameraserver_service_26_0)
(roletype object_r cameraserver_service_26_0)
(typeattribute default_android_service_26_0)
(roletype object_r default_android_service_26_0)
(typeattribute drmserver_service_26_0)
(roletype object_r drmserver_service_26_0)
(typeattribute dumpstate_service_26_0)
(roletype object_r dumpstate_service_26_0)
(typeattribute fingerprintd_service_26_0)
(roletype object_r fingerprintd_service_26_0)
(typeattribute hal_fingerprint_service_26_0)
(roletype object_r hal_fingerprint_service_26_0)
(typeattribute gatekeeper_service_26_0)
(roletype object_r gatekeeper_service_26_0)
(typeattribute gpu_service_26_0)
(roletype object_r gpu_service_26_0)
(typeattribute inputflinger_service_26_0)
(roletype object_r inputflinger_service_26_0)
(typeattribute incident_service_26_0)
(roletype object_r incident_service_26_0)
(typeattribute installd_service_26_0)
(roletype object_r installd_service_26_0)
(typeattribute keystore_service_26_0)
(roletype object_r keystore_service_26_0)
(typeattribute mediaserver_service_26_0)
(roletype object_r mediaserver_service_26_0)
(typeattribute mediametrics_service_26_0)
(roletype object_r mediametrics_service_26_0)
(typeattribute mediaextractor_service_26_0)
(roletype object_r mediaextractor_service_26_0)
(typeattribute mediacodec_service_26_0)
(roletype object_r mediacodec_service_26_0)
(typeattribute mediadrmserver_service_26_0)
(roletype object_r mediadrmserver_service_26_0)
(typeattribute mediacasserver_service_26_0)
(roletype object_r mediacasserver_service_26_0)
(typeattribute netd_service_26_0)
(roletype object_r netd_service_26_0)
(typeattribute nfc_service_26_0)
(roletype object_r nfc_service_26_0)
(typeattribute radio_service_26_0)
(roletype object_r radio_service_26_0)
(typeattribute storaged_service_26_0)
(roletype object_r storaged_service_26_0)
(typeattribute surfaceflinger_service_26_0)
(roletype object_r surfaceflinger_service_26_0)
(typeattribute system_app_service_26_0)
(roletype object_r system_app_service_26_0)
(typeattribute update_engine_service_26_0)
(roletype object_r update_engine_service_26_0)
(typeattribute virtual_touchpad_service_26_0)
(roletype object_r virtual_touchpad_service_26_0)
(typeattribute vr_hwc_service_26_0)
(roletype object_r vr_hwc_service_26_0)
(typeattribute accessibility_service_26_0)
(roletype object_r accessibility_service_26_0)
(typeattribute account_service_26_0)
(roletype object_r account_service_26_0)
(typeattribute activity_service_26_0)
(roletype object_r activity_service_26_0)
(typeattribute alarm_service_26_0)
(roletype object_r alarm_service_26_0)
(typeattribute appops_service_26_0)
(roletype object_r appops_service_26_0)
(typeattribute appwidget_service_26_0)
(roletype object_r appwidget_service_26_0)
(typeattribute assetatlas_service_26_0)
(roletype object_r assetatlas_service_26_0)
(typeattribute audio_service_26_0)
(roletype object_r audio_service_26_0)
(typeattribute autofill_service_26_0)
(roletype object_r autofill_service_26_0)
(typeattribute backup_service_26_0)
(roletype object_r backup_service_26_0)
(typeattribute batterystats_service_26_0)
(roletype object_r batterystats_service_26_0)
(typeattribute battery_service_26_0)
(roletype object_r battery_service_26_0)
(typeattribute bluetooth_manager_service_26_0)
(roletype object_r bluetooth_manager_service_26_0)
(typeattribute cameraproxy_service_26_0)
(roletype object_r cameraproxy_service_26_0)
(typeattribute clipboard_service_26_0)
(roletype object_r clipboard_service_26_0)
(typeattribute contexthub_service_26_0)
(roletype object_r contexthub_service_26_0)
(typeattribute IProxyService_service_26_0)
(roletype object_r IProxyService_service_26_0)
(typeattribute commontime_management_service_26_0)
(roletype object_r commontime_management_service_26_0)
(typeattribute companion_device_service_26_0)
(roletype object_r companion_device_service_26_0)
(typeattribute connectivity_service_26_0)
(roletype object_r connectivity_service_26_0)
(typeattribute connmetrics_service_26_0)
(roletype object_r connmetrics_service_26_0)
(typeattribute consumer_ir_service_26_0)
(roletype object_r consumer_ir_service_26_0)
(typeattribute content_service_26_0)
(roletype object_r content_service_26_0)
(typeattribute country_detector_service_26_0)
(roletype object_r country_detector_service_26_0)
(typeattribute coverage_service_26_0)
(roletype object_r coverage_service_26_0)
(typeattribute cpuinfo_service_26_0)
(roletype object_r cpuinfo_service_26_0)
(typeattribute dbinfo_service_26_0)
(roletype object_r dbinfo_service_26_0)
(typeattribute device_policy_service_26_0)
(roletype object_r device_policy_service_26_0)
(typeattribute deviceidle_service_26_0)
(roletype object_r deviceidle_service_26_0)
(typeattribute device_identifiers_service_26_0)
(roletype object_r device_identifiers_service_26_0)
(typeattribute devicestoragemonitor_service_26_0)
(roletype object_r devicestoragemonitor_service_26_0)
(typeattribute diskstats_service_26_0)
(roletype object_r diskstats_service_26_0)
(typeattribute display_service_26_0)
(roletype object_r display_service_26_0)
(typeattribute font_service_26_0)
(roletype object_r font_service_26_0)
(typeattribute netd_listener_service_26_0)
(roletype object_r netd_listener_service_26_0)
(typeattribute DockObserver_service_26_0)
(roletype object_r DockObserver_service_26_0)
(typeattribute dreams_service_26_0)
(roletype object_r dreams_service_26_0)
(typeattribute dropbox_service_26_0)
(roletype object_r dropbox_service_26_0)
(typeattribute ethernet_service_26_0)
(roletype object_r ethernet_service_26_0)
(typeattribute fingerprint_service_26_0)
(roletype object_r fingerprint_service_26_0)
(typeattribute gfxinfo_service_26_0)
(roletype object_r gfxinfo_service_26_0)
(typeattribute graphicsstats_service_26_0)
(roletype object_r graphicsstats_service_26_0)
(typeattribute hardware_service_26_0)
(roletype object_r hardware_service_26_0)
(typeattribute hardware_properties_service_26_0)
(roletype object_r hardware_properties_service_26_0)
(typeattribute hdmi_control_service_26_0)
(roletype object_r hdmi_control_service_26_0)
(typeattribute input_method_service_26_0)
(roletype object_r input_method_service_26_0)
(typeattribute input_service_26_0)
(roletype object_r input_service_26_0)
(typeattribute imms_service_26_0)
(roletype object_r imms_service_26_0)
(typeattribute ipsec_service_26_0)
(roletype object_r ipsec_service_26_0)
(typeattribute jobscheduler_service_26_0)
(roletype object_r jobscheduler_service_26_0)
(typeattribute launcherapps_service_26_0)
(roletype object_r launcherapps_service_26_0)
(typeattribute location_service_26_0)
(roletype object_r location_service_26_0)
(typeattribute lock_settings_service_26_0)
(roletype object_r lock_settings_service_26_0)
(typeattribute media_projection_service_26_0)
(roletype object_r media_projection_service_26_0)
(typeattribute media_router_service_26_0)
(roletype object_r media_router_service_26_0)
(typeattribute media_session_service_26_0)
(roletype object_r media_session_service_26_0)
(typeattribute meminfo_service_26_0)
(roletype object_r meminfo_service_26_0)
(typeattribute midi_service_26_0)
(roletype object_r midi_service_26_0)
(typeattribute mount_service_26_0)
(roletype object_r mount_service_26_0)
(typeattribute netpolicy_service_26_0)
(roletype object_r netpolicy_service_26_0)
(typeattribute netstats_service_26_0)
(roletype object_r netstats_service_26_0)
(typeattribute network_management_service_26_0)
(roletype object_r network_management_service_26_0)
(typeattribute network_score_service_26_0)
(roletype object_r network_score_service_26_0)
(typeattribute network_time_update_service_26_0)
(roletype object_r network_time_update_service_26_0)
(typeattribute notification_service_26_0)
(roletype object_r notification_service_26_0)
(typeattribute oem_lock_service_26_0)
(roletype object_r oem_lock_service_26_0)
(typeattribute otadexopt_service_26_0)
(roletype object_r otadexopt_service_26_0)
(typeattribute overlay_service_26_0)
(roletype object_r overlay_service_26_0)
(typeattribute package_service_26_0)
(roletype object_r package_service_26_0)
(typeattribute permission_service_26_0)
(roletype object_r permission_service_26_0)
(typeattribute persistent_data_block_service_26_0)
(roletype object_r persistent_data_block_service_26_0)
(typeattribute pinner_service_26_0)
(roletype object_r pinner_service_26_0)
(typeattribute power_service_26_0)
(roletype object_r power_service_26_0)
(typeattribute print_service_26_0)
(roletype object_r print_service_26_0)
(typeattribute processinfo_service_26_0)
(roletype object_r processinfo_service_26_0)
(typeattribute procstats_service_26_0)
(roletype object_r procstats_service_26_0)
(typeattribute recovery_service_26_0)
(roletype object_r recovery_service_26_0)
(typeattribute registry_service_26_0)
(roletype object_r registry_service_26_0)
(typeattribute restrictions_service_26_0)
(roletype object_r restrictions_service_26_0)
(typeattribute rttmanager_service_26_0)
(roletype object_r rttmanager_service_26_0)
(typeattribute samplingprofiler_service_26_0)
(roletype object_r samplingprofiler_service_26_0)
(typeattribute scheduling_policy_service_26_0)
(roletype object_r scheduling_policy_service_26_0)
(typeattribute search_service_26_0)
(roletype object_r search_service_26_0)
(typeattribute sec_key_att_app_id_provider_service_26_0)
(roletype object_r sec_key_att_app_id_provider_service_26_0)
(typeattribute sensorservice_service_26_0)
(roletype object_r sensorservice_service_26_0)
(typeattribute serial_service_26_0)
(roletype object_r serial_service_26_0)
(typeattribute servicediscovery_service_26_0)
(roletype object_r servicediscovery_service_26_0)
(typeattribute settings_service_26_0)
(roletype object_r settings_service_26_0)
(typeattribute shortcut_service_26_0)
(roletype object_r shortcut_service_26_0)
(typeattribute statusbar_service_26_0)
(roletype object_r statusbar_service_26_0)
(typeattribute storagestats_service_26_0)
(roletype object_r storagestats_service_26_0)
(typeattribute task_service_26_0)
(roletype object_r task_service_26_0)
(typeattribute textclassification_service_26_0)
(roletype object_r textclassification_service_26_0)
(typeattribute textservices_service_26_0)
(roletype object_r textservices_service_26_0)
(typeattribute telecom_service_26_0)
(roletype object_r telecom_service_26_0)
(typeattribute trust_service_26_0)
(roletype object_r trust_service_26_0)
(typeattribute tv_input_service_26_0)
(roletype object_r tv_input_service_26_0)
(typeattribute uimode_service_26_0)
(roletype object_r uimode_service_26_0)
(typeattribute updatelock_service_26_0)
(roletype object_r updatelock_service_26_0)
(typeattribute usagestats_service_26_0)
(roletype object_r usagestats_service_26_0)
(typeattribute usb_service_26_0)
(roletype object_r usb_service_26_0)
(typeattribute user_service_26_0)
(roletype object_r user_service_26_0)
(typeattribute vibrator_service_26_0)
(roletype object_r vibrator_service_26_0)
(typeattribute voiceinteraction_service_26_0)
(roletype object_r voiceinteraction_service_26_0)
(typeattribute vr_manager_service_26_0)
(roletype object_r vr_manager_service_26_0)
(typeattribute wallpaper_service_26_0)
(roletype object_r wallpaper_service_26_0)
(typeattribute webviewupdate_service_26_0)
(roletype object_r webviewupdate_service_26_0)
(typeattribute wifip2p_service_26_0)
(roletype object_r wifip2p_service_26_0)
(typeattribute wifiscanner_service_26_0)
(roletype object_r wifiscanner_service_26_0)
(typeattribute wifi_service_26_0)
(roletype object_r wifi_service_26_0)
(typeattribute wificond_service_26_0)
(roletype object_r wificond_service_26_0)
(typeattribute wifiaware_service_26_0)
(roletype object_r wifiaware_service_26_0)
(typeattribute window_service_26_0)
(roletype object_r window_service_26_0)
(typeattribute servicemanager_26_0)
(roletype object_r servicemanager_26_0)
(typeattribute servicemanager_exec_26_0)
(roletype object_r servicemanager_exec_26_0)
(typeattribute sgdisk_26_0)
(roletype object_r sgdisk_26_0)
(typeattribute sgdisk_exec_26_0)
(roletype object_r sgdisk_exec_26_0)
(typeattribute shared_relro_26_0)
(roletype object_r shared_relro_26_0)
(typeattribute shell_26_0)
(roletype object_r shell_26_0)
(typeattribute shell_exec_26_0)
(roletype object_r shell_exec_26_0)
(typeattribute slideshow_26_0)
(roletype object_r slideshow_26_0)
(typeattribute su_26_0)
(roletype object_r su_26_0)
(typeattribute su_exec_26_0)
(roletype object_r su_exec_26_0)
(typeattribute surfaceflinger_26_0)
(roletype object_r surfaceflinger_26_0)
(typeattribute system_app_26_0)
(roletype object_r system_app_26_0)
(typeattribute system_server_26_0)
(roletype object_r system_server_26_0)
(typeattribute tee_26_0)
(roletype object_r tee_26_0)
(typeattribute tee_device_26_0)
(roletype object_r tee_device_26_0)
(typeattribute tombstoned_26_0)
(roletype object_r tombstoned_26_0)
(typeattribute tombstoned_exec_26_0)
(roletype object_r tombstoned_exec_26_0)
(typeattribute toolbox_26_0)
(roletype object_r toolbox_26_0)
(typeattribute toolbox_exec_26_0)
(roletype object_r toolbox_exec_26_0)
(typeattribute tzdatacheck_26_0)
(roletype object_r tzdatacheck_26_0)
(typeattribute tzdatacheck_exec_26_0)
(roletype object_r tzdatacheck_exec_26_0)
(typeattribute ueventd_26_0)
(roletype object_r ueventd_26_0)
(typeattribute uncrypt_26_0)
(roletype object_r uncrypt_26_0)
(typeattribute uncrypt_exec_26_0)
(roletype object_r uncrypt_exec_26_0)
(typeattribute untrusted_app_26_0)
(roletype object_r untrusted_app_26_0)
(typeattribute untrusted_app_25_26_0)
(roletype object_r untrusted_app_25_26_0)
(typeattribute untrusted_v2_app_26_0)
(roletype object_r untrusted_v2_app_26_0)
(typeattribute update_engine_26_0)
(roletype object_r update_engine_26_0)
(typeattribute update_engine_exec_26_0)
(roletype object_r update_engine_exec_26_0)
(typeattribute update_verifier_26_0)
(roletype object_r update_verifier_26_0)
(typeattribute update_verifier_exec_26_0)
(roletype object_r update_verifier_exec_26_0)
(typeattribute vdc_26_0)
(roletype object_r vdc_26_0)
(typeattribute vdc_exec_26_0)
(roletype object_r vdc_exec_26_0)
(typeattribute vendor_shell_exec_26_0)
(roletype object_r vendor_shell_exec_26_0)
(typeattribute vendor_toolbox_exec_26_0)
(roletype object_r vendor_toolbox_exec_26_0)
(typeattribute virtual_touchpad_26_0)
(roletype object_r virtual_touchpad_26_0)
(typeattribute virtual_touchpad_exec_26_0)
(roletype object_r virtual_touchpad_exec_26_0)
(typeattribute default_android_vndservice_26_0)
(roletype object_r default_android_vndservice_26_0)
(typeattribute vndservicemanager_26_0)
(roletype object_r vndservicemanager_26_0)
(typeattribute vold_26_0)
(roletype object_r vold_26_0)
(typeattribute vold_exec_26_0)
(roletype object_r vold_exec_26_0)
(typeattribute vr_hwc_26_0)
(roletype object_r vr_hwc_26_0)
(typeattribute vr_hwc_exec_26_0)
(roletype object_r vr_hwc_exec_26_0)
(typeattribute watchdogd_26_0)
(roletype object_r watchdogd_26_0)
(typeattribute webview_zygote_26_0)
(roletype object_r webview_zygote_26_0)
(typeattribute webview_zygote_exec_26_0)
(roletype object_r webview_zygote_exec_26_0)
(typeattribute wificond_26_0)
(roletype object_r wificond_26_0)
(typeattribute wificond_exec_26_0)
(roletype object_r wificond_exec_26_0)
(typeattribute zygote_26_0)
(roletype object_r zygote_26_0)
(typeattribute zygote_exec_26_0)
(roletype object_r zygote_exec_26_0)
(type hostapd_socket)
(roletype object_r hostapd_socket)
(type hal_audio_default)
(roletype object_r hal_audio_default)
(type hal_audio_default_exec)
(roletype object_r hal_audio_default_exec)
(type hal_audio_default_tmpfs)
(roletype object_r hal_audio_default_tmpfs)
(type hal_bluetooth_default)
(roletype object_r hal_bluetooth_default)
(type hal_bluetooth_default_exec)
(roletype object_r hal_bluetooth_default_exec)
(type hal_bluetooth_default_tmpfs)
(roletype object_r hal_bluetooth_default_tmpfs)
(type hal_bootctl_default)
(roletype object_r hal_bootctl_default)
(type hal_bootctl_default_exec)
(roletype object_r hal_bootctl_default_exec)
(type hal_bootctl_default_tmpfs)
(roletype object_r hal_bootctl_default_tmpfs)
(type hal_camera_default)
(roletype object_r hal_camera_default)
(type hal_camera_default_exec)
(roletype object_r hal_camera_default_exec)
(type hal_camera_default_tmpfs)
(roletype object_r hal_camera_default_tmpfs)
(type hal_configstore_default)
(roletype object_r hal_configstore_default)
(type hal_configstore_default_exec)
(roletype object_r hal_configstore_default_exec)
(type hal_configstore_default_tmpfs)
(roletype object_r hal_configstore_default_tmpfs)
(type hal_contexthub_default)
(roletype object_r hal_contexthub_default)
(type hal_contexthub_default_exec)
(roletype object_r hal_contexthub_default_exec)
(type hal_contexthub_default_tmpfs)
(roletype object_r hal_contexthub_default_tmpfs)
(type hal_drm_default)
(roletype object_r hal_drm_default)
(type hal_drm_default_exec)
(roletype object_r hal_drm_default_exec)
(type hal_drm_default_tmpfs)
(roletype object_r hal_drm_default_tmpfs)
(type hal_dumpstate_default)
(roletype object_r hal_dumpstate_default)
(type hal_dumpstate_default_exec)
(roletype object_r hal_dumpstate_default_exec)
(type hal_dumpstate_default_tmpfs)
(roletype object_r hal_dumpstate_default_tmpfs)
(type hal_fingerprint_default)
(roletype object_r hal_fingerprint_default)
(type hal_fingerprint_default_exec)
(roletype object_r hal_fingerprint_default_exec)
(type hal_fingerprint_default_tmpfs)
(roletype object_r hal_fingerprint_default_tmpfs)
(type hal_gatekeeper_default)
(roletype object_r hal_gatekeeper_default)
(type hal_gatekeeper_default_exec)
(roletype object_r hal_gatekeeper_default_exec)
(type hal_gatekeeper_default_tmpfs)
(roletype object_r hal_gatekeeper_default_tmpfs)
(type hal_gnss_default)
(roletype object_r hal_gnss_default)
(type hal_gnss_default_exec)
(roletype object_r hal_gnss_default_exec)
(type hal_gnss_default_tmpfs)
(roletype object_r hal_gnss_default_tmpfs)
(type hal_graphics_allocator_default)
(roletype object_r hal_graphics_allocator_default)
(type hal_graphics_allocator_default_exec)
(roletype object_r hal_graphics_allocator_default_exec)
(type hal_graphics_allocator_default_tmpfs)
(roletype object_r hal_graphics_allocator_default_tmpfs)
(type hal_graphics_composer_default)
(roletype object_r hal_graphics_composer_default)
(type hal_graphics_composer_default_exec)
(roletype object_r hal_graphics_composer_default_exec)
(type hal_graphics_composer_default_tmpfs)
(roletype object_r hal_graphics_composer_default_tmpfs)
(type hal_health_default)
(roletype object_r hal_health_default)
(type hal_health_default_exec)
(roletype object_r hal_health_default_exec)
(type hal_health_default_tmpfs)
(roletype object_r hal_health_default_tmpfs)
(type hal_ir_default)
(roletype object_r hal_ir_default)
(type hal_ir_default_exec)
(roletype object_r hal_ir_default_exec)
(type hal_ir_default_tmpfs)
(roletype object_r hal_ir_default_tmpfs)
(type hal_keymaster_default)
(roletype object_r hal_keymaster_default)
(type hal_keymaster_default_exec)
(roletype object_r hal_keymaster_default_exec)
(type hal_keymaster_default_tmpfs)
(roletype object_r hal_keymaster_default_tmpfs)
(type hal_light_default)
(roletype object_r hal_light_default)
(type hal_light_default_exec)
(roletype object_r hal_light_default_exec)
(type hal_light_default_tmpfs)
(roletype object_r hal_light_default_tmpfs)
(type hal_memtrack_default)
(roletype object_r hal_memtrack_default)
(type hal_memtrack_default_exec)
(roletype object_r hal_memtrack_default_exec)
(type hal_memtrack_default_tmpfs)
(roletype object_r hal_memtrack_default_tmpfs)
(type hal_nfc_default)
(roletype object_r hal_nfc_default)
(type hal_nfc_default_exec)
(roletype object_r hal_nfc_default_exec)
(type hal_nfc_default_tmpfs)
(roletype object_r hal_nfc_default_tmpfs)
(type mediacodec_tmpfs)
(roletype object_r mediacodec_tmpfs)
(type hal_power_default)
(roletype object_r hal_power_default)
(type hal_power_default_exec)
(roletype object_r hal_power_default_exec)
(type hal_power_default_tmpfs)
(roletype object_r hal_power_default_tmpfs)
(type hal_sensors_default)
(roletype object_r hal_sensors_default)
(type hal_sensors_default_exec)
(roletype object_r hal_sensors_default_exec)
(type hal_sensors_default_tmpfs)
(roletype object_r hal_sensors_default_tmpfs)
(type hal_thermal_default)
(roletype object_r hal_thermal_default)
(type hal_thermal_default_exec)
(roletype object_r hal_thermal_default_exec)
(type hal_thermal_default_tmpfs)
(roletype object_r hal_thermal_default_tmpfs)
(type hal_tv_cec_default)
(roletype object_r hal_tv_cec_default)
(type hal_tv_cec_default_exec)
(roletype object_r hal_tv_cec_default_exec)
(type hal_tv_cec_default_tmpfs)
(roletype object_r hal_tv_cec_default_tmpfs)
(type hal_tv_input_default)
(roletype object_r hal_tv_input_default)
(type hal_tv_input_default_exec)
(roletype object_r hal_tv_input_default_exec)
(type hal_tv_input_default_tmpfs)
(roletype object_r hal_tv_input_default_tmpfs)
(type hal_usb_default)
(roletype object_r hal_usb_default)
(type hal_usb_default_exec)
(roletype object_r hal_usb_default_exec)
(type hal_usb_default_tmpfs)
(roletype object_r hal_usb_default_tmpfs)
(type hal_vibrator_default)
(roletype object_r hal_vibrator_default)
(type hal_vibrator_default_exec)
(roletype object_r hal_vibrator_default_exec)
(type hal_vibrator_default_tmpfs)
(roletype object_r hal_vibrator_default_tmpfs)
(type hal_vr_default)
(roletype object_r hal_vr_default)
(type hal_vr_default_exec)
(roletype object_r hal_vr_default_exec)
(type hal_vr_default_tmpfs)
(roletype object_r hal_vr_default_tmpfs)
(type hal_wifi_default)
(roletype object_r hal_wifi_default)
(type hal_wifi_default_exec)
(roletype object_r hal_wifi_default_exec)
(type hal_wifi_default_tmpfs)
(roletype object_r hal_wifi_default_tmpfs)
(type hal_wifi_offload_default)
(roletype object_r hal_wifi_offload_default)
(type hal_wifi_offload_default_exec)
(roletype object_r hal_wifi_offload_default_exec)
(type hal_wifi_offload_default_tmpfs)
(roletype object_r hal_wifi_offload_default_tmpfs)
(type hal_wifi_supplicant_default)
(roletype object_r hal_wifi_supplicant_default)
(type hal_wifi_supplicant_default_exec)
(roletype object_r hal_wifi_supplicant_default_exec)
(type hal_wifi_supplicant_default_tmpfs)
(roletype object_r hal_wifi_supplicant_default_tmpfs)
(type hostapd)
(roletype object_r hostapd)
(type hostapd_exec)
(roletype object_r hostapd_exec)
(type hostapd_tmpfs)
(roletype object_r hostapd_tmpfs)
(type rild_exec)
(roletype object_r rild_exec)
(type rild_tmpfs)
(roletype object_r rild_tmpfs)
(type tee_exec)
(roletype object_r tee_exec)
(type tee_tmpfs)
(roletype object_r tee_tmpfs)
(type vendor_modprobe)
(roletype object_r vendor_modprobe)
(type vndservicemanager_exec)
(roletype object_r vndservicemanager_exec)
(type vndservicemanager_tmpfs)
(roletype object_r vndservicemanager_tmpfs)
(allow bootanim_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 bootanim_26_0 (dir (search)))
(allow servicemanager_26_0 bootanim_26_0 (file (read open)))
(allow servicemanager_26_0 bootanim_26_0 (process (getattr)))
(allow bootanim_26_0 surfaceflinger_26_0 (binder (call transfer)))
(allow surfaceflinger_26_0 bootanim_26_0 (binder (transfer)))
(allow bootanim_26_0 surfaceflinger_26_0 (fd (use)))
(allow bootanim_26_0 audioserver_26_0 (binder (call transfer)))
(allow audioserver_26_0 bootanim_26_0 (binder (transfer)))
(allow bootanim_26_0 audioserver_26_0 (fd (use)))
(allow bootanim_26_0 hwservicemanager_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 bootanim_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 bootanim_26_0 (dir (search)))
(allow hwservicemanager_26_0 bootanim_26_0 (file (read open)))
(allow hwservicemanager_26_0 bootanim_26_0 (process (getattr)))
(allow bootanim_26_0 gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow bootanim_26_0 oemfs_26_0 (dir (search)))
(allow bootanim_26_0 oemfs_26_0 (file (ioctl read getattr lock open)))
(allow bootanim_26_0 audio_device_26_0 (dir (ioctl read getattr lock search open)))
(allow bootanim_26_0 audio_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow bootanim_26_0 audioserver_service_26_0 (service_manager (find)))
(allow bootanim_26_0 surfaceflinger_service_26_0 (service_manager (find)))
(allow bootanim_26_0 ion_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow bootanim_26_0 hal_graphics_allocator (fd (use)))
(allow bootanim_26_0 hal_graphics_composer (fd (use)))
(allow bootanim_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow bootanim_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow bootanim_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow bootanim_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow bootanim_26_0 sysfs_26_0 (dir (ioctl read getattr lock search open)))
(allow bootanim_26_0 sysfs_26_0 (file (ioctl read getattr lock open)))
(allow bootanim_26_0 sysfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow bootanim_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow bootanim_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow bootanim_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow bootanim_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow bootstat_26_0 runtime_event_log_tags_file_26_0 (file (ioctl read getattr lock open)))
(allow bootstat_26_0 bootstat_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow bootstat_26_0 bootstat_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow bootstat_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow bootstat_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow bootstat_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow bootstat_26_0 boottime_prop_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 pdx_bufferhub_client_endpoint_socket_type (unix_stream_socket (create bind)))
(allow bufferhubd_26_0 pdx_bufferhub_client_endpoint_socket_type (unix_stream_socket (read write getattr setattr lock append listen accept getopt setopt shutdown)))
(allow bufferhubd_26_0 self (process (setsockcreate)))
(allow bufferhubd_26_0 pdx_bufferhub_client_channel_socket_type (unix_stream_socket (ioctl read write create getattr setattr lock append bind connect listen accept getopt setopt shutdown)))
(neverallow base_typeattr_1_26_0 pdx_bufferhub_client_endpoint_socket_type (unix_stream_socket (listen accept)))
(allow bufferhubd_26_0 pdx_performance_client_endpoint_dir_type (dir (ioctl read getattr lock search open)))
(allow bufferhubd_26_0 pdx_performance_client_endpoint_socket_type (sock_file (ioctl read write getattr lock append open)))
(allow bufferhubd_26_0 pdx_performance_client_endpoint_socket_type (unix_stream_socket (read write shutdown connectto)))
(allow bufferhubd_26_0 pdx_performance_client_channel_socket_type (unix_stream_socket (read write getattr setattr lock append getopt setopt shutdown)))
(allow bufferhubd_26_0 pdx_performance_client_server_type (fd (use)))
(allow pdx_performance_client_server_type bufferhubd_26_0 (fd (use)))
(allow bufferhubd_26_0 gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow bufferhubd_26_0 ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow bufferhubd_26_0 mediacodec_26_0 (fd (use)))
(allow cameraserver_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 cameraserver_26_0 (dir (search)))
(allow servicemanager_26_0 cameraserver_26_0 (file (read open)))
(allow servicemanager_26_0 cameraserver_26_0 (process (getattr)))
(allow cameraserver_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain cameraserver_26_0 (binder (transfer)))
(allow cameraserver_26_0 binderservicedomain (fd (use)))
(allow cameraserver_26_0 appdomain (binder (call transfer)))
(allow appdomain cameraserver_26_0 (binder (transfer)))
(allow cameraserver_26_0 appdomain (fd (use)))
(allow cameraserver_26_0 ion_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow cameraserver_26_0 hal_graphics_composer (fd (use)))
(allow cameraserver_26_0 cameraserver_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_2_26_0 cameraserver_service_26_0 (service_manager (add)))
(neverallow cameraserver_26_0 unlabeled_26_0 (service_manager (add)))
(allow cameraserver_26_0 appops_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 audioserver_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 batterystats_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 cameraproxy_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 mediaserver_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 processinfo_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 scheduling_policy_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 surfaceflinger_service_26_0 (service_manager (find)))
(allow cameraserver_26_0 hidl_token_hwservice_26_0 (hwservice_manager (find)))
(neverallow cameraserver_26_0 fs_type (file (execute_no_trans)))
(neverallow cameraserver_26_0 file_type (file (execute_no_trans)))
(neverallow cameraserver_26_0 domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow cameraserver_26_0 domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow cameraserver_26_0 domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(allow charger_26_0 kmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow charger_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow charger_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow charger_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow charger_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow charger_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow charger_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow charger_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow charger_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow charger_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow charger_26_0 self (capability (sys_tty_config)))
(allow charger_26_0 self (capability (sys_boot)))
(allow charger_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow charger_26_0 self (capability2 (block_suspend)))
(allow charger_26_0 self (netlink_kobject_uevent_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow charger_26_0 sysfs_26_0 (file (write)))
(allow charger_26_0 sysfs_batteryinfo_26_0 (file (ioctl read getattr lock open)))
(allow charger_26_0 pstorefs_26_0 (dir (ioctl read getattr lock search open)))
(allow charger_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow charger_26_0 graphics_device_26_0 (dir (ioctl read getattr lock search open)))
(allow charger_26_0 graphics_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow charger_26_0 input_device_26_0 (dir (ioctl read getattr lock search open)))
(allow charger_26_0 input_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow charger_26_0 tty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow charger_26_0 proc_sysrq_26_0 (file (ioctl read write getattr lock append open)))
(allow charger_26_0 property_socket_26_0 (sock_file (write)))
(allow charger_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow charger_26_0 system_prop_26_0 (property_service (set)))
(allow charger_26_0 system_prop_26_0 (file (ioctl read getattr lock open)))
(allow clatd_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow clatd_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow clatd_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow clatd_26_0 netd_26_0 (fd (use)))
(allow clatd_26_0 netd_26_0 (fifo_file (read write)))
(allow clatd_26_0 netd_26_0 (netlink_kobject_uevent_socket (read write)))
(allow clatd_26_0 netd_26_0 (netlink_nflog_socket (read write)))
(allow clatd_26_0 netd_26_0 (netlink_route_socket (read write)))
(allow clatd_26_0 netd_26_0 (udp_socket (read write)))
(allow clatd_26_0 netd_26_0 (unix_stream_socket (read write)))
(allow clatd_26_0 netd_26_0 (unix_dgram_socket (read write)))
(allow clatd_26_0 self (capability (setgid setuid net_admin net_raw)))
(allow clatd_26_0 self (capability (ipc_lock)))
(allow clatd_26_0 self (netlink_route_socket (nlmsg_write)))
(allow clatd_26_0 self (rawip_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow clatd_26_0 self (packet_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow clatd_26_0 self (tun_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow clatd_26_0 tun_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow cppreopts_26_0 dalvikcache_data_file_26_0 (dir (write add_name remove_name search)))
(allow cppreopts_26_0 dalvikcache_data_file_26_0 (file (read write create getattr rename open)))
(allow cppreopts_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow cppreopts_26_0 system_file_26_0 (dir (read open)))
(allow cppreopts_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow crash_dump_26_0 base_typeattr_3_26_0 (process (sigchld sigkill sigstop signal ptrace)))
(dontaudit crash_dump_26_0 self (capability (sys_ptrace)))
(allow crash_dump_26_0 logd_26_0 (process (sigchld sigkill sigstop signal ptrace)))
(allow crash_dump_26_0 domain (fd (use)))
(allow crash_dump_26_0 domain (fifo_file (write append)))
(allow crash_dump_26_0 domain (dir (ioctl read getattr lock search open)))
(allow crash_dump_26_0 domain (file (ioctl read getattr lock open)))
(allow crash_dump_26_0 domain (lnk_file (ioctl read getattr lock open)))
(allow crash_dump_26_0 exec_type (file (ioctl read getattr lock open)))
(allow crash_dump_26_0 dalvikcache_data_file_26_0 (dir (getattr search)))
(allow crash_dump_26_0 dalvikcache_data_file_26_0 (file (ioctl read getattr lock open)))
(allow crash_dump_26_0 apk_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow crash_dump_26_0 apk_data_file_26_0 (file (ioctl read getattr lock open)))
(allow crash_dump_26_0 apk_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow crash_dump_26_0 vendor_file_26_0 (dir (ioctl read getattr lock search open)))
(allow crash_dump_26_0 same_process_hal_file_26_0 (dir (ioctl read getattr lock search open)))
(allow crash_dump_26_0 vendor_file_26_0 (file (ioctl read getattr lock open)))
(allow crash_dump_26_0 vendor_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow crash_dump_26_0 same_process_hal_file_26_0 (file (ioctl read getattr lock open)))
(allow crash_dump_26_0 same_process_hal_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow crash_dump_26_0 tombstoned_crash_socket_26_0 (sock_file (write)))
(allow crash_dump_26_0 tombstoned_26_0 (unix_stream_socket (connectto)))
(allow crash_dump_26_0 system_ndebug_socket_26_0 (sock_file (write)))
(allow crash_dump_26_0 system_server_26_0 (unix_stream_socket (connectto)))
(allow crash_dump_26_0 anr_data_file_26_0 (file (getattr append)))
(allow crash_dump_26_0 tombstone_data_file_26_0 (file (getattr append)))
(allow crash_dump_26_0 logcat_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow crash_dump_26_0 logdr_socket_26_0 (sock_file (write)))
(allow crash_dump_26_0 logd_26_0 (unix_stream_socket (connectto)))
(neverallow domain crash_dump_exec_26_0 (file (execute_no_trans)))
(allow dex2oat_26_0 apk_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dex2oat_26_0 apk_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dex2oat_26_0 apk_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow dex2oat_26_0 vendor_app_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dex2oat_26_0 vendor_app_file_26_0 (file (ioctl read getattr lock open)))
(allow dex2oat_26_0 vendor_app_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow dex2oat_26_0 vendor_framework_file_26_0 (dir (getattr search)))
(allow dex2oat_26_0 vendor_framework_file_26_0 (file (read getattr open)))
(allow dex2oat_26_0 tmpfs_26_0 (file (read getattr)))
(allow dex2oat_26_0 dalvikcache_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dex2oat_26_0 dalvikcache_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dex2oat_26_0 dalvikcache_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow dex2oat_26_0 dalvikcache_data_file_26_0 (file (write)))
(allow dex2oat_26_0 dalvikcache_data_file_26_0 (lnk_file (read)))
(allow dex2oat_26_0 installd_26_0 (fd (use)))
(allow dex2oat_26_0 system_file_26_0 (file (lock)))
(allow dex2oat_26_0 asec_apk_file_26_0 (file (read)))
(allow dex2oat_26_0 unlabeled_26_0 (file (read)))
(allow dex2oat_26_0 oemfs_26_0 (file (read)))
(allow dex2oat_26_0 apk_tmp_file_26_0 (dir (search)))
(allow dex2oat_26_0 apk_tmp_file_26_0 (file (ioctl read getattr lock open)))
(allow dex2oat_26_0 user_profile_data_file_26_0 (file (read getattr lock)))
(allow dex2oat_26_0 app_data_file_26_0 (file (read write getattr lock)))
(allow dex2oat_26_0 postinstall_dexopt_26_0 (fd (use)))
(allow dex2oat_26_0 postinstall_file_26_0 (dir (getattr search)))
(allow dex2oat_26_0 postinstall_file_26_0 (filesystem (getattr)))
(allow dex2oat_26_0 postinstall_file_26_0 (lnk_file (read)))
(allow dex2oat_26_0 ota_data_file_26_0 (dir (ioctl read write getattr lock add_name search open)))
(allow dex2oat_26_0 ota_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dex2oat_26_0 ota_data_file_26_0 (lnk_file (read create)))
(allow dex2oat_26_0 ota_data_file_26_0 (file (write create setattr lock append open)))
(neverallow dex2oat_26_0 app_data_file_26_0 (file (open)))
(neverallow dex2oat_26_0 app_data_file_26_0 (lnk_file (open)))
(neverallow dex2oat_26_0 app_data_file_26_0 (sock_file (open)))
(neverallow dex2oat_26_0 app_data_file_26_0 (fifo_file (open)))
(allow dhcp_26_0 cgroup_26_0 (dir (write create add_name)))
(allow dhcp_26_0 self (capability (setgid setuid net_bind_service net_admin net_raw)))
(allow dhcp_26_0 self (packet_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow dhcp_26_0 self (netlink_route_socket (nlmsg_write)))
(allow dhcp_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dhcp_26_0 system_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dhcp_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dhcp_26_0 proc_net_26_0 (file (write)))
(allow dhcp_26_0 property_socket_26_0 (sock_file (write)))
(allow dhcp_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow dhcp_26_0 dhcp_prop_26_0 (property_service (set)))
(allow dhcp_26_0 dhcp_prop_26_0 (file (ioctl read getattr lock open)))
(allow dhcp_26_0 property_socket_26_0 (sock_file (write)))
(allow dhcp_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow dhcp_26_0 pan_result_prop_26_0 (property_service (set)))
(allow dhcp_26_0 pan_result_prop_26_0 (file (ioctl read getattr lock open)))
(allow dhcp_26_0 dhcp_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow dhcp_26_0 dhcp_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow dhcp_26_0 netd_26_0 (fd (use)))
(allow dhcp_26_0 netd_26_0 (fifo_file (ioctl read write getattr lock append open)))
(allow dhcp_26_0 netd_26_0 (udp_socket (read write)))
(allow dhcp_26_0 netd_26_0 (unix_stream_socket (read write)))
(allow dhcp_26_0 netd_26_0 (unix_dgram_socket (read write)))
(allow dhcp_26_0 netd_26_0 (netlink_route_socket (read write)))
(allow dhcp_26_0 netd_26_0 (netlink_nflog_socket (read write)))
(allow dhcp_26_0 netd_26_0 (netlink_kobject_uevent_socket (read write)))
(allow display_service_server fwk_display_hwservice_26_0 (hwservice_manager (add find)))
(allow display_service_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_4_26_0 fwk_display_hwservice_26_0 (hwservice_manager (add)))
(neverallow display_service_server unlabeled_26_0 (hwservice_manager (add)))
(allowx dnsmasq_26_0 self (ioctl udp_socket (0x6900 0x6902)))
(allowx dnsmasq_26_0 self (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx dnsmasq_26_0 self (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow dnsmasq_26_0 self (capability (dac_override)))
(allow dnsmasq_26_0 self (capability (setgid setuid net_bind_service net_admin net_raw)))
(allow dnsmasq_26_0 dhcp_data_file_26_0 (dir (write lock add_name remove_name search open)))
(allow dnsmasq_26_0 dhcp_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow dnsmasq_26_0 netd_26_0 (fd (use)))
(allow dnsmasq_26_0 netd_26_0 (fifo_file (read write)))
(allow dnsmasq_26_0 netd_26_0 (netlink_kobject_uevent_socket (read write)))
(allow dnsmasq_26_0 netd_26_0 (netlink_nflog_socket (read write)))
(allow dnsmasq_26_0 netd_26_0 (netlink_route_socket (read write)))
(allow dnsmasq_26_0 netd_26_0 (unix_stream_socket (read write)))
(allow dnsmasq_26_0 netd_26_0 (unix_dgram_socket (read write)))
(allow dnsmasq_26_0 netd_26_0 (udp_socket (read write)))
(allow domain init_26_0 (process (sigchld)))
(allow domain self (process (fork sigchld sigkill sigstop signull signal getsched setsched getsession getpgid setpgid getcap setcap getattr setrlimit)))
(allow domain self (fd (use)))
(allow domain proc_26_0 (dir (ioctl read getattr lock search open)))
(allow domain proc_net_26_0 (dir (search)))
(allow domain self (dir (ioctl read getattr lock search open)))
(allow domain self (file (ioctl read getattr lock open)))
(allow domain self (lnk_file (ioctl read getattr lock open)))
(allow domain self (file (ioctl read write getattr lock append open)))
(allow domain self (fifo_file (ioctl read write getattr lock append open)))
(allow domain self (unix_dgram_socket (ioctl read write create getattr setattr lock append bind connect getopt setopt shutdown sendto)))
(allow domain self (unix_stream_socket (ioctl read write create getattr setattr lock append bind connect listen accept getopt setopt shutdown connectto)))
(allow domain init_26_0 (fd (use)))
(allow domain su_26_0 (unix_stream_socket (connectto)))
(allow domain su_26_0 (fd (use)))
(allow domain su_26_0 (unix_stream_socket (read write getattr getopt shutdown)))
(allow base_typeattr_5_26_0 su_26_0 (binder (call transfer)))
(allow base_typeattr_5_26_0 su_26_0 (fd (use)))
(allow domain su_26_0 (fifo_file (write getattr)))
(allow domain su_26_0 (process (sigchld)))
(allow domain coredump_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow domain coredump_file_26_0 (dir (ioctl read write getattr lock add_name search open)))
(allow domain rootfs_26_0 (dir (search)))
(allow domain rootfs_26_0 (lnk_file (read getattr)))
(allow domain device_26_0 (dir (search)))
(allow domain dev_type (lnk_file (ioctl read getattr lock open)))
(allow domain devpts_26_0 (dir (search)))
(allow domain socket_device_26_0 (dir (ioctl read getattr lock search open)))
(allow domain owntty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow domain null_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow domain zero_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow domain ashmem_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow base_typeattr_6_26_0 binder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow base_typeattr_7_26_0 hwbinder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow domain ptmx_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow domain alarm_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow domain random_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow domain properties_device_26_0 (dir (getattr search)))
(allow domain properties_serial_26_0 (file (ioctl read getattr lock open)))
(allow domain core_property_type (file (ioctl read getattr lock open)))
(allow domain log_property_type (file (ioctl read getattr lock open)))
(dontaudit domain property_type (file (audit_access)))
(allow domain property_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow domain init_26_0 (key (search)))
(allow domain vold_26_0 (key (search)))
(allow domain logdw_socket_26_0 (sock_file (write)))
(allow domain logd_26_0 (unix_dgram_socket (sendto)))
(allow domain pmsg_device_26_0 (chr_file (write lock append open)))
(allow domain system_file_26_0 (dir (getattr search)))
(allow domain system_file_26_0 (file (read getattr execute open)))
(allow domain system_file_26_0 (lnk_file (read getattr)))
(allow domain vendor_hal_file_26_0 (dir (ioctl read getattr lock search open)))
(allow domain same_process_hal_file_26_0 (dir (ioctl read getattr lock search open)))
(allow domain same_process_hal_file_26_0 (file (read getattr execute open)))
(allow domain vndk_sp_file_26_0 (dir (ioctl read getattr lock search open)))
(allow domain vndk_sp_file_26_0 (file (read getattr execute open)))
(allow domain vendor_configs_file_26_0 (dir (ioctl read getattr lock search open)))
(allow domain vendor_configs_file_26_0 (file (read getattr open)))
(allow domain vendor_file_26_0 (lnk_file (read getattr open)))
(allow domain vendor_file_26_0 (dir (getattr search)))
(allow base_typeattr_8_26_0 vendor_file_type (dir (ioctl read getattr lock search open)))
(allow base_typeattr_8_26_0 vendor_file_type (file (read getattr execute open)))
(allow base_typeattr_8_26_0 vendor_file_type (lnk_file (read getattr)))
(allow domain sysfs_26_0 (lnk_file (read)))
(allow domain zoneinfo_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow domain zoneinfo_data_file_26_0 (file (ioctl read getattr lock open)))
(allow domain zoneinfo_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow domain sysfs_devices_system_cpu_26_0 (dir (ioctl read getattr lock search open)))
(allow domain sysfs_devices_system_cpu_26_0 (file (ioctl read getattr lock open)))
(allow domain sysfs_devices_system_cpu_26_0 (lnk_file (ioctl read getattr lock open)))
(allow domain sysfs_usb_26_0 (dir (ioctl read getattr lock search open)))
(allow domain sysfs_usb_26_0 (file (ioctl read getattr lock open)))
(allow domain sysfs_usb_26_0 (lnk_file (ioctl read getattr lock open)))
(allow appdomain system_data_file_26_0 (dir (getattr)))
(allow coredomain system_data_file_26_0 (dir (getattr)))
(allow domain system_data_file_26_0 (dir (search)))
(allow domain proc_26_0 (lnk_file (read getattr)))
(allow domain proc_cpuinfo_26_0 (file (ioctl read getattr lock open)))
(allow domain proc_overcommit_memory_26_0 (file (ioctl read getattr lock open)))
(allow domain proc_perf_26_0 (file (ioctl read getattr lock open)))
(allow domain selinuxfs_26_0 (dir (search)))
(allow domain selinuxfs_26_0 (file (getattr)))
(allow domain sysfs_26_0 (dir (search)))
(allow domain selinuxfs_26_0 (filesystem (getattr)))
(allow domain cgroup_26_0 (dir (write search)))
(allow domain cgroup_26_0 (file (write lock append open)))
(allow domain debugfs_26_0 (dir (search)))
(allow domain debugfs_tracing_26_0 (dir (search)))
(allow domain debugfs_trace_marker_26_0 (file (write lock append open)))
(allow domain fs_type (filesystem (getattr)))
(allow domain fs_type (dir (getattr)))
(allowx domain domain (ioctl tcp_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx domain domain (ioctl udp_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx domain domain (ioctl rawip_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx domain domain (ioctl tcp_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx domain domain (ioctl udp_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx domain domain (ioctl rawip_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx domain domain (ioctl tcp_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx domain domain (ioctl udp_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx domain domain (ioctl rawip_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx domain domain (ioctl unix_stream_socket (0x5401 0x5411 ((range 0x5413 0x5414)) 0x541b 0x5451)))
(allowx domain domain (ioctl unix_dgram_socket (0x5401 0x5411 ((range 0x5413 0x5414)) 0x541b 0x5451)))
(allowx domain devpts_26_0 (ioctl chr_file (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allow base_typeattr_9_26_0 hwservice_manager_type (hwservice_manager (add find)))
(allow base_typeattr_9_26_0 vndservice_manager_type (service_manager (add find)))
(neverallowx domain domain (ioctl socket (0x0)))
(neverallowx domain domain (ioctl tcp_socket (0x0)))
(neverallowx domain domain (ioctl udp_socket (0x0)))
(neverallowx domain domain (ioctl rawip_socket (0x0)))
(neverallowx domain domain (ioctl netlink_socket (0x0)))
(neverallowx domain domain (ioctl packet_socket (0x0)))
(neverallowx domain domain (ioctl key_socket (0x0)))
(neverallowx domain domain (ioctl unix_stream_socket (0x0)))
(neverallowx domain domain (ioctl unix_dgram_socket (0x0)))
(neverallowx domain domain (ioctl netlink_route_socket (0x0)))
(neverallowx domain domain (ioctl netlink_tcpdiag_socket (0x0)))
(neverallowx domain domain (ioctl netlink_nflog_socket (0x0)))
(neverallowx domain domain (ioctl netlink_xfrm_socket (0x0)))
(neverallowx domain domain (ioctl netlink_selinux_socket (0x0)))
(neverallowx domain domain (ioctl netlink_audit_socket (0x0)))
(neverallowx domain domain (ioctl netlink_dnrt_socket (0x0)))
(neverallowx domain domain (ioctl netlink_kobject_uevent_socket (0x0)))
(neverallowx domain domain (ioctl appletalk_socket (0x0)))
(neverallowx domain domain (ioctl tun_socket (0x0)))
(neverallowx domain domain (ioctl netlink_iscsi_socket (0x0)))
(neverallowx domain domain (ioctl netlink_fib_lookup_socket (0x0)))
(neverallowx domain domain (ioctl netlink_connector_socket (0x0)))
(neverallowx domain domain (ioctl netlink_netfilter_socket (0x0)))
(neverallowx domain domain (ioctl netlink_generic_socket (0x0)))
(neverallowx domain domain (ioctl netlink_scsitransport_socket (0x0)))
(neverallowx domain domain (ioctl netlink_rdma_socket (0x0)))
(neverallowx domain domain (ioctl netlink_crypto_socket (0x0)))
(neverallowx domain domain (ioctl sctp_socket (0x0)))
(neverallowx domain domain (ioctl icmp_socket (0x0)))
(neverallowx domain domain (ioctl ax25_socket (0x0)))
(neverallowx domain domain (ioctl ipx_socket (0x0)))
(neverallowx domain domain (ioctl netrom_socket (0x0)))
(neverallowx domain domain (ioctl atmpvc_socket (0x0)))
(neverallowx domain domain (ioctl x25_socket (0x0)))
(neverallowx domain domain (ioctl rose_socket (0x0)))
(neverallowx domain domain (ioctl decnet_socket (0x0)))
(neverallowx domain domain (ioctl atmsvc_socket (0x0)))
(neverallowx domain domain (ioctl rds_socket (0x0)))
(neverallowx domain domain (ioctl irda_socket (0x0)))
(neverallowx domain domain (ioctl pppox_socket (0x0)))
(neverallowx domain domain (ioctl llc_socket (0x0)))
(neverallowx domain domain (ioctl can_socket (0x0)))
(neverallowx domain domain (ioctl tipc_socket (0x0)))
(neverallowx domain domain (ioctl bluetooth_socket (0x0)))
(neverallowx domain domain (ioctl iucv_socket (0x0)))
(neverallowx domain domain (ioctl rxrpc_socket (0x0)))
(neverallowx domain domain (ioctl isdn_socket (0x0)))
(neverallowx domain domain (ioctl phonet_socket (0x0)))
(neverallowx domain domain (ioctl ieee802154_socket (0x0)))
(neverallowx domain domain (ioctl caif_socket (0x0)))
(neverallowx domain domain (ioctl alg_socket (0x0)))
(neverallowx domain domain (ioctl nfc_socket (0x0)))
(neverallowx domain domain (ioctl vsock_socket (0x0)))
(neverallowx domain domain (ioctl kcm_socket (0x0)))
(neverallowx domain domain (ioctl qipcrtr_socket (0x0)))
(neverallowx base_typeattr_10_26_0 devpts_26_0 (ioctl chr_file (0x5412)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (file (create)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (dir (create)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (lnk_file (create)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (chr_file (create)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (blk_file (create)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (sock_file (create)))
(neverallow base_typeattr_11_26_0 unlabeled_26_0 (fifo_file (create)))
(neverallow base_typeattr_12_26_0 self (capability (mknod)))
(neverallow base_typeattr_13_26_0 self (capability (sys_rawio)))
(neverallow base_typeattr_10_26_0 self (memprotect (mmap_zero)))
(neverallow base_typeattr_10_26_0 self (capability2 (mac_override)))
(neverallow base_typeattr_14_26_0 self (capability2 (mac_admin)))
(neverallow base_typeattr_10_26_0 kernel_26_0 (security (load_policy)))
(neverallow base_typeattr_10_26_0 kernel_26_0 (security (setenforce)))
(neverallow base_typeattr_15_26_0 kernel_26_0 (security (setcheckreqprot)))
(neverallow base_typeattr_10_26_0 kernel_26_0 (security (setbool)))
(neverallow base_typeattr_5_26_0 kernel_26_0 (security (setsecparam)))
(neverallow base_typeattr_16_26_0 hw_random_device_26_0 (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_10_26_0 base_typeattr_17_26_0 (file (entrypoint)))
(neverallow base_typeattr_18_26_0 kmem_device_26_0 (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_10_26_0 kmem_device_26_0 (chr_file (ioctl read write lock relabelfrom append link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_18_26_0 port_device_26_0 (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_10_26_0 port_device_26_0 (chr_file (ioctl read write lock relabelfrom append link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_5_26_0 usermodehelper_26_0 (file (write append)))
(neverallow base_typeattr_5_26_0 proc_security_26_0 (file (read write append open)))
(neverallow base_typeattr_10_26_0 init_26_0 (process (ptrace)))
(neverallow base_typeattr_10_26_0 init_26_0 (binder (impersonate call set_context_mgr transfer)))
(neverallow base_typeattr_19_26_0 block_device_26_0 (blk_file (read write open)))
(neverallow base_typeattr_10_26_0 base_typeattr_10_26_0 (chr_file (rename)))
(neverallow base_typeattr_10_26_0 base_typeattr_10_26_0 (blk_file (rename)))
(neverallow domain device_26_0 (chr_file (read write open)))
(neverallow base_typeattr_20_26_0 base_typeattr_21_26_0 (filesystem (mount remount relabelfrom relabelto)))
(neverallow base_typeattr_22_26_0 base_typeattr_23_26_0 (file (execute)))
(neverallow base_typeattr_24_26_0 base_typeattr_25_26_0 (file (execute)))
(neverallow domain cache_file_26_0 (file (execute)))
(neverallow domain cache_backup_file_26_0 (file (execute)))
(neverallow domain cache_private_backup_file_26_0 (file (execute)))
(neverallow domain cache_recovery_file_26_0 (file (execute)))
(neverallow base_typeattr_26_26_0 base_typeattr_27_26_0 (file (execute execute_no_trans)))
(neverallow base_typeattr_28_26_0 nativetest_data_file_26_0 (file (execute execute_no_trans)))
(neverallow base_typeattr_5_26_0 property_data_file_26_0 (dir (write create setattr relabelfrom link rename add_name remove_name reparent rmdir)))
(neverallow base_typeattr_5_26_0 property_data_file_26_0 (file (write create setattr relabelfrom append unlink link rename execute execute_no_trans)))
(neverallow base_typeattr_5_26_0 property_type (file (write create setattr relabelfrom append unlink link rename execute execute_no_trans)))
(neverallow base_typeattr_5_26_0 properties_device_26_0 (file (write create setattr relabelfrom append unlink link rename execute execute_no_trans)))
(neverallow base_typeattr_5_26_0 properties_serial_26_0 (file (write create setattr relabelfrom append unlink link rename execute execute_no_trans)))
(neverallow base_typeattr_14_26_0 exec_type (file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 exec_type (dir (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 exec_type (lnk_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 exec_type (chr_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 exec_type (blk_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 exec_type (sock_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 exec_type (fifo_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (dir (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (lnk_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (chr_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (blk_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (sock_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 vendor_file_type (fifo_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (dir (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (lnk_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (chr_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (blk_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (sock_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_14_26_0 system_file_26_0 (fifo_file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_29_26_0 exec_type (file (relabelto)))
(neverallow base_typeattr_29_26_0 exec_type (dir (relabelto)))
(neverallow base_typeattr_29_26_0 exec_type (lnk_file (relabelto)))
(neverallow base_typeattr_29_26_0 exec_type (chr_file (relabelto)))
(neverallow base_typeattr_29_26_0 exec_type (blk_file (relabelto)))
(neverallow base_typeattr_29_26_0 exec_type (sock_file (relabelto)))
(neverallow base_typeattr_29_26_0 exec_type (fifo_file (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (file (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (dir (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (lnk_file (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (chr_file (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (blk_file (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (sock_file (relabelto)))
(neverallow base_typeattr_29_26_0 vendor_file_type (fifo_file (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (file (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (dir (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (lnk_file (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (chr_file (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (blk_file (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (sock_file (relabelto)))
(neverallow base_typeattr_29_26_0 system_file_26_0 (fifo_file (relabelto)))
(neverallow base_typeattr_10_26_0 exec_type (file (mounton)))
(neverallow base_typeattr_10_26_0 exec_type (dir (mounton)))
(neverallow base_typeattr_10_26_0 exec_type (lnk_file (mounton)))
(neverallow base_typeattr_10_26_0 exec_type (chr_file (mounton)))
(neverallow base_typeattr_10_26_0 exec_type (blk_file (mounton)))
(neverallow base_typeattr_10_26_0 exec_type (sock_file (mounton)))
(neverallow base_typeattr_10_26_0 exec_type (fifo_file (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (file (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (dir (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (lnk_file (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (chr_file (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (blk_file (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (sock_file (mounton)))
(neverallow base_typeattr_5_26_0 vendor_file_type (fifo_file (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (file (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (dir (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (lnk_file (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (chr_file (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (blk_file (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (sock_file (mounton)))
(neverallow base_typeattr_5_26_0 system_file_26_0 (fifo_file (mounton)))
(neverallow base_typeattr_10_26_0 rootfs_26_0 (file (write create setattr relabelto append unlink link rename)))
(neverallow base_typeattr_10_26_0 base_typeattr_30_26_0 (filesystem (relabelto)))
(neverallow base_typeattr_14_26_0 contextmount_type (file (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_14_26_0 contextmount_type (dir (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_14_26_0 contextmount_type (lnk_file (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_14_26_0 contextmount_type (chr_file (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_14_26_0 contextmount_type (blk_file (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_14_26_0 contextmount_type (sock_file (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_14_26_0 contextmount_type (fifo_file (write create setattr relabelfrom relabelto append unlink link rename)))
(neverallow base_typeattr_10_26_0 default_android_service_26_0 (service_manager (add)))
(neverallow base_typeattr_10_26_0 default_android_vndservice_26_0 (service_manager (add find)))
(neverallow base_typeattr_10_26_0 default_android_hwservice_26_0 (hwservice_manager (add find)))
(neverallow base_typeattr_10_26_0 hidl_base_hwservice_26_0 (hwservice_manager (find)))
(neverallow base_typeattr_5_26_0 default_prop_26_0 (property_service (set)))
(neverallow base_typeattr_5_26_0 mmc_prop_26_0 (property_service (set)))
(neverallow base_typeattr_31_26_0 serialno_prop_26_0 (file (ioctl read getattr lock open)))
(neverallow base_typeattr_32_26_0 firstboot_prop_26_0 (file (ioctl read getattr lock open)))
(neverallow base_typeattr_33_26_0 frp_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow base_typeattr_34_26_0 metadata_block_device_26_0 (blk_file (ioctl read write lock append link rename open)))
(neverallow base_typeattr_35_26_0 system_block_device_26_0 (blk_file (write)))
(neverallow base_typeattr_36_26_0 recovery_block_device_26_0 (blk_file (write)))
(neverallow base_typeattr_37_26_0 misc_block_device_26_0 (blk_file (ioctl read write lock relabelfrom append link rename open)))
(neverallow hal_bootctl unlabeled_26_0 (service_manager (list)))
(neverallow base_typeattr_38_26_0 base_typeattr_10_26_0 (binder (set_context_mgr)))
(neverallow servicemanager_26_0 hwbinder_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow servicemanager_26_0 vndbinder_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow hwservicemanager_26_0 binder_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow hwservicemanager_26_0 vndbinder_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow vndservicemanager_26_0 binder_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow vndservicemanager_26_0 hwbinder_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow base_typeattr_39_26_0 binder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(neverallow base_typeattr_39_26_0 service_manager_type (service_manager (find)))
(neverallow base_typeattr_40_26_0 base_typeattr_41_26_0 (service_manager (find)))
(neverallow base_typeattr_39_26_0 servicemanager_26_0 (binder (call transfer)))
(neverallow binder_in_vendor_violators unlabeled_26_0 (service_manager (list)))
(neverallow base_typeattr_42_26_0 vndbinder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(neverallow ueventd_26_0 vndbinder_device_26_0 (chr_file (ioctl read write append)))
(neverallow base_typeattr_43_26_0 vndservice_manager_type (service_manager (add find list)))
(neverallow base_typeattr_43_26_0 vndservicemanager_26_0 (binder (impersonate call set_context_mgr transfer)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (tcp_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (udp_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (rawip_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (packet_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (key_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (unix_stream_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (unix_dgram_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_route_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_tcpdiag_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_nflog_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_xfrm_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_selinux_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_audit_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_dnrt_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_kobject_uevent_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (appletalk_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (tun_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_iscsi_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_fib_lookup_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_connector_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_netfilter_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_generic_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_scsitransport_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_rdma_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netlink_crypto_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (sctp_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (icmp_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (ax25_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (ipx_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (netrom_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (atmpvc_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (x25_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (rose_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (decnet_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (atmsvc_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (rds_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (irda_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (pppox_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (llc_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (can_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (tipc_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (bluetooth_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (iucv_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (rxrpc_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (isdn_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (phonet_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (ieee802154_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (caif_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (alg_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (nfc_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (vsock_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (kcm_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (qipcrtr_socket (connect sendto)))
(neverallow base_typeattr_44_26_0 base_typeattr_45_26_0 (unix_stream_socket (connectto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (tcp_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (udp_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (rawip_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (packet_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (key_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (unix_stream_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (unix_dgram_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_route_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_tcpdiag_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_nflog_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_xfrm_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_selinux_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_audit_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_dnrt_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_kobject_uevent_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (appletalk_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (tun_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_iscsi_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_fib_lookup_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_connector_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_netfilter_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_generic_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_scsitransport_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_rdma_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netlink_crypto_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (sctp_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (icmp_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (ax25_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (ipx_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (netrom_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (atmpvc_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (x25_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (rose_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (decnet_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (atmsvc_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (rds_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (irda_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (pppox_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (llc_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (can_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (tipc_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (bluetooth_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (iucv_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (rxrpc_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (isdn_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (phonet_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (ieee802154_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (caif_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (alg_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (nfc_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (vsock_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (kcm_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (qipcrtr_socket (connect sendto)))
(neverallow base_typeattr_46_26_0 base_typeattr_47_26_0 (unix_stream_socket (connectto)))
(neverallow socket_between_core_and_vendor_violators unlabeled_26_0 (service_manager (list)))
(neverallow base_typeattr_48_26_0 netd_26_0 (socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (tcp_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (udp_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (rawip_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (packet_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (key_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (unix_stream_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (unix_dgram_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_route_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_tcpdiag_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_nflog_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_xfrm_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_selinux_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_audit_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_dnrt_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_kobject_uevent_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (appletalk_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (tun_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_iscsi_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_fib_lookup_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_connector_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_netfilter_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_generic_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_scsitransport_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_rdma_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netlink_crypto_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (sctp_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (icmp_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (ax25_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (ipx_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (netrom_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (atmpvc_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (x25_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (rose_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (decnet_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (atmsvc_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (rds_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (irda_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (pppox_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (llc_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (can_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (tipc_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (bluetooth_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (iucv_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (rxrpc_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (isdn_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (phonet_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (ieee802154_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (caif_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (alg_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (nfc_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (vsock_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (kcm_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (qipcrtr_socket (connect sendto)))
(neverallow base_typeattr_48_26_0 netd_26_0 (unix_stream_socket (connectto)))
(neverallow base_typeattr_46_26_0 core_data_file_type (sock_file (create setattr lock relabelfrom relabelto unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_46_26_0 coredomain_socket (sock_file (create setattr lock relabelfrom relabelto unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_46_26_0 unlabeled_26_0 (sock_file (create setattr lock relabelfrom relabelto unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_40_26_0 base_typeattr_49_26_0 (sock_file (create setattr lock relabelfrom relabelto unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow pdx_endpoint_socket_type unlabeled_26_0 (service_manager (list)))
(neverallow pdx_channel_socket_type unlabeled_26_0 (service_manager (list)))
(neverallow base_typeattr_50_26_0 base_typeattr_51_26_0 (sock_file (create setattr lock relabelfrom relabelto unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_52_26_0 vendor_app_file_26_0 (dir (read getattr search open)))
(neverallow base_typeattr_52_26_0 vendor_app_file_26_0 (file (ioctl read getattr lock open)))
(neverallow base_typeattr_52_26_0 vendor_app_file_26_0 (lnk_file (ioctl read getattr lock open)))
(neverallow base_typeattr_53_26_0 vendor_overlay_file_26_0 (dir (read getattr search open)))
(neverallow base_typeattr_53_26_0 vendor_overlay_file_26_0 (file (ioctl read getattr lock open)))
(neverallow base_typeattr_53_26_0 vendor_overlay_file_26_0 (lnk_file (ioctl read getattr lock open)))
(neverallow base_typeattr_54_26_0 vendor_shell_exec_26_0 (file (execute execute_no_trans)))
(neverallow base_typeattr_55_26_0 base_typeattr_56_26_0 (file (execute execute_no_trans entrypoint)))
(neverallow vendor_executes_system_violators unlabeled_26_0 (service_manager (list)))
(neverallow base_typeattr_57_26_0 dalvikcache_data_file_26_0 (file (write create setattr relabelfrom append unlink link rename)))
(neverallow base_typeattr_57_26_0 dalvikcache_data_file_26_0 (dir (write create setattr relabelfrom link rename add_name remove_name reparent rmdir)))
(neverallow base_typeattr_58_26_0 zygote_26_0 (unix_stream_socket (connectto)))
(neverallow base_typeattr_59_26_0 zygote_socket_26_0 (sock_file (write)))
(neverallow base_typeattr_60_26_0 webview_zygote_26_0 (unix_stream_socket (connectto)))
(neverallow base_typeattr_59_26_0 webview_zygote_socket_26_0 (sock_file (write)))
(neverallow base_typeattr_61_26_0 tombstoned_26_0 (unix_stream_socket (connectto)))
(neverallow base_typeattr_62_26_0 tombstoned_crash_socket_26_0 (sock_file (write)))
(neverallow base_typeattr_63_26_0 tombstoned_intercept_socket_26_0 (sock_file (write)))
(neverallow base_typeattr_10_26_0 base_typeattr_10_26_0 (sem (create destroy getattr setattr read write associate unix_read unix_write)))
(neverallow base_typeattr_10_26_0 base_typeattr_10_26_0 (msg (send receive)))
(neverallow base_typeattr_10_26_0 base_typeattr_10_26_0 (msgq (create destroy getattr setattr read write associate unix_read unix_write enqueue)))
(neverallow base_typeattr_10_26_0 base_typeattr_10_26_0 (shm (create destroy getattr setattr read write associate unix_read unix_write lock)))
(neverallow base_typeattr_10_26_0 dev_type (lnk_file (mounton)))
(neverallow base_typeattr_10_26_0 dev_type (sock_file (mounton)))
(neverallow base_typeattr_10_26_0 dev_type (fifo_file (mounton)))
(neverallow base_typeattr_10_26_0 fs_type (lnk_file (mounton)))
(neverallow base_typeattr_10_26_0 fs_type (sock_file (mounton)))
(neverallow base_typeattr_10_26_0 fs_type (fifo_file (mounton)))
(neverallow base_typeattr_10_26_0 file_type (lnk_file (mounton)))
(neverallow base_typeattr_10_26_0 file_type (sock_file (mounton)))
(neverallow base_typeattr_10_26_0 file_type (fifo_file (mounton)))
(neverallow base_typeattr_64_26_0 su_exec_26_0 (file (execute execute_no_trans)))
(neverallow base_typeattr_10_26_0 base_typeattr_65_26_0 (file (execmod)))
(neverallow base_typeattr_10_26_0 self (process (execstack execheap)))
(neverallow base_typeattr_66_26_0 file_type (file (execmod)))
(neverallow base_typeattr_5_26_0 proc_26_0 (file (mounton)))
(neverallow base_typeattr_5_26_0 proc_26_0 (dir (mounton)))
(neverallow base_typeattr_67_26_0 domain (process (transition dyntransition)))
(neverallow base_typeattr_68_26_0 system_data_file_26_0 (file (write create setattr relabelfrom append unlink link rename)))
(neverallow installd_26_0 system_data_file_26_0 (file (write create setattr relabelto append link rename execute quotaon mounton execute_no_trans entrypoint execmod audit_access)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (file (create unlink open)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (dir (create unlink open)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (lnk_file (create unlink open)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (chr_file (create unlink open)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (blk_file (create unlink open)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (sock_file (create unlink open)))
(neverallow base_typeattr_69_26_0 system_app_data_file_26_0 (fifo_file (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (file (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (dir (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (lnk_file (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (chr_file (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (blk_file (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (sock_file (create unlink open)))
(neverallow untrusted_app_all system_app_data_file_26_0 (fifo_file (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (file (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (dir (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (lnk_file (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (chr_file (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (blk_file (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (sock_file (create unlink open)))
(neverallow ephemeral_app_26_0 system_app_data_file_26_0 (fifo_file (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (file (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (dir (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (lnk_file (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (chr_file (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (blk_file (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (sock_file (create unlink open)))
(neverallow isolated_app_26_0 system_app_data_file_26_0 (fifo_file (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (file (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (dir (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (lnk_file (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (chr_file (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (blk_file (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (sock_file (create unlink open)))
(neverallow priv_app_26_0 system_app_data_file_26_0 (fifo_file (create unlink open)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (file (create unlink)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (dir (create unlink)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (lnk_file (create unlink)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (chr_file (create unlink)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (blk_file (create unlink)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (sock_file (create unlink)))
(neverallow base_typeattr_70_26_0 app_data_file_26_0 (fifo_file (create unlink)))
(neverallow base_typeattr_71_26_0 shell_26_0 (process (transition dyntransition)))
(neverallow base_typeattr_72_26_0 base_typeattr_73_26_0 (process (transition dyntransition)))
(neverallow base_typeattr_74_26_0 app_data_file_26_0 (lnk_file (read)))
(neverallow base_typeattr_75_26_0 shell_data_file_26_0 (lnk_file (read)))
(neverallow base_typeattr_76_26_0 shell_data_file_26_0 (dir (write create setattr relabelfrom link rename add_name remove_name reparent rmdir)))
(neverallow base_typeattr_77_26_0 shell_data_file_26_0 (dir (search open)))
(neverallow base_typeattr_78_26_0 shell_data_file_26_0 (file (open)))
(neverallow base_typeattr_10_26_0 base_typeattr_79_26_0 (service_manager (list)))
(neverallow base_typeattr_10_26_0 base_typeattr_80_26_0 (hwservice_manager (list)))
(neverallow base_typeattr_10_26_0 domain (file (execute execute_no_trans entrypoint)))
(neverallow base_typeattr_81_26_0 debugfs_26_0 (file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow base_typeattr_82_26_0 profman_exec_26_0 (file (execute execute_no_trans)))
(neverallow base_typeattr_10_26_0 base_typeattr_83_26_0 (system (module_load)))
(neverallow base_typeattr_14_26_0 self (capability (setfcap)))
(neverallow domain crash_dump_26_0 (process (noatsecure)))
(neverallow base_typeattr_84_26_0 coredomain_hwservice (hwservice_manager (add)))
(neverallow base_typeattr_10_26_0 same_process_hwservice (hwservice_manager (add)))
(allow drmserver_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 drmserver_26_0 (dir (search)))
(allow servicemanager_26_0 drmserver_26_0 (file (read open)))
(allow servicemanager_26_0 drmserver_26_0 (process (getattr)))
(allow drmserver_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 drmserver_26_0 (binder (transfer)))
(allow drmserver_26_0 system_server_26_0 (fd (use)))
(allow drmserver_26_0 appdomain (binder (call transfer)))
(allow appdomain drmserver_26_0 (binder (transfer)))
(allow drmserver_26_0 appdomain (fd (use)))
(allow drmserver_26_0 system_server_26_0 (fd (use)))
(allow drmserver_26_0 mediaserver_26_0 (binder (call transfer)))
(allow mediaserver_26_0 drmserver_26_0 (binder (transfer)))
(allow drmserver_26_0 mediaserver_26_0 (fd (use)))
(allow drmserver_26_0 sdcard_type (dir (search)))
(allow drmserver_26_0 drm_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow drmserver_26_0 drm_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow drmserver_26_0 tee_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow drmserver_26_0 app_data_file_26_0 (file (read write getattr)))
(allow drmserver_26_0 sdcard_type (file (read write getattr)))
(allow drmserver_26_0 efs_file_26_0 (dir (ioctl read getattr lock search open)))
(allow drmserver_26_0 efs_file_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 efs_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow drmserver_26_0 apk_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow drmserver_26_0 drmserver_socket_26_0 (sock_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow drmserver_26_0 apk_data_file_26_0 (sock_file (unlink)))
(allow drmserver_26_0 media_rw_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow drmserver_26_0 media_rw_data_file_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 media_rw_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow drmserver_26_0 apk_data_file_26_0 (file (read getattr)))
(allow drmserver_26_0 asec_apk_file_26_0 (file (read getattr)))
(allow drmserver_26_0 ringtone_file_26_0 (file (read getattr)))
(allow drmserver_26_0 radio_data_file_26_0 (file (read getattr)))
(allow drmserver_26_0 oemfs_26_0 (dir (search)))
(allow drmserver_26_0 oemfs_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 drmserver_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_85_26_0 drmserver_service_26_0 (service_manager (add)))
(neverallow drmserver_26_0 unlabeled_26_0 (service_manager (add)))
(allow drmserver_26_0 permission_service_26_0 (service_manager (find)))
(allow drmserver_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow drmserver_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow drmserver_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow drmserver_26_0 kernel_26_0 (security (compute_av)))
(allow drmserver_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(allow drmserver_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow drmserver_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow drmserver_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow drmserver_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow dumpstate_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 dumpstate_26_0 (dir (search)))
(allow servicemanager_26_0 dumpstate_26_0 (file (read open)))
(allow servicemanager_26_0 dumpstate_26_0 (process (getattr)))
(allow dumpstate_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow dumpstate_26_0 self (capability2 (block_suspend)))
(allow dumpstate_26_0 self (capability (setgid setuid sys_resource)))
(allow dumpstate_26_0 domain (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 domain (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 domain (lnk_file (ioctl read getattr lock open)))
(allow dumpstate_26_0 self (capability (kill net_admin net_raw)))
(allow dumpstate_26_0 system_file_26_0 (file (execute_no_trans)))
(allow dumpstate_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dumpstate_26_0 self (capability (chown dac_override fowner fsetid)))
(allow dumpstate_26_0 anr_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow dumpstate_26_0 anr_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow dumpstate_26_0 system_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 self (capability2 (syslog)))
(allow dumpstate_26_0 kernel_26_0 (system (syslog_read)))
(allow dumpstate_26_0 pstorefs_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 domain (process (getattr)))
(allow dumpstate_26_0 appdomain (process (signal)))
(allow dumpstate_26_0 system_server_26_0 (process (signal)))
(allow dumpstate_26_0 hal_audio_server (process (signal)))
(allow dumpstate_26_0 hal_bluetooth_server (process (signal)))
(allow dumpstate_26_0 hal_camera_server (process (signal)))
(allow dumpstate_26_0 hal_graphics_composer_server (process (signal)))
(allow dumpstate_26_0 hal_vr_server (process (signal)))
(allow dumpstate_26_0 audioserver_26_0 (process (signal)))
(allow dumpstate_26_0 cameraserver_26_0 (process (signal)))
(allow dumpstate_26_0 drmserver_26_0 (process (signal)))
(allow dumpstate_26_0 inputflinger_26_0 (process (signal)))
(allow dumpstate_26_0 mediacodec_26_0 (process (signal)))
(allow dumpstate_26_0 mediadrmserver_26_0 (process (signal)))
(allow dumpstate_26_0 mediaextractor_26_0 (process (signal)))
(allow dumpstate_26_0 mediaserver_26_0 (process (signal)))
(allow dumpstate_26_0 sdcardd_26_0 (process (signal)))
(allow dumpstate_26_0 surfaceflinger_26_0 (process (signal)))
(allow dumpstate_26_0 tombstoned_intercept_socket_26_0 (sock_file (write)))
(allow dumpstate_26_0 tombstoned_26_0 (unix_stream_socket (connectto)))
(allow dumpstate_26_0 sysfs_usb_26_0 (file (write lock append open)))
(allow dumpstate_26_0 qtaguid_proc_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 debugfs_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 block_device_26_0 (dir (getattr search)))
(allow dumpstate_26_0 storage_file_26_0 (dir (getattr search)))
(allow dumpstate_26_0 fuse_device_26_0 (chr_file (getattr)))
(allow dumpstate_26_0 dm_device_26_0 (blk_file (getattr)))
(allow dumpstate_26_0 cache_block_device_26_0 (blk_file (getattr)))
(allow dumpstate_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow dumpstate_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain dumpstate_26_0 (binder (transfer)))
(allow dumpstate_26_0 binderservicedomain (fd (use)))
(allow dumpstate_26_0 appdomain (binder (call transfer)))
(allow dumpstate_26_0 netd_26_0 (binder (call transfer)))
(allow dumpstate_26_0 wificond_26_0 (binder (call transfer)))
(allow appdomain dumpstate_26_0 (binder (transfer)))
(allow netd_26_0 dumpstate_26_0 (binder (transfer)))
(allow wificond_26_0 dumpstate_26_0 (binder (transfer)))
(allow dumpstate_26_0 appdomain (fd (use)))
(allow dumpstate_26_0 netd_26_0 (fd (use)))
(allow dumpstate_26_0 wificond_26_0 (fd (use)))
(allow dumpstate_26_0 sysfs_vibrator_26_0 (file (ioctl read write getattr lock append open)))
(allow dumpstate_26_0 self (capability (sys_ptrace)))
(allow dumpstate_26_0 shell_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow dumpstate_26_0 shell_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow dumpstate_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dumpstate_26_0 zygote_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dumpstate_26_0 ashmem_device_26_0 (chr_file (execute)))
(allow dumpstate_26_0 self (process (execmem)))
(allow dumpstate_26_0 dalvikcache_data_file_26_0 (dir (getattr search)))
(allow dumpstate_26_0 dalvikcache_data_file_26_0 (file (ioctl read getattr lock execute open)))
(allow dumpstate_26_0 dalvikcache_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow dumpstate_26_0 bluetooth_data_file_26_0 (dir (search)))
(allow dumpstate_26_0 bluetooth_logs_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 bluetooth_logs_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow dumpstate_26_0 logcat_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow dumpstate_26_0 logdr_socket_26_0 (sock_file (write)))
(allow dumpstate_26_0 logd_26_0 (unix_stream_socket (connectto)))
(allow dumpstate_26_0 logd_socket_26_0 (sock_file (write)))
(allow dumpstate_26_0 logd_26_0 (unix_stream_socket (connectto)))
(allow dumpstate_26_0 runtime_event_log_tags_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 net_data_file_26_0 (dir (search)))
(allow dumpstate_26_0 net_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 self (netlink_tcpdiag_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown nlmsg_read)))
(allow dumpstate_26_0 tombstone_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 tombstone_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 cache_recovery_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 cache_recovery_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 recovery_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 recovery_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 user_profile_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 user_profile_data_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 misc_logd_file_26_0 (dir (ioctl read getattr lock search open)))
(allow dumpstate_26_0 misc_logd_file_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 base_typeattr_86_26_0 (service_manager (find)))
(allow dumpstate_26_0 servicemanager_26_0 (service_manager (list)))
(allow dumpstate_26_0 hwservicemanager_26_0 (hwservice_manager (list)))
(allow dumpstate_26_0 devpts_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow dumpstate_26_0 property_socket_26_0 (sock_file (write)))
(allow dumpstate_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow dumpstate_26_0 dumpstate_prop_26_0 (property_service (set)))
(allow dumpstate_26_0 dumpstate_prop_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 property_socket_26_0 (sock_file (write)))
(allow dumpstate_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow dumpstate_26_0 dumpstate_options_prop_26_0 (property_service (set)))
(allow dumpstate_26_0 dumpstate_options_prop_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 serialno_prop_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 device_logging_prop_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 media_rw_data_file_26_0 (dir (getattr)))
(allow dumpstate_26_0 proc_interrupts_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 proc_zoneinfo_26_0 (file (ioctl read getattr lock open)))
(allow dumpstate_26_0 dumpstate_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_87_26_0 dumpstate_service_26_0 (service_manager (add)))
(neverallow dumpstate_26_0 unlabeled_26_0 (service_manager (add)))
(neverallow dumpstate_26_0 base_typeattr_10_26_0 (process (ptrace)))
(neverallow base_typeattr_88_26_0 dumpstate_service_26_0 (service_manager (find)))
(neverallow dumpstate_26_0 sysfs_26_0 (file (write create setattr relabelfrom append unlink link rename)))
(allow fs_type self (filesystem (associate)))
(allow sysfs_type sysfs_26_0 (filesystem (associate)))
(allow debugfs_type debugfs_26_0 (filesystem (associate)))
(allow debugfs_type debugfs_tracing_26_0 (filesystem (associate)))
(allow file_type labeledfs_26_0 (filesystem (associate)))
(allow file_type tmpfs_26_0 (filesystem (associate)))
(allow file_type rootfs_26_0 (filesystem (associate)))
(allow dev_type tmpfs_26_0 (filesystem (associate)))
(allow app_fuse_file_26_0 app_fusefs_26_0 (filesystem (associate)))
(allow postinstall_file_26_0 self (filesystem (associate)))
(neverallow fs_type file_type (filesystem (associate)))
(allow fingerprintd_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 fingerprintd_26_0 (dir (search)))
(allow servicemanager_26_0 fingerprintd_26_0 (file (read open)))
(allow servicemanager_26_0 fingerprintd_26_0 (process (getattr)))
(allow fingerprintd_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow fingerprintd_26_0 fingerprintd_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_89_26_0 fingerprintd_service_26_0 (service_manager (add)))
(neverallow fingerprintd_26_0 unlabeled_26_0 (service_manager (add)))
(allow fingerprintd_26_0 fingerprintd_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow fingerprintd_26_0 fingerprintd_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow keystore_26_0 fingerprintd_26_0 (dir (search)))
(allow keystore_26_0 fingerprintd_26_0 (file (read open)))
(allow keystore_26_0 fingerprintd_26_0 (process (getattr)))
(allow fingerprintd_26_0 keystore_service_26_0 (service_manager (find)))
(allow fingerprintd_26_0 keystore_26_0 (binder (call transfer)))
(allow keystore_26_0 fingerprintd_26_0 (binder (transfer)))
(allow fingerprintd_26_0 keystore_26_0 (fd (use)))
(allow fingerprintd_26_0 keystore_26_0 (keystore_key (add_auth)))
(allow fingerprintd_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 fingerprintd_26_0 (binder (transfer)))
(allow fingerprintd_26_0 system_server_26_0 (fd (use)))
(allow fingerprintd_26_0 permission_service_26_0 (service_manager (find)))
(allow fingerprintd_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow fingerprintd_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow fingerprintd_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow fingerprintd_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow fingerprintd_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow fingerprintd_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow fingerprintd_26_0 ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow fsck_26_0 tmpfs_26_0 (chr_file (ioctl read write)))
(allow fsck_26_0 devpts_26_0 (chr_file (ioctl read write getattr)))
(allow fsck_26_0 vold_26_0 (fd (use)))
(allow fsck_26_0 vold_26_0 (fifo_file (read write getattr)))
(allow fsck_26_0 block_device_26_0 (dir (search)))
(allow fsck_26_0 userdata_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow fsck_26_0 cache_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow fsck_26_0 dm_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow fsck_26_0 dev_type (blk_file (getattr)))
(allow fsck_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow fsck_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow fsck_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow fsck_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(neverallow fsck_26_0 vold_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 root_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 frp_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 system_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 recovery_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 boot_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 swap_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_26_0 metadata_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow base_typeattr_90_26_0 fsck_26_0 (process (transition)))
(neverallow base_typeattr_10_26_0 fsck_26_0 (process (dyntransition)))
(neverallow fsck_26_0 base_typeattr_91_26_0 (file (entrypoint)))
(allow fsck_untrusted_26_0 devpts_26_0 (chr_file (ioctl read write getattr)))
(allow fsck_untrusted_26_0 vold_26_0 (fd (use)))
(allow fsck_untrusted_26_0 vold_26_0 (fifo_file (read write getattr)))
(allow fsck_untrusted_26_0 block_device_26_0 (dir (search)))
(allow fsck_untrusted_26_0 vold_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow fsck_untrusted_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow fsck_untrusted_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow fsck_untrusted_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow fsck_untrusted_26_0 dev_type (blk_file (getattr)))
(neverallow fsck_untrusted_26_0 dm_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 root_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 frp_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 system_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 recovery_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 boot_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 userdata_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 cache_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 swap_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow fsck_untrusted_26_0 metadata_block_device_26_0 (blk_file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(neverallow base_typeattr_92_26_0 fsck_untrusted_26_0 (process (transition)))
(neverallow base_typeattr_10_26_0 fsck_untrusted_26_0 (process (dyntransition)))
(neverallow fsck_untrusted_26_0 base_typeattr_91_26_0 (file (entrypoint)))
(allow gatekeeperd_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 gatekeeperd_26_0 (dir (search)))
(allow servicemanager_26_0 gatekeeperd_26_0 (file (read open)))
(allow servicemanager_26_0 gatekeeperd_26_0 (process (getattr)))
(allow gatekeeperd_26_0 tee_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow gatekeeperd_26_0 ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow gatekeeperd_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow gatekeeperd_26_0 gatekeeper_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_93_26_0 gatekeeper_service_26_0 (service_manager (add)))
(neverallow gatekeeperd_26_0 unlabeled_26_0 (service_manager (add)))
(allow keystore_26_0 gatekeeperd_26_0 (dir (search)))
(allow keystore_26_0 gatekeeperd_26_0 (file (read open)))
(allow keystore_26_0 gatekeeperd_26_0 (process (getattr)))
(allow gatekeeperd_26_0 keystore_service_26_0 (service_manager (find)))
(allow gatekeeperd_26_0 keystore_26_0 (binder (call transfer)))
(allow keystore_26_0 gatekeeperd_26_0 (binder (transfer)))
(allow gatekeeperd_26_0 keystore_26_0 (fd (use)))
(allow gatekeeperd_26_0 keystore_26_0 (keystore_key (add_auth)))
(allow gatekeeperd_26_0 system_server_26_0 (binder (call)))
(allow gatekeeperd_26_0 permission_service_26_0 (service_manager (find)))
(allow gatekeeperd_26_0 user_service_26_0 (service_manager (find)))
(allow gatekeeperd_26_0 gatekeeper_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow gatekeeperd_26_0 gatekeeper_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow gatekeeperd_26_0 hardware_properties_service_26_0 (service_manager (find)))
(allow gatekeeperd_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow gatekeeperd_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow gatekeeperd_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_allocator_client hal_allocator_server (binder (call transfer)))
(allow hal_allocator_server hal_allocator_client (binder (transfer)))
(allow hal_allocator_client hal_allocator_server (fd (use)))
(allow hal_allocator_server hidl_allocator_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_allocator_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_94_26_0 hidl_allocator_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_allocator_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_allocator_client hidl_allocator_hwservice_26_0 (hwservice_manager (find)))
(allow hal_allocator_client hidl_memory_hwservice_26_0 (hwservice_manager (find)))
(allow hal_audio_client hal_audio_server (binder (call transfer)))
(allow hal_audio_server hal_audio_client (binder (transfer)))
(allow hal_audio_client hal_audio_server (fd (use)))
(allow hal_audio_server hal_audio_client (binder (call transfer)))
(allow hal_audio_client hal_audio_server (binder (transfer)))
(allow hal_audio_server hal_audio_client (fd (use)))
(allow hal_audio_server hal_audio_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_audio_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_95_26_0 hal_audio_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_audio_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_audio_client hal_audio_hwservice_26_0 (hwservice_manager (find)))
(allow hal_audio ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow hal_audio audiohal_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_audio audiohal_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_audio proc_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_audio proc_26_0 (file (ioctl read getattr lock open)))
(allow hal_audio proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_audio audio_device_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_audio audio_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_audio shell_26_0 (fd (use)))
(allow hal_audio shell_26_0 (fifo_file (write)))
(allow hal_audio dumpstate_26_0 (fd (use)))
(allow hal_audio dumpstate_26_0 (fifo_file (write)))
(neverallow hal_audio fs_type (file (execute_no_trans)))
(neverallow hal_audio file_type (file (execute_no_trans)))
(neverallow hal_audio domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow hal_audio domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow hal_audio domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow base_typeattr_96_26_0 audio_device_26_0 (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(allow hal_bluetooth_client hal_bluetooth_server (binder (call transfer)))
(allow hal_bluetooth_server hal_bluetooth_client (binder (transfer)))
(allow hal_bluetooth_client hal_bluetooth_server (fd (use)))
(allow hal_bluetooth_server hal_bluetooth_client (binder (call transfer)))
(allow hal_bluetooth_client hal_bluetooth_server (binder (transfer)))
(allow hal_bluetooth_server hal_bluetooth_client (fd (use)))
(allow hal_bluetooth_server hal_bluetooth_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_bluetooth_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_97_26_0 hal_bluetooth_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_bluetooth_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_bluetooth_client hal_bluetooth_hwservice_26_0 (hwservice_manager (find)))
(allow hal_bluetooth sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow hal_bluetooth self (capability2 (block_suspend)))
(allow hal_bluetooth self (capability (net_admin)))
(allow hal_bluetooth bluetooth_efs_file_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_bluetooth bluetooth_efs_file_26_0 (file (ioctl read getattr lock open)))
(allow hal_bluetooth bluetooth_efs_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_bluetooth uhid_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_bluetooth hci_attach_dev_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_bluetooth sysfs_type (dir (ioctl read getattr lock search open)))
(allow hal_bluetooth sysfs_type (file (ioctl read getattr lock open)))
(allow hal_bluetooth sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow hal_bluetooth sysfs_bluetooth_writable_26_0 (file (ioctl read write getattr lock append open)))
(allow hal_bluetooth self (capability2 (wake_alarm)))
(allow hal_bluetooth property_socket_26_0 (sock_file (write)))
(allow hal_bluetooth init_26_0 (unix_stream_socket (connectto)))
(allow hal_bluetooth bluetooth_prop_26_0 (property_service (set)))
(allow hal_bluetooth bluetooth_prop_26_0 (file (ioctl read getattr lock open)))
(allow hal_bluetooth proc_bluetooth_writable_26_0 (file (ioctl read write getattr lock append open)))
(allow hal_bluetooth self (capability (sys_nice)))
(allow hal_bootctl_client hal_bootctl_server (binder (call transfer)))
(allow hal_bootctl_server hal_bootctl_client (binder (transfer)))
(allow hal_bootctl_client hal_bootctl_server (fd (use)))
(allow hal_bootctl_server hal_bootctl_client (binder (call transfer)))
(allow hal_bootctl_client hal_bootctl_server (binder (transfer)))
(allow hal_bootctl_server hal_bootctl_client (fd (use)))
(allow hal_bootctl_server hal_bootctl_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_bootctl_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_98_26_0 hal_bootctl_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_bootctl_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_bootctl_client hal_bootctl_hwservice_26_0 (hwservice_manager (find)))
(allow hal_camera_client hal_camera_server (binder (call transfer)))
(allow hal_camera_server hal_camera_client (binder (transfer)))
(allow hal_camera_client hal_camera_server (fd (use)))
(allow hal_camera_server hal_camera_client (binder (call transfer)))
(allow hal_camera_client hal_camera_server (binder (transfer)))
(allow hal_camera_server hal_camera_client (fd (use)))
(allow hal_camera_server hal_camera_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_camera_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_99_26_0 hal_camera_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_camera_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_camera_client hal_camera_hwservice_26_0 (hwservice_manager (find)))
(allow hal_camera camera_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_camera camera_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_camera video_device_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_camera video_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_camera camera_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_camera ion_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_camera_client hal_graphics_allocator (fd (use)))
(allow hal_camera_server hal_graphics_allocator (fd (use)))
(allow hal_camera base_typeattr_100_26_0 (fd (use)))
(allow hal_camera surfaceflinger_26_0 (fd (use)))
(allow hal_camera hal_allocator_server (fd (use)))
(neverallow hal_camera fs_type (file (execute_no_trans)))
(neverallow hal_camera file_type (file (execute_no_trans)))
(neverallow hal_camera domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow hal_camera domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow hal_camera domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow base_typeattr_101_26_0 camera_device_26_0 (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(allow hal_configstore_client hal_configstore_server (binder (call transfer)))
(allow hal_configstore_server hal_configstore_client (binder (transfer)))
(allow hal_configstore_client hal_configstore_server (fd (use)))
(allow hal_configstore_server hal_configstore_ISurfaceFlingerConfigs_26_0 (hwservice_manager (add find)))
(allow hal_configstore_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_102_26_0 hal_configstore_ISurfaceFlingerConfigs_26_0 (hwservice_manager (add)))
(neverallow hal_configstore_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_contexthub_client hal_contexthub_server (binder (call transfer)))
(allow hal_contexthub_server hal_contexthub_client (binder (transfer)))
(allow hal_contexthub_client hal_contexthub_server (fd (use)))
(allow hal_contexthub_server hal_contexthub_client (binder (call transfer)))
(allow hal_contexthub_client hal_contexthub_server (binder (transfer)))
(allow hal_contexthub_server hal_contexthub_client (fd (use)))
(allow hal_contexthub_server hal_contexthub_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_contexthub_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_103_26_0 hal_contexthub_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_contexthub_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_contexthub_client hal_contexthub_hwservice_26_0 (hwservice_manager (find)))
(allow hal_drm_client hal_drm_server (binder (call transfer)))
(allow hal_drm_server hal_drm_client (binder (transfer)))
(allow hal_drm_client hal_drm_server (fd (use)))
(allow hal_drm_server hal_drm_client (binder (call transfer)))
(allow hal_drm_client hal_drm_server (binder (transfer)))
(allow hal_drm_server hal_drm_client (fd (use)))
(allow hal_drm_server hal_drm_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_drm_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_104_26_0 hal_drm_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_drm_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_drm_client hal_drm_hwservice_26_0 (hwservice_manager (find)))
(allow hal_drm hidl_memory_hwservice_26_0 (hwservice_manager (find)))
(allow hal_drm self (process (execmem)))
(allow hal_drm serialno_prop_26_0 (file (ioctl read getattr lock open)))
(allow hal_drm system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_drm system_file_26_0 (file (ioctl read getattr lock open)))
(allow hal_drm system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_drm system_data_file_26_0 (dir (getattr search)))
(allow hal_drm system_data_file_26_0 (file (read getattr)))
(allow hal_drm system_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_drm cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_drm cgroup_26_0 (file (ioctl read getattr lock open)))
(allow hal_drm cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_drm cgroup_26_0 (dir (write search)))
(allow hal_drm cgroup_26_0 (file (write lock append open)))
(allow hal_drm ion_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_drm hal_graphics_allocator (fd (use)))
(allow hal_drm mediaserver_26_0 (fd (use)))
(allow hal_drm media_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_drm media_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_drm media_data_file_26_0 (file (read getattr)))
(allow hal_drm sysfs_26_0 (file (ioctl read getattr lock open)))
(allow hal_drm tee_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allowx hal_drm self (ioctl tcp_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx hal_drm self (ioctl udp_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx hal_drm self (ioctl rawip_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx hal_drm self (ioctl tcp_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx hal_drm self (ioctl udp_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx hal_drm self (ioctl rawip_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx hal_drm self (ioctl tcp_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx hal_drm self (ioctl udp_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx hal_drm self (ioctl rawip_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(neverallow hal_drm fs_type (file (execute_no_trans)))
(neverallow hal_drm file_type (file (execute_no_trans)))
(neverallowx hal_drm domain (ioctl tcp_socket (0x6900 0x6902)))
(neverallowx hal_drm domain (ioctl udp_socket (0x6900 0x6902)))
(neverallowx hal_drm domain (ioctl rawip_socket (0x6900 0x6902)))
(neverallowx hal_drm domain (ioctl tcp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx hal_drm domain (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx hal_drm domain (ioctl rawip_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx hal_drm domain (ioctl tcp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx hal_drm domain (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx hal_drm domain (ioctl rawip_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow hal_dumpstate_client hal_dumpstate_server (binder (call transfer)))
(allow hal_dumpstate_server hal_dumpstate_client (binder (transfer)))
(allow hal_dumpstate_client hal_dumpstate_server (fd (use)))
(allow hal_dumpstate_server hal_dumpstate_client (binder (call transfer)))
(allow hal_dumpstate_client hal_dumpstate_server (binder (transfer)))
(allow hal_dumpstate_server hal_dumpstate_client (fd (use)))
(allow hal_dumpstate_server hal_dumpstate_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_dumpstate_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_105_26_0 hal_dumpstate_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_dumpstate_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_dumpstate_client hal_dumpstate_hwservice_26_0 (hwservice_manager (find)))
(allow hal_dumpstate shell_data_file_26_0 (file (write)))
(allow hal_dumpstate proc_interrupts_26_0 (file (ioctl read getattr lock open)))
(allow hal_fingerprint_client hal_fingerprint_server (binder (call transfer)))
(allow hal_fingerprint_server hal_fingerprint_client (binder (transfer)))
(allow hal_fingerprint_client hal_fingerprint_server (fd (use)))
(allow hal_fingerprint_server hal_fingerprint_client (binder (call transfer)))
(allow hal_fingerprint_client hal_fingerprint_server (binder (transfer)))
(allow hal_fingerprint_server hal_fingerprint_client (fd (use)))
(allow hal_fingerprint_server hal_fingerprint_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_fingerprint_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_106_26_0 hal_fingerprint_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_fingerprint_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_fingerprint_client hal_fingerprint_hwservice_26_0 (hwservice_manager (find)))
(allow hal_fingerprint fingerprintd_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_fingerprint fingerprintd_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow hal_fingerprint ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow hal_fingerprint cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_fingerprint cgroup_26_0 (file (ioctl read getattr lock open)))
(allow hal_fingerprint cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_fingerprint sysfs_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_fingerprint sysfs_26_0 (file (ioctl read getattr lock open)))
(allow hal_fingerprint sysfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_gatekeeper_client hal_gatekeeper_server (binder (call transfer)))
(allow hal_gatekeeper_server hal_gatekeeper_client (binder (transfer)))
(allow hal_gatekeeper_client hal_gatekeeper_server (fd (use)))
(allow hal_gatekeeper_server hal_gatekeeper_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_gatekeeper_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_107_26_0 hal_gatekeeper_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_gatekeeper_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_gatekeeper_client hal_gatekeeper_hwservice_26_0 (hwservice_manager (find)))
(allow hal_gatekeeper tee_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_gatekeeper ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow hal_gnss_client hal_gnss_server (binder (call transfer)))
(allow hal_gnss_server hal_gnss_client (binder (transfer)))
(allow hal_gnss_client hal_gnss_server (fd (use)))
(allow hal_gnss_server hal_gnss_client (binder (call transfer)))
(allow hal_gnss_client hal_gnss_server (binder (transfer)))
(allow hal_gnss_server hal_gnss_client (fd (use)))
(allow hal_gnss_server hal_gnss_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_gnss_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_108_26_0 hal_gnss_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_gnss_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_gnss_client hal_gnss_hwservice_26_0 (hwservice_manager (find)))
(allow hal_graphics_allocator_client hal_graphics_allocator_server (binder (call transfer)))
(allow hal_graphics_allocator_server hal_graphics_allocator_client (binder (transfer)))
(allow hal_graphics_allocator_client hal_graphics_allocator_server (fd (use)))
(allow hal_graphics_allocator_server hal_graphics_allocator_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_graphics_allocator_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_109_26_0 hal_graphics_allocator_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_graphics_allocator_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_graphics_allocator_client hal_graphics_allocator_hwservice_26_0 (hwservice_manager (find)))
(allow hal_graphics_allocator_client hal_graphics_mapper_hwservice_26_0 (hwservice_manager (find)))
(allow hal_graphics_allocator gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_graphics_allocator ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow hal_graphics_allocator self (capability (sys_nice)))
(allow hal_graphics_composer_client hal_graphics_composer_server (binder (call transfer)))
(allow hal_graphics_composer_server hal_graphics_composer_client (binder (transfer)))
(allow hal_graphics_composer_client hal_graphics_composer_server (fd (use)))
(allow hal_graphics_composer_server hal_graphics_composer_client (binder (call transfer)))
(allow hal_graphics_composer_client hal_graphics_composer_server (binder (transfer)))
(allow hal_graphics_composer_server hal_graphics_composer_client (fd (use)))
(allow hal_graphics_composer_server hal_graphics_composer_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_graphics_composer_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_110_26_0 hal_graphics_composer_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_graphics_composer_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_graphics_composer_client hal_graphics_composer_hwservice_26_0 (hwservice_manager (find)))
(allow hal_graphics_composer_server hal_graphics_mapper_hwservice_26_0 (hwservice_manager (find)))
(allow hal_graphics_composer gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_graphics_composer ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow hal_graphics_composer hal_graphics_allocator (fd (use)))
(allow hal_graphics_composer graphics_device_26_0 (dir (search)))
(allow hal_graphics_composer graphics_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_graphics_composer system_server_26_0 (fd (use)))
(allow hal_graphics_composer bootanim_26_0 (fd (use)))
(allow hal_graphics_composer appdomain (fd (use)))
(allow hal_graphics_composer self (capability (sys_nice)))
(allow hal_health_client hal_health_server (binder (call transfer)))
(allow hal_health_server hal_health_client (binder (transfer)))
(allow hal_health_client hal_health_server (fd (use)))
(allow hal_health_server hal_health_client (binder (call transfer)))
(allow hal_health_client hal_health_server (binder (transfer)))
(allow hal_health_server hal_health_client (fd (use)))
(allow hal_health_server hal_health_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_health_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_111_26_0 hal_health_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_health_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_health_client hal_health_hwservice_26_0 (hwservice_manager (find)))
(allow hal_health system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_health system_file_26_0 (file (ioctl read getattr lock open)))
(allow hal_health system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_ir_client hal_ir_server (binder (call transfer)))
(allow hal_ir_server hal_ir_client (binder (transfer)))
(allow hal_ir_client hal_ir_server (fd (use)))
(allow hal_ir_server hal_ir_client (binder (call transfer)))
(allow hal_ir_client hal_ir_server (binder (transfer)))
(allow hal_ir_server hal_ir_client (fd (use)))
(allow hal_ir_server hal_ir_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_ir_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_112_26_0 hal_ir_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_ir_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_ir_client hal_ir_hwservice_26_0 (hwservice_manager (find)))
(allow hal_keymaster_client hal_keymaster_server (binder (call transfer)))
(allow hal_keymaster_server hal_keymaster_client (binder (transfer)))
(allow hal_keymaster_client hal_keymaster_server (fd (use)))
(allow hal_keymaster_server hal_keymaster_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_keymaster_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_113_26_0 hal_keymaster_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_keymaster_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_keymaster_client hal_keymaster_hwservice_26_0 (hwservice_manager (find)))
(allow hal_keymaster tee_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_keymaster ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow hal_light_client hal_light_server (binder (call transfer)))
(allow hal_light_server hal_light_client (binder (transfer)))
(allow hal_light_client hal_light_server (fd (use)))
(allow hal_light_server hal_light_client (binder (call transfer)))
(allow hal_light_client hal_light_server (binder (transfer)))
(allow hal_light_server hal_light_client (fd (use)))
(allow hal_light_server hal_light_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_light_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_114_26_0 hal_light_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_light_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_light_client hal_light_hwservice_26_0 (hwservice_manager (find)))
(allow hal_light sysfs_leds_26_0 (lnk_file (read)))
(allow hal_light sysfs_leds_26_0 (file (ioctl read write getattr lock append open)))
(allow hal_light sysfs_leds_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_memtrack_client hal_memtrack_server (binder (call transfer)))
(allow hal_memtrack_server hal_memtrack_client (binder (transfer)))
(allow hal_memtrack_client hal_memtrack_server (fd (use)))
(allow hal_memtrack_server hal_memtrack_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_memtrack_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_115_26_0 hal_memtrack_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_memtrack_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_memtrack_client hal_memtrack_hwservice_26_0 (hwservice_manager (find)))
(neverallow base_typeattr_116_26_0 self (capability (net_admin net_raw)))
(neverallow base_typeattr_117_26_0 domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow base_typeattr_117_26_0 domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow base_typeattr_117_26_0 domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow hal_tetheroffload_server unlabeled_26_0 (service_manager (list)))
(neverallow base_typeattr_118_26_0 fs_type (file (execute_no_trans)))
(neverallow base_typeattr_118_26_0 file_type (file (execute_no_trans)))
(neverallow base_typeattr_5_26_0 halserverdomain (process (transition)))
(neverallow base_typeattr_10_26_0 halserverdomain (process (dyntransition)))
(allow hal_nfc_client hal_nfc_server (binder (call transfer)))
(allow hal_nfc_server hal_nfc_client (binder (transfer)))
(allow hal_nfc_client hal_nfc_server (fd (use)))
(allow hal_nfc_server hal_nfc_client (binder (call transfer)))
(allow hal_nfc_client hal_nfc_server (binder (transfer)))
(allow hal_nfc_server hal_nfc_client (fd (use)))
(allow hal_nfc_server hal_nfc_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_nfc_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_119_26_0 hal_nfc_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_nfc_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_nfc_client hal_nfc_hwservice_26_0 (hwservice_manager (find)))
(allow hal_nfc property_socket_26_0 (sock_file (write)))
(allow hal_nfc init_26_0 (unix_stream_socket (connectto)))
(allow hal_nfc nfc_prop_26_0 (property_service (set)))
(allow hal_nfc nfc_prop_26_0 (file (ioctl read getattr lock open)))
(allow hal_nfc nfc_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow hal_nfc nfc_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_nfc nfc_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_nfc nfc_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_nfc nfc_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_oemlock_client hal_oemlock_server (binder (call transfer)))
(allow hal_oemlock_server hal_oemlock_client (binder (transfer)))
(allow hal_oemlock_client hal_oemlock_server (fd (use)))
(allow hal_oemlock_server hal_oemlock_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_oemlock_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_120_26_0 hal_oemlock_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_oemlock_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_oemlock_client hal_oemlock_hwservice_26_0 (hwservice_manager (find)))
(allow hal_power_client hal_power_server (binder (call transfer)))
(allow hal_power_server hal_power_client (binder (transfer)))
(allow hal_power_client hal_power_server (fd (use)))
(allow hal_power_server hal_power_client (binder (call transfer)))
(allow hal_power_client hal_power_server (binder (transfer)))
(allow hal_power_server hal_power_client (fd (use)))
(allow hal_power_server hal_power_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_power_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_121_26_0 hal_power_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_power_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_power_client hal_power_hwservice_26_0 (hwservice_manager (find)))
(allow hal_sensors_client hal_sensors_server (binder (call transfer)))
(allow hal_sensors_server hal_sensors_client (binder (transfer)))
(allow hal_sensors_client hal_sensors_server (fd (use)))
(allow hal_sensors_server hal_sensors_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_sensors_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_122_26_0 hal_sensors_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_sensors_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_sensors_client hal_sensors_hwservice_26_0 (hwservice_manager (find)))
(allow hal_sensors base_typeattr_100_26_0 (fd (use)))
(allow hal_sensors hal_allocator (fd (use)))
(allow hal_sensors self (capability (sys_nice)))
(allow hal_telephony_client hal_telephony_server (binder (call transfer)))
(allow hal_telephony_server hal_telephony_client (binder (transfer)))
(allow hal_telephony_client hal_telephony_server (fd (use)))
(allow hal_telephony_server hal_telephony_client (binder (call transfer)))
(allow hal_telephony_client hal_telephony_server (binder (transfer)))
(allow hal_telephony_server hal_telephony_client (fd (use)))
(allow hal_telephony_server hal_telephony_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_telephony_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_123_26_0 hal_telephony_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_telephony_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_telephony_client hal_telephony_hwservice_26_0 (hwservice_manager (find)))
(allow hal_tetheroffload_client hal_tetheroffload_server (binder (call transfer)))
(allow hal_tetheroffload_server hal_tetheroffload_client (binder (transfer)))
(allow hal_tetheroffload_client hal_tetheroffload_server (fd (use)))
(allow hal_tetheroffload_server hal_tetheroffload_client (binder (call transfer)))
(allow hal_tetheroffload_client hal_tetheroffload_server (binder (transfer)))
(allow hal_tetheroffload_server hal_tetheroffload_client (fd (use)))
(allow hal_thermal_client hal_thermal_server (binder (call transfer)))
(allow hal_thermal_server hal_thermal_client (binder (transfer)))
(allow hal_thermal_client hal_thermal_server (fd (use)))
(allow hal_thermal_server hal_thermal_client (binder (call transfer)))
(allow hal_thermal_client hal_thermal_server (binder (transfer)))
(allow hal_thermal_server hal_thermal_client (fd (use)))
(allow hal_thermal_server hal_thermal_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_thermal_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_124_26_0 hal_thermal_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_thermal_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_thermal_client hal_thermal_hwservice_26_0 (hwservice_manager (find)))
(allow hal_tv_cec_client hal_tv_cec_server (binder (call transfer)))
(allow hal_tv_cec_server hal_tv_cec_client (binder (transfer)))
(allow hal_tv_cec_client hal_tv_cec_server (fd (use)))
(allow hal_tv_cec_server hal_tv_cec_client (binder (call transfer)))
(allow hal_tv_cec_client hal_tv_cec_server (binder (transfer)))
(allow hal_tv_cec_server hal_tv_cec_client (fd (use)))
(allow hal_tv_cec_server hal_tv_cec_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_tv_cec_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_125_26_0 hal_tv_cec_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_tv_cec_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_tv_cec_client hal_tv_cec_hwservice_26_0 (hwservice_manager (find)))
(allow hal_tv_input_client hal_tv_input_server (binder (call transfer)))
(allow hal_tv_input_server hal_tv_input_client (binder (transfer)))
(allow hal_tv_input_client hal_tv_input_server (fd (use)))
(allow hal_tv_input_server hal_tv_input_client (binder (call transfer)))
(allow hal_tv_input_client hal_tv_input_server (binder (transfer)))
(allow hal_tv_input_server hal_tv_input_client (fd (use)))
(allow hal_tv_input_server hal_tv_input_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_tv_input_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_126_26_0 hal_tv_input_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_tv_input_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_tv_input_client hal_tv_input_hwservice_26_0 (hwservice_manager (find)))
(allow hal_usb_client hal_usb_server (binder (call transfer)))
(allow hal_usb_server hal_usb_client (binder (transfer)))
(allow hal_usb_client hal_usb_server (fd (use)))
(allow hal_usb_server hal_usb_client (binder (call transfer)))
(allow hal_usb_client hal_usb_server (binder (transfer)))
(allow hal_usb_server hal_usb_client (fd (use)))
(allow hal_usb_server hal_usb_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_usb_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_127_26_0 hal_usb_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_usb_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_usb_client hal_usb_hwservice_26_0 (hwservice_manager (find)))
(allow hal_usb self (netlink_kobject_uevent_socket (create)))
(allow hal_usb self (netlink_kobject_uevent_socket (setopt)))
(allow hal_usb self (netlink_kobject_uevent_socket (bind)))
(allow hal_usb self (netlink_kobject_uevent_socket (read)))
(allow hal_usb sysfs_26_0 (dir (open)))
(allow hal_usb sysfs_26_0 (dir (read)))
(allow hal_usb sysfs_26_0 (file (read)))
(allow hal_usb sysfs_26_0 (file (open)))
(allow hal_usb sysfs_26_0 (file (write)))
(allow hal_usb sysfs_26_0 (file (getattr)))
(allow hal_vibrator_client hal_vibrator_server (binder (call transfer)))
(allow hal_vibrator_server hal_vibrator_client (binder (transfer)))
(allow hal_vibrator_client hal_vibrator_server (fd (use)))
(allow hal_vibrator_server hal_vibrator_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_vibrator_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_128_26_0 hal_vibrator_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_vibrator_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_vibrator_client hal_vibrator_hwservice_26_0 (hwservice_manager (find)))
(allow hal_vibrator sysfs_vibrator_26_0 (file (ioctl read write getattr lock append open)))
(allow hal_vr_client hal_vr_server (binder (call transfer)))
(allow hal_vr_server hal_vr_client (binder (transfer)))
(allow hal_vr_client hal_vr_server (fd (use)))
(allow hal_vr_server hal_vr_client (binder (call transfer)))
(allow hal_vr_client hal_vr_server (binder (transfer)))
(allow hal_vr_server hal_vr_client (fd (use)))
(allow hal_vr_server hal_vr_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_vr_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_129_26_0 hal_vr_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_vr_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_vr_client hal_vr_hwservice_26_0 (hwservice_manager (find)))
(allow hal_weaver_client hal_weaver_server (binder (call transfer)))
(allow hal_weaver_server hal_weaver_client (binder (transfer)))
(allow hal_weaver_client hal_weaver_server (fd (use)))
(allow hal_weaver_server hal_weaver_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_weaver_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_130_26_0 hal_weaver_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_weaver_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_weaver_client hal_weaver_hwservice_26_0 (hwservice_manager (find)))
(allow hal_wifi_client hal_wifi_server (binder (call transfer)))
(allow hal_wifi_server hal_wifi_client (binder (transfer)))
(allow hal_wifi_client hal_wifi_server (fd (use)))
(allow hal_wifi_server hal_wifi_client (binder (call transfer)))
(allow hal_wifi_client hal_wifi_server (binder (transfer)))
(allow hal_wifi_server hal_wifi_client (fd (use)))
(allow hal_wifi_server hal_wifi_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_wifi_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_131_26_0 hal_wifi_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_wifi_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_wifi_client hal_wifi_hwservice_26_0 (hwservice_manager (find)))
(allow hal_wifi proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_wifi proc_net_26_0 (file (ioctl read getattr lock open)))
(allow hal_wifi proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_wifi sysfs_type (dir (ioctl read getattr lock search open)))
(allow hal_wifi sysfs_type (file (ioctl read getattr lock open)))
(allow hal_wifi sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow hal_wifi property_socket_26_0 (sock_file (write)))
(allow hal_wifi init_26_0 (unix_stream_socket (connectto)))
(allow hal_wifi wifi_prop_26_0 (property_service (set)))
(allow hal_wifi wifi_prop_26_0 (file (ioctl read getattr lock open)))
(allow hal_wifi self (udp_socket (ioctl read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allowx hal_wifi self (ioctl udp_socket (0x8914)))
(allow hal_wifi self (capability (net_admin net_raw)))
(allow hal_wifi self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hal_wifi self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hal_wifi sysfs_wlan_fwpath_26_0 (file (write lock append open)))
(allow hal_wifi_offload_client hal_wifi_offload_server (binder (call transfer)))
(allow hal_wifi_offload_server hal_wifi_offload_client (binder (transfer)))
(allow hal_wifi_offload_client hal_wifi_offload_server (fd (use)))
(allow hal_wifi_offload_server hal_wifi_offload_client (binder (call transfer)))
(allow hal_wifi_offload_client hal_wifi_offload_server (binder (transfer)))
(allow hal_wifi_offload_server hal_wifi_offload_client (fd (use)))
(allow hal_wifi_offload proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_wifi_offload proc_net_26_0 (file (ioctl read getattr lock open)))
(allow hal_wifi_offload proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_wifi_offload sysfs_type (dir (ioctl read getattr lock search open)))
(allow hal_wifi_offload sysfs_type (file (ioctl read getattr lock open)))
(allow hal_wifi_offload sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow hal_wifi_supplicant_client hal_wifi_supplicant_server (binder (call transfer)))
(allow hal_wifi_supplicant_server hal_wifi_supplicant_client (binder (transfer)))
(allow hal_wifi_supplicant_client hal_wifi_supplicant_server (fd (use)))
(allow hal_wifi_supplicant_server hal_wifi_supplicant_client (binder (call transfer)))
(allow hal_wifi_supplicant_client hal_wifi_supplicant_server (binder (transfer)))
(allow hal_wifi_supplicant_server hal_wifi_supplicant_client (fd (use)))
(allow hal_wifi_supplicant_server hal_wifi_supplicant_hwservice_26_0 (hwservice_manager (add find)))
(allow hal_wifi_supplicant_server hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_132_26_0 hal_wifi_supplicant_hwservice_26_0 (hwservice_manager (add)))
(neverallow hal_wifi_supplicant_server unlabeled_26_0 (hwservice_manager (add)))
(allow hal_wifi_supplicant_client hal_wifi_supplicant_hwservice_26_0 (hwservice_manager (find)))
(allowx hal_wifi_supplicant self (ioctl udp_socket (0x6900 0x6902)))
(allowx hal_wifi_supplicant self (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx hal_wifi_supplicant self (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow hal_wifi_supplicant sysfs_type (dir (ioctl read getattr lock search open)))
(allow hal_wifi_supplicant sysfs_type (file (ioctl read getattr lock open)))
(allow hal_wifi_supplicant sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow hal_wifi_supplicant proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_wifi_supplicant proc_net_26_0 (file (ioctl read getattr lock open)))
(allow hal_wifi_supplicant proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hal_wifi_supplicant kernel_26_0 (system (module_request)))
(allow hal_wifi_supplicant self (capability (setgid setuid net_admin net_raw)))
(allow hal_wifi_supplicant cgroup_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_wifi_supplicant self (netlink_route_socket (nlmsg_write)))
(allow hal_wifi_supplicant self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hal_wifi_supplicant self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hal_wifi_supplicant self (packet_socket (ioctl read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allowx hal_wifi_supplicant self (ioctl packet_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx hal_wifi_supplicant self (ioctl packet_socket (0x6900 0x6902)))
(allowx hal_wifi_supplicant self (ioctl packet_socket (((range 0x8906 0x8907)) ((range 0x890b 0x890d)) ((range 0x8910 0x8927)) 0x8929 ((range 0x8930 0x8939)) ((range 0x8940 0x8943)) ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx hal_wifi_supplicant self (ioctl packet_socket (((range 0x8b00 0x8b02)) ((range 0x8b04 0x8b1d)) ((range 0x8b20 0x8b2d)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow hal_wifi_supplicant wifi_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_wifi_supplicant wifi_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_wifi_supplicant wpa_socket_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hal_wifi_supplicant wpa_socket_26_0 (sock_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow hal_wifi_supplicant wpa_socket_26_0 (sock_file (write)))
(allow hal_wifi_supplicant su_26_0 (unix_dgram_socket (sendto)))
(neverallow hal_wifi_supplicant_server sdcard_type (dir (ioctl read write create setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(neverallow hal_wifi_supplicant_server sdcard_type (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(allow healthd_26_0 kmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow healthd_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow healthd_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow healthd_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow healthd_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow healthd_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow healthd_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow healthd_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow healthd_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow healthd_26_0 self (capability (sys_tty_config)))
(allow healthd_26_0 self (capability (sys_boot)))
(allow healthd_26_0 self (netlink_kobject_uevent_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow healthd_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow healthd_26_0 self (capability2 (block_suspend)))
(allow healthd_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 healthd_26_0 (dir (search)))
(allow servicemanager_26_0 healthd_26_0 (file (read open)))
(allow servicemanager_26_0 healthd_26_0 (process (getattr)))
(allow healthd_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 healthd_26_0 (binder (transfer)))
(allow healthd_26_0 system_server_26_0 (fd (use)))
(allow healthd_26_0 sysfs_26_0 (file (write)))
(allow healthd_26_0 sysfs_usb_26_0 (file (write)))
(allow healthd_26_0 sysfs_batteryinfo_26_0 (file (ioctl read getattr lock open)))
(allow healthd_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow healthd_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow healthd_26_0 pstorefs_26_0 (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow healthd_26_0 graphics_device_26_0 (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 graphics_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow healthd_26_0 input_device_26_0 (dir (ioctl read getattr lock search open)))
(allow healthd_26_0 input_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow healthd_26_0 tty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow healthd_26_0 ashmem_device_26_0 (chr_file (execute)))
(allow healthd_26_0 self (process (execmem)))
(allow healthd_26_0 proc_sysrq_26_0 (file (ioctl read write getattr lock append open)))
(allow healthd_26_0 batteryproperties_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_133_26_0 batteryproperties_service_26_0 (service_manager (add)))
(neverallow healthd_26_0 unlabeled_26_0 (service_manager (add)))
(allow healthd_26_0 property_socket_26_0 (sock_file (write)))
(allow healthd_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow healthd_26_0 system_prop_26_0 (property_service (set)))
(allow healthd_26_0 system_prop_26_0 (file (ioctl read getattr lock open)))
(allow hwservicemanager_26_0 self (binder (set_context_mgr)))
(allow hwservicemanager_26_0 property_socket_26_0 (sock_file (write)))
(allow hwservicemanager_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow hwservicemanager_26_0 hwservicemanager_prop_26_0 (property_service (set)))
(allow hwservicemanager_26_0 hwservicemanager_prop_26_0 (file (ioctl read getattr lock open)))
(allow hwservicemanager_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow hwservicemanager_26_0 hwservice_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow hwservicemanager_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow hwservicemanager_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow hwservicemanager_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hwservicemanager_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow hwservicemanager_26_0 kernel_26_0 (security (compute_av)))
(allow hwservicemanager_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(allow idmap_26_0 installd_26_0 (fd (use)))
(allow idmap_26_0 resourcecache_data_file_26_0 (file (read write getattr)))
(allow idmap_26_0 apk_data_file_26_0 (file (ioctl read getattr lock open)))
(allow idmap_26_0 apk_data_file_26_0 (dir (search)))
(allow idmap_26_0 vendor_app_file_26_0 (dir (ioctl read getattr lock search open)))
(allow idmap_26_0 vendor_app_file_26_0 (file (ioctl read getattr lock open)))
(allow idmap_26_0 vendor_app_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow idmap_26_0 vendor_overlay_file_26_0 (dir (ioctl read getattr lock search open)))
(allow idmap_26_0 vendor_overlay_file_26_0 (file (ioctl read getattr lock open)))
(allow idmap_26_0 vendor_overlay_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 tmpfs_26_0 (chr_file (ioctl read write create getattr setattr lock append unlink open)))
(allow init_26_0 tmpfs_26_0 (chr_file (relabelfrom)))
(allow init_26_0 kmsg_device_26_0 (chr_file (write relabelto)))
(allow init_26_0 properties_device_26_0 (dir (relabelto)))
(allow init_26_0 properties_serial_26_0 (file (write relabelto)))
(allow init_26_0 property_type (file (ioctl read write create getattr setattr lock relabelto append unlink rename open)))
(allow init_26_0 device_26_0 (file (relabelfrom)))
(allow init_26_0 runtime_event_log_tags_file_26_0 (file (write setattr relabelto open)))
(allow init_26_0 device_26_0 (dir (relabelto)))
(allow init_26_0 socket_device_26_0 (dir (relabelto)))
(allow init_26_0 random_device_26_0 (chr_file (relabelto)))
(allow init_26_0 tmpfs_26_0 (chr_file (relabelfrom)))
(allow init_26_0 tmpfs_26_0 (blk_file (relabelfrom)))
(allow init_26_0 tmpfs_26_0 (blk_file (getattr)))
(allow init_26_0 block_device_26_0 (dir (relabelto)))
(allow init_26_0 block_device_26_0 (lnk_file (relabelto)))
(allow init_26_0 block_device_26_0 (blk_file (relabelto)))
(allow init_26_0 dm_device_26_0 (chr_file (relabelto)))
(allow init_26_0 dm_device_26_0 (blk_file (relabelto)))
(allow init_26_0 kernel_26_0 (fd (use)))
(allow init_26_0 tmpfs_26_0 (lnk_file (read getattr relabelfrom)))
(allow init_26_0 system_block_device_26_0 (lnk_file (relabelto)))
(allow init_26_0 system_block_device_26_0 (blk_file (relabelto)))
(allow init_26_0 self (capability (sys_resource)))
(allow init_26_0 tmpfs_26_0 (file (unlink)))
(allow init_26_0 devpts_26_0 (chr_file (read write open)))
(allow init_26_0 fscklogs_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow init_26_0 tmpfs_26_0 (chr_file (write)))
(allow init_26_0 console_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow init_26_0 tty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow init_26_0 self (capability (sys_admin)))
(allow init_26_0 rootfs_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 rootfs_26_0 (dir (mounton)))
(allow init_26_0 cgroup_26_0 (dir (mounton)))
(allow init_26_0 system_file_26_0 (dir (mounton)))
(allow init_26_0 vendor_file_26_0 (dir (mounton)))
(allow init_26_0 system_data_file_26_0 (dir (mounton)))
(allow init_26_0 storage_file_26_0 (dir (mounton)))
(allow init_26_0 postinstall_mnt_dir_26_0 (dir (mounton)))
(allow init_26_0 cache_file_26_0 (dir (mounton)))
(allow init_26_0 device_26_0 (dir (mounton)))
(allow init_26_0 rootfs_26_0 (lnk_file (create unlink)))
(allow init_26_0 sysfs_26_0 (dir (mounton)))
(allow init_26_0 tmpfs_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 tmpfs_26_0 (dir (mounton)))
(allow init_26_0 cgroup_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow init_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 cpuctl_device_26_0 (dir (create mounton)))
(allow init_26_0 configfs_26_0 (dir (mounton)))
(allow init_26_0 configfs_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 tmpfs_26_0 (dir (relabelfrom)))
(allow init_26_0 self (capability (dac_override)))
(allow init_26_0 self (capability (sys_time)))
(allow init_26_0 self (capability (sys_rawio mknod)))
(allow init_26_0 dev_type (blk_file (ioctl read getattr lock open)))
(allow init_26_0 fs_type (filesystem (mount remount unmount getattr relabelfrom associate quotamod quotaget)))
(allow init_26_0 unlabeled_26_0 (filesystem (mount remount unmount getattr relabelfrom associate quotamod quotaget)))
(allow init_26_0 contextmount_type (filesystem (relabelto)))
(allow init_26_0 contextmount_type (dir (ioctl read getattr lock search open)))
(allow init_26_0 contextmount_type (file (ioctl read getattr lock open)))
(allow init_26_0 contextmount_type (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 contextmount_type (sock_file (ioctl read getattr lock open)))
(allow init_26_0 contextmount_type (fifo_file (ioctl read getattr lock open)))
(allow init_26_0 rootfs_26_0 (file (relabelfrom)))
(allow init_26_0 rootfs_26_0 (dir (relabelfrom)))
(allow init_26_0 self (capability (chown fowner fsetid)))
(allow init_26_0 base_typeattr_134_26_0 (dir (ioctl read create getattr setattr search open)))
(allow init_26_0 base_typeattr_135_26_0 (dir (write relabelfrom add_name remove_name rmdir)))
(allow init_26_0 base_typeattr_136_26_0 (file (read write create getattr setattr relabelfrom unlink open)))
(allow init_26_0 base_typeattr_135_26_0 (sock_file (read create getattr setattr relabelfrom unlink open)))
(allow init_26_0 base_typeattr_135_26_0 (fifo_file (read create getattr setattr relabelfrom unlink open)))
(allow init_26_0 base_typeattr_135_26_0 (lnk_file (create getattr setattr relabelfrom unlink)))
(allow init_26_0 cache_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 base_typeattr_137_26_0 (file (relabelto)))
(allow init_26_0 base_typeattr_137_26_0 (dir (relabelto)))
(allow init_26_0 base_typeattr_137_26_0 (lnk_file (relabelto)))
(allow init_26_0 base_typeattr_137_26_0 (chr_file (relabelto)))
(allow init_26_0 base_typeattr_137_26_0 (blk_file (relabelto)))
(allow init_26_0 base_typeattr_137_26_0 (sock_file (relabelto)))
(allow init_26_0 base_typeattr_137_26_0 (fifo_file (relabelto)))
(allow init_26_0 sysfs_26_0 (file (getattr relabelfrom)))
(allow init_26_0 sysfs_26_0 (dir (getattr relabelfrom)))
(allow init_26_0 sysfs_26_0 (lnk_file (getattr relabelfrom)))
(allow init_26_0 debugfs_26_0 (file (getattr relabelfrom)))
(allow init_26_0 debugfs_26_0 (dir (getattr relabelfrom)))
(allow init_26_0 debugfs_26_0 (lnk_file (getattr relabelfrom)))
(allow init_26_0 debugfs_tracing_26_0 (file (getattr relabelfrom)))
(allow init_26_0 debugfs_tracing_26_0 (dir (getattr relabelfrom)))
(allow init_26_0 debugfs_tracing_26_0 (lnk_file (getattr relabelfrom)))
(allow init_26_0 sysfs_type (file (getattr relabelto)))
(allow init_26_0 sysfs_type (dir (getattr relabelto)))
(allow init_26_0 sysfs_type (lnk_file (getattr relabelto)))
(allow init_26_0 debugfs_type (file (getattr relabelto)))
(allow init_26_0 debugfs_type (dir (getattr relabelto)))
(allow init_26_0 debugfs_type (lnk_file (getattr relabelto)))
(allow init_26_0 dev_type (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 dev_type (lnk_file (create)))
(allow init_26_0 tracing_shell_writable_26_0 (file (write lock append open)))
(allow init_26_0 debugfs_tracing_instances_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 debugfs_tracing_instances_26_0 (file (write lock append open)))
(allow init_26_0 debugfs_wifi_tracing_26_0 (file (write lock append open)))
(allow init_26_0 base_typeattr_138_26_0 (file (read setattr open)))
(allow init_26_0 base_typeattr_138_26_0 (dir (read setattr search open)))
(allow init_26_0 base_typeattr_139_26_0 (chr_file (read open)))
(auditallow init_26_0 base_typeattr_140_26_0 (chr_file (read open)))
(allow init_26_0 base_typeattr_141_26_0 (chr_file (setattr)))
(allow init_26_0 unlabeled_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 unlabeled_26_0 (file (ioctl read write create getattr setattr lock relabelfrom append unlink rename open)))
(allow init_26_0 unlabeled_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom append unlink rename open)))
(allow init_26_0 unlabeled_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom append unlink rename open)))
(allow init_26_0 unlabeled_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom append unlink rename open)))
(allow init_26_0 kernel_26_0 (system (syslog_mod)))
(allow init_26_0 self (capability2 (syslog)))
(allow init_26_0 usermodehelper_26_0 (file (ioctl read write getattr lock append open)))
(allow init_26_0 proc_security_26_0 (file (ioctl read write getattr lock append open)))
(allow init_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow init_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 proc_26_0 (file (write lock append open)))
(allow init_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow init_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 proc_net_26_0 (file (write lock append open)))
(allow init_26_0 self (capability (net_admin)))
(allow init_26_0 proc_sysrq_26_0 (file (write lock append open)))
(allow init_26_0 proc_stat_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 self (capability (sys_boot)))
(allow init_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow init_26_0 sysfs_type (lnk_file (read)))
(allow init_26_0 sysfs_type (file (ioctl read write getattr lock append open)))
(allow init_26_0 misc_logd_file_26_0 (dir (read write create getattr setattr add_name search open)))
(allow init_26_0 misc_logd_file_26_0 (file (write create getattr setattr open)))
(allow init_26_0 self (capability (kill)))
(allow init_26_0 domain (process (sigkill signal)))
(allow init_26_0 keystore_data_file_26_0 (dir (read create getattr setattr search open)))
(allow init_26_0 keystore_data_file_26_0 (file (getattr)))
(allow init_26_0 vold_data_file_26_0 (dir (read create getattr setattr search open)))
(allow init_26_0 vold_data_file_26_0 (file (getattr)))
(allow init_26_0 shell_data_file_26_0 (dir (read create getattr setattr search open)))
(allow init_26_0 shell_data_file_26_0 (file (getattr)))
(allow init_26_0 self (capability (setgid setuid setpcap)))
(allow init_26_0 domain (dir (ioctl read getattr lock search open)))
(allow init_26_0 domain (file (ioctl read getattr lock open)))
(allow init_26_0 domain (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 self (process (setexec setfscreate setsockcreate)))
(allow init_26_0 file_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 sepolicy_file_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow init_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow init_26_0 kernel_26_0 (security (compute_av)))
(allow init_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(allow init_26_0 kernel_26_0 (security (compute_create)))
(allow init_26_0 domain (unix_stream_socket (create bind)))
(allow init_26_0 domain (unix_dgram_socket (create bind)))
(allow init_26_0 property_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 property_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow init_26_0 property_type (property_service (set)))
(allow init_26_0 self (netlink_audit_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown nlmsg_relay)))
(allow init_26_0 self (capability (audit_write)))
(allow init_26_0 self (udp_socket (ioctl create)))
(allowx init_26_0 self (ioctl udp_socket (0x8914)))
(allow init_26_0 self (capability (net_raw)))
(allow init_26_0 kernel_26_0 (process (setsched)))
(allow init_26_0 swap_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow init_26_0 hw_random_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow init_26_0 device_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow init_26_0 self (capability (sys_tty_config)))
(allow init_26_0 keychord_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow init_26_0 dm_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow init_26_0 dm_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow init_26_0 metadata_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow init_26_0 pstorefs_26_0 (dir (search)))
(allow init_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 kernel_26_0 (system (syslog_read)))
(allow init_26_0 init_26_0 (key (write search setattr)))
(allow init_26_0 unencrypted_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow init_26_0 proc_overcommit_memory_26_0 (file (write)))
(allow init_26_0 vold_socket_26_0 (sock_file (write)))
(allow init_26_0 vold_26_0 (unix_stream_socket (connectto)))
(allow init_26_0 misc_block_device_26_0 (blk_file (write lock append open)))
(allow init_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow init_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 vendor_file_type (dir (ioctl read getattr lock search open)))
(allow init_26_0 vendor_file_type (file (ioctl read getattr lock open)))
(allow init_26_0 vendor_file_type (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow init_26_0 system_data_file_26_0 (file (read getattr)))
(allow init_26_0 system_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 vendor_shell_exec_26_0 (file (execute)))
(neverallow domain init_26_0 (process (dyntransition)))
(neverallow base_typeattr_15_26_0 init_26_0 (process (transition)))
(neverallow init_26_0 base_typeattr_142_26_0 (file (entrypoint)))
(neverallow init_26_0 shell_data_file_26_0 (lnk_file (read)))
(neverallow init_26_0 app_data_file_26_0 (lnk_file (read)))
(neverallow init_26_0 fs_type (file (execute_no_trans)))
(neverallow init_26_0 file_type (file (execute_no_trans)))
(neverallow init_26_0 service_manager_type (service_manager (add find)))
(neverallow init_26_0 servicemanager_26_0 (service_manager (list)))
(neverallow init_26_0 shell_data_file_26_0 (dir (write add_name remove_name)))
(allow inputflinger_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 inputflinger_26_0 (dir (search)))
(allow servicemanager_26_0 inputflinger_26_0 (file (read open)))
(allow servicemanager_26_0 inputflinger_26_0 (process (getattr)))
(allow inputflinger_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 inputflinger_26_0 (binder (transfer)))
(allow inputflinger_26_0 system_server_26_0 (fd (use)))
(allow inputflinger_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow inputflinger_26_0 self (capability2 (block_suspend)))
(allow inputflinger_26_0 inputflinger_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_143_26_0 inputflinger_service_26_0 (service_manager (add)))
(neverallow inputflinger_26_0 unlabeled_26_0 (service_manager (add)))
(allow inputflinger_26_0 input_device_26_0 (dir (ioctl read getattr lock search open)))
(allow inputflinger_26_0 input_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow inputflinger_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow inputflinger_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow inputflinger_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow install_recovery_26_0 self (capability (dac_override)))
(allow install_recovery_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow install_recovery_26_0 system_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow install_recovery_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow install_recovery_26_0 block_device_26_0 (dir (search)))
(allow install_recovery_26_0 boot_block_device_26_0 (blk_file (ioctl read getattr lock open)))
(allow install_recovery_26_0 recovery_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow install_recovery_26_0 cache_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow install_recovery_26_0 cache_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow install_recovery_26_0 proc_drop_caches_26_0 (file (write lock append open)))
(allow installd_26_0 self (capability (chown dac_override fowner fsetid setgid setuid sys_admin)))
(allow installd_26_0 dalvikcache_data_file_26_0 (dir (relabelto)))
(allow installd_26_0 dalvikcache_data_file_26_0 (file (relabelto link)))
(allow installd_26_0 apk_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 apk_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom append unlink link rename open)))
(allow installd_26_0 apk_data_file_26_0 (lnk_file (ioctl read create getattr lock unlink open)))
(allow installd_26_0 asec_apk_file_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 apk_tmp_file_26_0 (file (ioctl read getattr lock unlink open)))
(allow installd_26_0 apk_tmp_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 oemfs_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 oemfs_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 cgroup_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 cgroup_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 cgroup_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 mnt_expand_file_26_0 (dir (getattr search)))
(allow installd_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow installd_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow installd_26_0 kernel_26_0 (security (check_context)))
(allow installd_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow installd_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow installd_26_0 vendor_app_file_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 vendor_app_file_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 vendor_app_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow installd_26_0 vendor_overlay_file_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 vendor_overlay_file_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 vendor_overlay_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow installd_26_0 file_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 seapp_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 asec_image_file_26_0 (dir (search)))
(allow installd_26_0 asec_image_file_26_0 (file (getattr)))
(allow installd_26_0 system_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 system_data_file_26_0 (lnk_file (create setattr unlink)))
(allow installd_26_0 media_rw_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 media_rw_data_file_26_0 (file (getattr unlink)))
(allow installd_26_0 system_data_file_26_0 (dir (relabelfrom)))
(allow installd_26_0 media_rw_data_file_26_0 (dir (relabelto)))
(allow installd_26_0 tmpfs_26_0 (dir (ioctl read getattr lock search open)))
(allow installd_26_0 storage_file_26_0 (dir (search)))
(allow installd_26_0 sdcardfs_26_0 (dir (read write getattr remove_name search rmdir open)))
(allow installd_26_0 sdcardfs_26_0 (file (getattr unlink)))
(allow installd_26_0 misc_user_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 misc_user_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 keychain_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 keychain_data_file_26_0 (file (ioctl read getattr lock unlink open)))
(allow installd_26_0 install_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 dalvikcache_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 dalvikcache_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 dalvikcache_data_file_26_0 (lnk_file (getattr)))
(allow installd_26_0 resourcecache_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow installd_26_0 resourcecache_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 unlabeled_26_0 (dir (ioctl read write getattr lock relabelfrom add_name remove_name search rmdir open)))
(allow installd_26_0 unlabeled_26_0 (file (getattr setattr relabelfrom unlink rename)))
(allow installd_26_0 unlabeled_26_0 (lnk_file (getattr setattr relabelfrom unlink rename)))
(allow installd_26_0 unlabeled_26_0 (sock_file (getattr setattr relabelfrom unlink rename)))
(allow installd_26_0 unlabeled_26_0 (fifo_file (getattr setattr relabelfrom unlink rename)))
(allow installd_26_0 unlabeled_26_0 (file (ioctl read getattr lock open)))
(allow installd_26_0 system_data_file_26_0 (file (getattr relabelfrom unlink)))
(allow installd_26_0 system_data_file_26_0 (lnk_file (getattr relabelfrom unlink)))
(allow installd_26_0 system_data_file_26_0 (sock_file (getattr relabelfrom unlink)))
(allow installd_26_0 system_data_file_26_0 (fifo_file (getattr relabelfrom unlink)))
(allow installd_26_0 shell_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 bluetooth_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 nfc_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 radio_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 app_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 system_app_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 shell_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 shell_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 shell_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 shell_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 bluetooth_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 bluetooth_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 bluetooth_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 bluetooth_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 nfc_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 nfc_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 nfc_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 nfc_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 radio_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 radio_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 radio_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 radio_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 app_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 app_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 app_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 app_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 system_app_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 system_app_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 system_app_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 system_app_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink rename open)))
(allow installd_26_0 user_profile_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow installd_26_0 user_profile_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow installd_26_0 user_profile_data_file_26_0 (dir (rmdir)))
(allow installd_26_0 user_profile_data_file_26_0 (file (unlink)))
(allow installd_26_0 profman_dump_data_file_26_0 (dir (write add_name search)))
(allow installd_26_0 profman_dump_data_file_26_0 (file (write create setattr open)))
(allow installd_26_0 devpts_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow installd_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow installd_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 installd_26_0 (dir (search)))
(allow servicemanager_26_0 installd_26_0 (file (read open)))
(allow servicemanager_26_0 installd_26_0 (process (getattr)))
(allow installd_26_0 installd_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_144_26_0 installd_service_26_0 (service_manager (add)))
(neverallow installd_26_0 unlabeled_26_0 (service_manager (add)))
(allow installd_26_0 dumpstate_26_0 (fifo_file (write getattr)))
(allow installd_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 installd_26_0 (binder (transfer)))
(allow installd_26_0 system_server_26_0 (fd (use)))
(allow installd_26_0 permission_service_26_0 (service_manager (find)))
(allow installd_26_0 block_device_26_0 (dir (search)))
(allow installd_26_0 labeledfs_26_0 (filesystem (quotamod quotaget)))
(allow installd_26_0 preloads_data_file_26_0 (file (ioctl read getattr lock unlink open)))
(allow installd_26_0 preloads_data_file_26_0 (dir (ioctl read write getattr lock remove_name search rmdir open)))
(allow installd_26_0 preloads_media_file_26_0 (file (ioctl read getattr lock unlink open)))
(allow installd_26_0 preloads_media_file_26_0 (dir (ioctl read write getattr lock remove_name search rmdir open)))
(neverallow base_typeattr_145_26_0 installd_service_26_0 (service_manager (find)))
(neverallow base_typeattr_63_26_0 installd_26_0 (binder (call)))
(neverallow installd_26_0 base_typeattr_146_26_0 (binder (call)))
(allow kernel_26_0 self (capability (sys_nice)))
(allow kernel_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow kernel_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow kernel_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow kernel_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow kernel_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow kernel_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow kernel_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow kernel_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow kernel_26_0 file_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow kernel_26_0 rootfs_26_0 (file (relabelfrom)))
(allow kernel_26_0 init_exec_26_0 (file (relabelto)))
(allow kernel_26_0 init_26_0 (process (share)))
(allow kernel_26_0 unlabeled_26_0 (dir (search)))
(allow kernel_26_0 usbfs_26_0 (filesystem (mount)))
(allow kernel_26_0 usbfs_26_0 (dir (search)))
(dontaudit kernel_26_0 self (security (setenforce)))
(allow kernel_26_0 self (capability (sys_resource)))
(allow kernel_26_0 self (capability (sys_boot)))
(allow kernel_26_0 proc_sysrq_26_0 (file (write lock append open)))
(allow kernel_26_0 tmpfs_26_0 (chr_file (write)))
(allow kernel_26_0 selinuxfs_26_0 (file (write)))
(allow kernel_26_0 self (security (setcheckreqprot)))
(allow kernel_26_0 priv_app_26_0 (fd (use)))
(allow kernel_26_0 sdcard_type (file (read write)))
(allow kernel_26_0 vold_26_0 (fd (use)))
(allow kernel_26_0 app_data_file_26_0 (file (read)))
(allow kernel_26_0 asec_image_file_26_0 (file (read)))
(allow kernel_26_0 update_engine_data_file_26_0 (file (read)))
(allow kernel_26_0 nativetest_data_file_26_0 (file (read)))
(allow kernel_26_0 media_rw_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow kernel_26_0 media_rw_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow kernel_26_0 vold_data_file_26_0 (file (read)))
(neverallow base_typeattr_10_26_0 kernel_26_0 (process (transition dyntransition)))
(neverallow kernel_26_0 base_typeattr_10_26_0 (file (execute_no_trans entrypoint)))
(neverallow kernel_26_0 self (capability (dac_override dac_read_search)))
(allow keystore_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 keystore_26_0 (dir (search)))
(allow servicemanager_26_0 keystore_26_0 (file (read open)))
(allow servicemanager_26_0 keystore_26_0 (process (getattr)))
(allow keystore_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 keystore_26_0 (binder (transfer)))
(allow keystore_26_0 system_server_26_0 (fd (use)))
(allow keystore_26_0 keystore_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow keystore_26_0 keystore_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow keystore_26_0 keystore_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow keystore_26_0 keystore_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow keystore_26_0 keystore_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow keystore_26_0 keystore_exec_26_0 (file (getattr)))
(allow keystore_26_0 keystore_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_147_26_0 keystore_service_26_0 (service_manager (add)))
(neverallow keystore_26_0 unlabeled_26_0 (service_manager (add)))
(allow keystore_26_0 sec_key_att_app_id_provider_service_26_0 (service_manager (find)))
(allow keystore_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow keystore_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow keystore_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow keystore_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow keystore_26_0 kernel_26_0 (security (compute_av)))
(allow keystore_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(allow keystore_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow keystore_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow keystore_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(neverallow base_typeattr_147_26_0 keystore_data_file_26_0 (dir (write lock relabelfrom append unlink link rename execute quotaon mounton add_name remove_name reparent rmdir audit_access execmod)))
(neverallow base_typeattr_147_26_0 keystore_data_file_26_0 (file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_147_26_0 keystore_data_file_26_0 (lnk_file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_147_26_0 keystore_data_file_26_0 (sock_file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_147_26_0 keystore_data_file_26_0 (fifo_file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_148_26_0 keystore_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(neverallow base_typeattr_148_26_0 keystore_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_148_26_0 keystore_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_148_26_0 keystore_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_148_26_0 keystore_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_10_26_0 keystore_26_0 (process (ptrace)))
(allow lmkd_26_0 self (capability (dac_override kill sys_resource)))
(allow lmkd_26_0 self (capability (ipc_lock)))
(allow lmkd_26_0 appdomain (dir (ioctl read getattr lock search open)))
(allow lmkd_26_0 appdomain (file (ioctl read getattr lock open)))
(allow lmkd_26_0 appdomain (lnk_file (ioctl read getattr lock open)))
(allow lmkd_26_0 appdomain (file (write)))
(allow lmkd_26_0 system_server_26_0 (dir (ioctl read getattr lock search open)))
(allow lmkd_26_0 system_server_26_0 (file (ioctl read getattr lock open)))
(allow lmkd_26_0 system_server_26_0 (lnk_file (ioctl read getattr lock open)))
(allow lmkd_26_0 system_server_26_0 (file (write)))
(allow lmkd_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow lmkd_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow lmkd_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow lmkd_26_0 sysfs_lowmemorykiller_26_0 (file (write lock append open)))
(allow lmkd_26_0 appdomain (process (sigkill)))
(allow lmkd_26_0 cgroup_26_0 (dir (remove_name rmdir)))
(allow lmkd_26_0 self (capability (sys_nice)))
(allow lmkd_26_0 proc_zoneinfo_26_0 (file (ioctl read getattr lock open)))
(neverallow base_typeattr_10_26_0 lmkd_26_0 (process (noatsecure)))
(allow logd_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow logd_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow logd_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow logd_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow logd_26_0 proc_meminfo_26_0 (dir (ioctl read getattr lock search open)))
(allow logd_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 proc_meminfo_26_0 (lnk_file (ioctl read getattr lock open)))
(allow logd_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow logd_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow logd_26_0 self (capability (setgid setuid setpcap sys_nice audit_control)))
(allow logd_26_0 self (capability2 (syslog)))
(allow logd_26_0 self (netlink_audit_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown nlmsg_write)))
(allow logd_26_0 kernel_26_0 (system (syslog_read)))
(allow logd_26_0 kmsg_device_26_0 (chr_file (write lock append open)))
(allow logd_26_0 system_data_file_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 system_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow logd_26_0 pstorefs_26_0 (dir (search)))
(allow logd_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 misc_logd_file_26_0 (dir (ioctl read getattr lock search open)))
(allow logd_26_0 misc_logd_file_26_0 (file (ioctl read write getattr lock append open)))
(allow logd_26_0 runtime_event_log_tags_file_26_0 (file (ioctl read write getattr lock append open)))
(allow logd_26_0 device_logging_prop_26_0 (file (ioctl read getattr lock open)))
(allow logd_26_0 domain (dir (ioctl read getattr lock search open)))
(allow logd_26_0 domain (file (ioctl read getattr lock open)))
(allow logd_26_0 domain (lnk_file (ioctl read getattr lock open)))
(allow logd_26_0 kernel_26_0 (system (syslog_mod)))
(allow logd_26_0 logd_socket_26_0 (sock_file (write)))
(allow logd_26_0 logd_26_0 (unix_stream_socket (connectto)))
(allow logd_26_0 runtime_event_log_tags_file_26_0 (file (ioctl read getattr lock open)))
(allow runtime_event_log_tags_file_26_0 tmpfs_26_0 (filesystem (associate)))
(dontaudit domain runtime_event_log_tags_file_26_0 (file (read open)))
(neverallow logd_26_0 dev_type (blk_file (read write)))
(neverallow logd_26_0 domain (process (ptrace)))
(neverallow base_typeattr_149_26_0 logd_26_0 (process (ptrace)))
(neverallow logd_26_0 system_file_26_0 (file (write)))
(neverallow logd_26_0 system_file_26_0 (dir (write)))
(neverallow logd_26_0 system_file_26_0 (lnk_file (write)))
(neverallow logd_26_0 system_file_26_0 (chr_file (write)))
(neverallow logd_26_0 system_file_26_0 (blk_file (write)))
(neverallow logd_26_0 system_file_26_0 (sock_file (write)))
(neverallow logd_26_0 system_file_26_0 (fifo_file (write)))
(neverallow logd_26_0 system_data_file_26_0 (file (write)))
(neverallow logd_26_0 system_data_file_26_0 (dir (write)))
(neverallow logd_26_0 system_data_file_26_0 (lnk_file (write)))
(neverallow logd_26_0 system_data_file_26_0 (chr_file (write)))
(neverallow logd_26_0 system_data_file_26_0 (blk_file (write)))
(neverallow logd_26_0 system_data_file_26_0 (sock_file (write)))
(neverallow logd_26_0 system_data_file_26_0 (fifo_file (write)))
(neverallow logd_26_0 app_data_file_26_0 (file (write)))
(neverallow logd_26_0 app_data_file_26_0 (dir (write)))
(neverallow logd_26_0 app_data_file_26_0 (lnk_file (write)))
(neverallow logd_26_0 app_data_file_26_0 (chr_file (write)))
(neverallow logd_26_0 app_data_file_26_0 (blk_file (write)))
(neverallow logd_26_0 app_data_file_26_0 (sock_file (write)))
(neverallow logd_26_0 app_data_file_26_0 (fifo_file (write)))
(neverallow base_typeattr_5_26_0 logd_26_0 (process (transition)))
(neverallow base_typeattr_10_26_0 logd_26_0 (process (dyntransition)))
(neverallow base_typeattr_150_26_0 runtime_event_log_tags_file_26_0 (file (write create setattr relabelfrom append unlink link rename)))
(neverallow logpersist_26_0 dev_type (blk_file (read write)))
(neverallow logpersist_26_0 domain (process (ptrace)))
(neverallow logpersist_26_0 system_data_file_26_0 (file (write)))
(neverallow logpersist_26_0 system_data_file_26_0 (dir (write)))
(neverallow logpersist_26_0 system_data_file_26_0 (lnk_file (write)))
(neverallow logpersist_26_0 system_data_file_26_0 (chr_file (write)))
(neverallow logpersist_26_0 system_data_file_26_0 (blk_file (write)))
(neverallow logpersist_26_0 system_data_file_26_0 (sock_file (write)))
(neverallow logpersist_26_0 system_data_file_26_0 (fifo_file (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (file (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (dir (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (lnk_file (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (chr_file (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (blk_file (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (sock_file (write)))
(neverallow logpersist_26_0 app_data_file_26_0 (fifo_file (write)))
(neverallow base_typeattr_10_26_0 logpersist_26_0 (process (dyntransition)))
(allow mediacodec_26_0 hwservicemanager_prop_26_0 (file (ioctl read getattr lock open)))
(allow mediacodec_26_0 vndbinder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediacodec_26_0 vndservicemanager_26_0 (binder (call transfer)))
(allow vndservicemanager_26_0 mediacodec_26_0 (dir (search)))
(allow vndservicemanager_26_0 mediacodec_26_0 (file (read open)))
(allow vndservicemanager_26_0 mediacodec_26_0 (process (getattr)))
(allow mediacodec_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain mediacodec_26_0 (binder (transfer)))
(allow mediacodec_26_0 binderservicedomain (fd (use)))
(allow mediacodec_26_0 appdomain (binder (call transfer)))
(allow appdomain mediacodec_26_0 (binder (transfer)))
(allow mediacodec_26_0 appdomain (fd (use)))
(allow mediacodec_26_0 hal_graphics_composer (fd (use)))
(allow mediacodec_26_0 gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediacodec_26_0 video_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediacodec_26_0 video_device_26_0 (dir (search)))
(allow mediacodec_26_0 ion_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediacodec_26_0 hal_camera (fd (use)))
(allow mediacodec_26_0 su_26_0 (fifo_file (append)))
(allow mediacodec_26_0 anr_data_file_26_0 (file (append)))
(allow mediacodec_26_0 dumpstate_26_0 (fd (use)))
(allow mediacodec_26_0 dumpstate_26_0 (fifo_file (write append)))
(allow mediacodec_26_0 tombstoned_26_0 (unix_stream_socket (connectto)))
(allow mediacodec_26_0 tombstoned_26_0 (fd (use)))
(allow mediacodec_26_0 tombstoned_crash_socket_26_0 (sock_file (write)))
(allow mediacodec_26_0 tombstone_data_file_26_0 (file (append)))
(allow mediacodec_26_0 hal_omx_hwservice_26_0 (hwservice_manager (add find)))
(allow mediacodec_26_0 hidl_base_hwservice_26_0 (hwservice_manager (add)))
(neverallow base_typeattr_151_26_0 hal_omx_hwservice_26_0 (hwservice_manager (add)))
(neverallow mediacodec_26_0 unlabeled_26_0 (hwservice_manager (add)))
(allow mediacodec_26_0 bufferhubd_26_0 (fd (use)))
(neverallow mediacodec_26_0 fs_type (file (execute_no_trans)))
(neverallow mediacodec_26_0 file_type (file (execute_no_trans)))
(neverallow mediacodec_26_0 domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow mediacodec_26_0 domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow mediacodec_26_0 domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(allow mediadrmserver_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 mediadrmserver_26_0 (dir (search)))
(allow servicemanager_26_0 mediadrmserver_26_0 (file (read open)))
(allow servicemanager_26_0 mediadrmserver_26_0 (process (getattr)))
(allow mediadrmserver_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain mediadrmserver_26_0 (binder (transfer)))
(allow mediadrmserver_26_0 binderservicedomain (fd (use)))
(allow mediadrmserver_26_0 appdomain (binder (call transfer)))
(allow appdomain mediadrmserver_26_0 (binder (transfer)))
(allow mediadrmserver_26_0 appdomain (fd (use)))
(allow mediadrmserver_26_0 mediadrmserver_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_152_26_0 mediadrmserver_service_26_0 (service_manager (add)))
(neverallow mediadrmserver_26_0 unlabeled_26_0 (service_manager (add)))
(allow mediadrmserver_26_0 mediaserver_service_26_0 (service_manager (find)))
(allow mediadrmserver_26_0 mediametrics_service_26_0 (service_manager (find)))
(allow mediadrmserver_26_0 processinfo_service_26_0 (service_manager (find)))
(allow mediadrmserver_26_0 surfaceflinger_service_26_0 (service_manager (find)))
(allow mediadrmserver_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow mediadrmserver_26_0 mediacasserver_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_152_26_0 mediacasserver_service_26_0 (service_manager (add)))
(neverallow mediadrmserver_26_0 unlabeled_26_0 (service_manager (add)))
(allow mediadrmserver_26_0 mediacodec_26_0 (binder (call transfer)))
(allow mediacodec_26_0 mediadrmserver_26_0 (binder (transfer)))
(allow mediadrmserver_26_0 mediacodec_26_0 (fd (use)))
(neverallow mediadrmserver_26_0 fs_type (file (execute_no_trans)))
(neverallow mediadrmserver_26_0 file_type (file (execute_no_trans)))
(neverallowx mediadrmserver_26_0 domain (ioctl tcp_socket (0x6900 0x6902)))
(neverallowx mediadrmserver_26_0 domain (ioctl udp_socket (0x6900 0x6902)))
(neverallowx mediadrmserver_26_0 domain (ioctl rawip_socket (0x6900 0x6902)))
(neverallowx mediadrmserver_26_0 domain (ioctl tcp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx mediadrmserver_26_0 domain (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx mediadrmserver_26_0 domain (ioctl rawip_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx mediadrmserver_26_0 domain (ioctl tcp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx mediadrmserver_26_0 domain (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx mediadrmserver_26_0 domain (ioctl rawip_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow mediaextractor_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 mediaextractor_26_0 (dir (search)))
(allow servicemanager_26_0 mediaextractor_26_0 (file (read open)))
(allow servicemanager_26_0 mediaextractor_26_0 (process (getattr)))
(allow mediaextractor_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain mediaextractor_26_0 (binder (transfer)))
(allow mediaextractor_26_0 binderservicedomain (fd (use)))
(allow mediaextractor_26_0 appdomain (binder (call transfer)))
(allow appdomain mediaextractor_26_0 (binder (transfer)))
(allow mediaextractor_26_0 appdomain (fd (use)))
(allow mediaextractor_26_0 mediaextractor_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_153_26_0 mediaextractor_service_26_0 (service_manager (add)))
(neverallow mediaextractor_26_0 unlabeled_26_0 (service_manager (add)))
(allow mediaextractor_26_0 mediametrics_service_26_0 (service_manager (find)))
(allow mediaextractor_26_0 mediacasserver_service_26_0 (service_manager (find)))
(allow mediaextractor_26_0 system_server_26_0 (fd (use)))
(allow mediaextractor_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow mediaextractor_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow mediaextractor_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow mediaextractor_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow mediaextractor_26_0 su_26_0 (fifo_file (append)))
(allow mediaextractor_26_0 anr_data_file_26_0 (file (append)))
(allow mediaextractor_26_0 dumpstate_26_0 (fd (use)))
(allow mediaextractor_26_0 dumpstate_26_0 (fifo_file (write append)))
(allow mediaextractor_26_0 tombstoned_26_0 (unix_stream_socket (connectto)))
(allow mediaextractor_26_0 tombstoned_26_0 (fd (use)))
(allow mediaextractor_26_0 tombstoned_crash_socket_26_0 (sock_file (write)))
(allow mediaextractor_26_0 tombstone_data_file_26_0 (file (append)))
(allow mediaextractor_26_0 media_rw_data_file_26_0 (file (read getattr)))
(allow mediaextractor_26_0 app_data_file_26_0 (file (read getattr)))
(allow mediaextractor_26_0 apk_data_file_26_0 (file (read getattr)))
(allow mediaextractor_26_0 asec_apk_file_26_0 (file (read getattr)))
(allow mediaextractor_26_0 ringtone_file_26_0 (file (read getattr)))
(neverallow mediaextractor_26_0 fs_type (file (execute_no_trans)))
(neverallow mediaextractor_26_0 file_type (file (execute_no_trans)))
(neverallow mediaextractor_26_0 domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow mediaextractor_26_0 domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow mediaextractor_26_0 domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(allow mediametrics_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 mediametrics_26_0 (dir (search)))
(allow servicemanager_26_0 mediametrics_26_0 (file (read open)))
(allow servicemanager_26_0 mediametrics_26_0 (process (getattr)))
(allow mediametrics_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain mediametrics_26_0 (binder (transfer)))
(allow mediametrics_26_0 binderservicedomain (fd (use)))
(allow mediametrics_26_0 mediametrics_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_154_26_0 mediametrics_service_26_0 (service_manager (add)))
(neverallow mediametrics_26_0 unlabeled_26_0 (service_manager (add)))
(allow mediametrics_26_0 system_server_26_0 (fd (use)))
(allow mediametrics_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow mediametrics_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow mediametrics_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow mediametrics_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow mediametrics_26_0 app_data_file_26_0 (file (write)))
(neverallow mediametrics_26_0 fs_type (file (execute_no_trans)))
(neverallow mediametrics_26_0 file_type (file (execute_no_trans)))
(neverallow mediametrics_26_0 domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(neverallow mediametrics_26_0 domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(neverallow mediametrics_26_0 domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(allow mediaserver_26_0 sdcard_type (dir (ioctl read getattr lock search open)))
(allow mediaserver_26_0 sdcard_type (file (ioctl read getattr lock open)))
(allow mediaserver_26_0 sdcard_type (lnk_file (ioctl read getattr lock open)))
(allow mediaserver_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow mediaserver_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow mediaserver_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow mediaserver_26_0 proc_26_0 (lnk_file (getattr)))
(allow mediaserver_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow mediaserver_26_0 self (process (ptrace)))
(allow mediaserver_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 mediaserver_26_0 (dir (search)))
(allow servicemanager_26_0 mediaserver_26_0 (file (read open)))
(allow servicemanager_26_0 mediaserver_26_0 (process (getattr)))
(allow mediaserver_26_0 binderservicedomain (binder (call transfer)))
(allow binderservicedomain mediaserver_26_0 (binder (transfer)))
(allow mediaserver_26_0 binderservicedomain (fd (use)))
(allow mediaserver_26_0 appdomain (binder (call transfer)))
(allow appdomain mediaserver_26_0 (binder (transfer)))
(allow mediaserver_26_0 appdomain (fd (use)))
(allow mediaserver_26_0 media_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow mediaserver_26_0 media_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow mediaserver_26_0 app_data_file_26_0 (dir (search)))
(allow mediaserver_26_0 app_data_file_26_0 (file (ioctl read write getattr lock append open)))
(allow mediaserver_26_0 sdcard_type (file (write)))
(allow mediaserver_26_0 gpu_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediaserver_26_0 video_device_26_0 (dir (ioctl read getattr lock search open)))
(allow mediaserver_26_0 video_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediaserver_26_0 property_socket_26_0 (sock_file (write)))
(allow mediaserver_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow mediaserver_26_0 audio_prop_26_0 (property_service (set)))
(allow mediaserver_26_0 audio_prop_26_0 (file (ioctl read getattr lock open)))
(allow mediaserver_26_0 sysfs_26_0 (file (ioctl read getattr lock open)))
(allow mediaserver_26_0 apk_data_file_26_0 (file (read getattr)))
(allow mediaserver_26_0 asec_apk_file_26_0 (file (read getattr)))
(allow mediaserver_26_0 ringtone_file_26_0 (file (read getattr)))
(allow mediaserver_26_0 radio_data_file_26_0 (file (read getattr)))
(allow mediaserver_26_0 appdomain (fifo_file (read write getattr)))
(allow mediaserver_26_0 rpmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow mediaserver_26_0 system_server_26_0 (fifo_file (ioctl read getattr lock open)))
(allow mediaserver_26_0 media_rw_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow mediaserver_26_0 media_rw_data_file_26_0 (file (ioctl read getattr lock open)))
(allow mediaserver_26_0 media_rw_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow mediaserver_26_0 app_fuse_file_26_0 (file (read getattr)))
(allow mediaserver_26_0 qtaguid_proc_26_0 (file (ioctl read write getattr lock append open)))
(allow mediaserver_26_0 qtaguid_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow mediaserver_26_0 drmserver_socket_26_0 (sock_file (write)))
(allow mediaserver_26_0 drmserver_26_0 (unix_stream_socket (connectto)))
(allow mediaserver_26_0 bluetooth_socket_26_0 (sock_file (write)))
(allow mediaserver_26_0 bluetooth_26_0 (unix_stream_socket (connectto)))
(allow mediaserver_26_0 mediaserver_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_155_26_0 mediaserver_service_26_0 (service_manager (add)))
(neverallow mediaserver_26_0 unlabeled_26_0 (service_manager (add)))
(allow mediaserver_26_0 activity_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 appops_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 audioserver_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 cameraserver_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 batterystats_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 drmserver_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 mediaextractor_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 mediacodec_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 mediametrics_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 media_session_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 permission_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 power_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 processinfo_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 scheduling_policy_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 surfaceflinger_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 mediadrmserver_service_26_0 (service_manager (find)))
(allow mediaserver_26_0 hidl_token_hwservice_26_0 (hwservice_manager (find)))
(allow mediaserver_26_0 oemfs_26_0 (dir (search)))
(allow mediaserver_26_0 oemfs_26_0 (file (ioctl read getattr lock open)))
(allow drmserver_26_0 mediaserver_26_0 (dir (search)))
(allow drmserver_26_0 mediaserver_26_0 (file (read open)))
(allow drmserver_26_0 mediaserver_26_0 (process (getattr)))
(allow mediaserver_26_0 drmserver_26_0 (drmservice (consumeRights setPlaybackStatus openDecryptSession closeDecryptSession initializeDecryptUnit decrypt finalizeDecryptUnit pread)))
(allowx mediaserver_26_0 self (ioctl tcp_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx mediaserver_26_0 self (ioctl udp_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx mediaserver_26_0 self (ioctl rawip_socket (((range 0x5401 0x5403)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) 0x5451)))
(allowx mediaserver_26_0 self (ioctl tcp_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx mediaserver_26_0 self (ioctl udp_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx mediaserver_26_0 self (ioctl rawip_socket (((range 0x8906 0x8907)) 0x8910 ((range 0x8912 0x8913)) 0x8915 0x8917 0x8919 0x891b 0x8921 0x8933 0x8938 0x8942)))
(allowx mediaserver_26_0 self (ioctl tcp_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx mediaserver_26_0 self (ioctl udp_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allowx mediaserver_26_0 self (ioctl rawip_socket (0x8b01 0x8b05 0x8b07 0x8b09 0x8b0b 0x8b0d 0x8b0f ((range 0x8b11 0x8b13)) 0x8b21 0x8b23 0x8b25 0x8b27 0x8b29 0x8b2d)))
(allow mediaserver_26_0 media_rw_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow mediaserver_26_0 media_rw_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow mediaserver_26_0 preloads_media_file_26_0 (file (ioctl read getattr)))
(allow mediaserver_26_0 ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow mediaserver_26_0 hal_graphics_allocator (fd (use)))
(allow mediaserver_26_0 hal_graphics_composer (fd (use)))
(allow mediaserver_26_0 hal_camera (fd (use)))
(allow mediaserver_26_0 system_server_26_0 (fd (use)))
(allow mediaserver_26_0 mediacodec_26_0 (binder (call transfer)))
(allow mediacodec_26_0 mediaserver_26_0 (binder (transfer)))
(allow mediaserver_26_0 mediacodec_26_0 (fd (use)))
(neverallow mediaserver_26_0 fs_type (file (execute_no_trans)))
(neverallow mediaserver_26_0 file_type (file (execute_no_trans)))
(neverallowx mediaserver_26_0 domain (ioctl tcp_socket (0x6900 0x6902)))
(neverallowx mediaserver_26_0 domain (ioctl udp_socket (0x6900 0x6902)))
(neverallowx mediaserver_26_0 domain (ioctl rawip_socket (0x6900 0x6902)))
(neverallowx mediaserver_26_0 domain (ioctl tcp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx mediaserver_26_0 domain (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx mediaserver_26_0 domain (ioctl rawip_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx mediaserver_26_0 domain (ioctl tcp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx mediaserver_26_0 domain (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx mediaserver_26_0 domain (ioctl rawip_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow modprobe_26_0 proc_modules_26_0 (file (ioctl read getattr lock open)))
(allow modprobe_26_0 self (capability (sys_module)))
(allow modprobe_26_0 kernel_26_0 (key (search)))
(allow modprobe_26_0 system_file_26_0 (system (module_load)))
(allow modprobe_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow modprobe_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow modprobe_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow mtp_26_0 self (socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow mtp_26_0 self (capability (net_raw)))
(allow mtp_26_0 ppp_26_0 (process (signal)))
(allow mtp_26_0 vpn_data_file_26_0 (dir (search)))
(allowx netd_26_0 self (ioctl udp_socket (0x6900 0x6902)))
(allowx netd_26_0 self (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx netd_26_0 self (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow netd_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow netd_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow netd_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow netd_26_0 system_server_26_0 (fd (use)))
(allow netd_26_0 self (capability (kill net_admin net_raw)))
(dontaudit netd_26_0 self (capability (fsetid)))
(allow netd_26_0 self (netlink_kobject_uevent_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow netd_26_0 self (netlink_route_socket (nlmsg_write)))
(allow netd_26_0 self (netlink_nflog_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow netd_26_0 self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow netd_26_0 self (netlink_tcpdiag_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown nlmsg_read nlmsg_write)))
(allow netd_26_0 self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow netd_26_0 self (netlink_netfilter_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow netd_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow netd_26_0 system_file_26_0 (file (getattr execute execute_no_trans)))
(allow netd_26_0 devpts_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow netd_26_0 system_file_26_0 (file (lock)))
(allow netd_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow netd_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow netd_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow netd_26_0 proc_net_26_0 (file (ioctl read write getattr lock append open)))
(allow netd_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow netd_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow netd_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow netd_26_0 sysfs_26_0 (file (write)))
(allow netd_26_0 sysfs_usb_26_0 (file (write)))
(allow netd_26_0 self (capability (chown dac_override)))
(allow netd_26_0 net_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow netd_26_0 net_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow netd_26_0 self (capability (fowner)))
(allow netd_26_0 dnsmasq_26_0 (process (signal)))
(allow netd_26_0 clatd_26_0 (process (signal)))
(allow netd_26_0 property_socket_26_0 (sock_file (write)))
(allow netd_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow netd_26_0 ctl_mdnsd_prop_26_0 (property_service (set)))
(allow netd_26_0 ctl_mdnsd_prop_26_0 (file (ioctl read getattr lock open)))
(allow netd_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 netd_26_0 (dir (search)))
(allow servicemanager_26_0 netd_26_0 (file (read open)))
(allow servicemanager_26_0 netd_26_0 (process (getattr)))
(allow netd_26_0 netd_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_156_26_0 netd_service_26_0 (service_manager (add)))
(neverallow netd_26_0 unlabeled_26_0 (service_manager (add)))
(allow netd_26_0 dumpstate_26_0 (fifo_file (write getattr)))
(allow netd_26_0 system_server_26_0 (binder (call)))
(allow netd_26_0 permission_service_26_0 (service_manager (find)))
(allow netd_26_0 netd_listener_service_26_0 (service_manager (find)))
(allow netd_26_0 netdomain (tcp_socket (read write getattr setattr getopt setopt)))
(allow netd_26_0 netdomain (udp_socket (read write getattr setattr getopt setopt)))
(allow netd_26_0 netdomain (rawip_socket (read write getattr setattr getopt setopt)))
(allow netd_26_0 netdomain (tun_socket (read write getattr setattr getopt setopt)))
(allow netd_26_0 netdomain (fd (use)))
(allow netd_26_0 self (netlink_xfrm_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown nlmsg_read nlmsg_write)))
(neverallow netd_26_0 dev_type (blk_file (read write)))
(neverallow netd_26_0 domain (process (ptrace)))
(neverallow netd_26_0 system_file_26_0 (file (write)))
(neverallow netd_26_0 system_file_26_0 (dir (write)))
(neverallow netd_26_0 system_file_26_0 (lnk_file (write)))
(neverallow netd_26_0 system_file_26_0 (chr_file (write)))
(neverallow netd_26_0 system_file_26_0 (blk_file (write)))
(neverallow netd_26_0 system_file_26_0 (sock_file (write)))
(neverallow netd_26_0 system_file_26_0 (fifo_file (write)))
(neverallow netd_26_0 system_data_file_26_0 (file (write)))
(neverallow netd_26_0 system_data_file_26_0 (dir (write)))
(neverallow netd_26_0 system_data_file_26_0 (lnk_file (write)))
(neverallow netd_26_0 system_data_file_26_0 (chr_file (write)))
(neverallow netd_26_0 system_data_file_26_0 (blk_file (write)))
(neverallow netd_26_0 system_data_file_26_0 (sock_file (write)))
(neverallow netd_26_0 system_data_file_26_0 (fifo_file (write)))
(neverallow netd_26_0 app_data_file_26_0 (file (write)))
(neverallow netd_26_0 app_data_file_26_0 (dir (write)))
(neverallow netd_26_0 app_data_file_26_0 (lnk_file (write)))
(neverallow netd_26_0 app_data_file_26_0 (chr_file (write)))
(neverallow netd_26_0 app_data_file_26_0 (blk_file (write)))
(neverallow netd_26_0 app_data_file_26_0 (sock_file (write)))
(neverallow netd_26_0 app_data_file_26_0 (fifo_file (write)))
(neverallow base_typeattr_157_26_0 netd_service_26_0 (service_manager (find)))
(neverallow base_typeattr_63_26_0 netd_26_0 (binder (call)))
(neverallow netd_26_0 base_typeattr_146_26_0 (binder (call)))
(neverallow domain netutils_wrapper_exec_26_0 (file (execute_no_trans)))
(allow otapreopt_chroot_26_0 postinstall_file_26_0 (dir (mounton search)))
(allow otapreopt_chroot_26_0 self (capability (sys_chroot sys_admin)))
(allow otapreopt_chroot_26_0 block_device_26_0 (dir (search)))
(allow otapreopt_chroot_26_0 labeledfs_26_0 (filesystem (mount)))
(dontaudit otapreopt_chroot_26_0 kernel_26_0 (process (setsched)))
(allow otapreopt_chroot_26_0 postinstall_26_0 (fd (use)))
(allow otapreopt_chroot_26_0 update_engine_26_0 (fd (use)))
(allow otapreopt_chroot_26_0 update_engine_26_0 (fifo_file (write)))
(allow otapreopt_slot_26_0 ota_data_file_26_0 (dir (ioctl read write getattr lock rename add_name remove_name reparent search rmdir open)))
(allow otapreopt_slot_26_0 ota_data_file_26_0 (file (getattr)))
(allow otapreopt_slot_26_0 ota_data_file_26_0 (lnk_file (getattr)))
(allow otapreopt_slot_26_0 ota_data_file_26_0 (lnk_file (read)))
(allow otapreopt_slot_26_0 dalvikcache_data_file_26_0 (dir (read write getattr add_name remove_name search rmdir open)))
(allow otapreopt_slot_26_0 dalvikcache_data_file_26_0 (file (getattr unlink)))
(allow otapreopt_slot_26_0 dalvikcache_data_file_26_0 (lnk_file (read getattr unlink)))
(allow otapreopt_slot_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow otapreopt_slot_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow init_26_0 pdx_performance_client_endpoint_socket_type (unix_stream_socket (create bind)))
(allow performanced_26_0 pdx_performance_client_endpoint_socket_type (unix_stream_socket (read write getattr setattr lock append listen accept getopt setopt shutdown)))
(allow performanced_26_0 self (process (setsockcreate)))
(allow performanced_26_0 pdx_performance_client_channel_socket_type (unix_stream_socket (ioctl read write create getattr setattr lock append bind connect listen accept getopt setopt shutdown)))
(neverallow base_typeattr_158_26_0 pdx_performance_client_endpoint_socket_type (unix_stream_socket (listen accept)))
(allow performanced_26_0 self (capability (setgid setuid sys_nice)))
(allow performanced_26_0 appdomain (dir (ioctl read getattr lock search open)))
(allow performanced_26_0 bufferhubd_26_0 (dir (ioctl read getattr lock search open)))
(allow performanced_26_0 kernel_26_0 (dir (ioctl read getattr lock search open)))
(allow performanced_26_0 surfaceflinger_26_0 (dir (ioctl read getattr lock search open)))
(allow performanced_26_0 appdomain (file (ioctl read getattr lock open)))
(allow performanced_26_0 appdomain (lnk_file (ioctl read getattr lock open)))
(allow performanced_26_0 bufferhubd_26_0 (file (ioctl read getattr lock open)))
(allow performanced_26_0 bufferhubd_26_0 (lnk_file (ioctl read getattr lock open)))
(allow performanced_26_0 kernel_26_0 (file (ioctl read getattr lock open)))
(allow performanced_26_0 kernel_26_0 (lnk_file (ioctl read getattr lock open)))
(allow performanced_26_0 surfaceflinger_26_0 (file (ioctl read getattr lock open)))
(allow performanced_26_0 surfaceflinger_26_0 (lnk_file (ioctl read getattr lock open)))
(dontaudit performanced_26_0 domain (dir (read)))
(allow performanced_26_0 appdomain (process (setsched)))
(allow performanced_26_0 bufferhubd_26_0 (process (setsched)))
(allow performanced_26_0 kernel_26_0 (process (setsched)))
(allow performanced_26_0 surfaceflinger_26_0 (process (setsched)))
(allow performanced_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow performanced_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow performanced_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow perfprofd_26_0 sysfs_devices_system_cpu_26_0 (file (ioctl read write getattr lock append open)))
(allow perfprofd_26_0 system_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow perfprofd_26_0 app_data_file_26_0 (file (ioctl read getattr lock open)))
(allow perfprofd_26_0 app_data_file_26_0 (dir (search)))
(allow perfprofd_26_0 self (capability (dac_override)))
(allow perfprofd_26_0 perfprofd_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow perfprofd_26_0 perfprofd_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow perfprofd_26_0 logcat_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow perfprofd_26_0 logdr_socket_26_0 (sock_file (write)))
(allow perfprofd_26_0 logd_26_0 (unix_stream_socket (connectto)))
(allow perfprofd_26_0 logdw_socket_26_0 (sock_file (write)))
(allow perfprofd_26_0 logd_26_0 (unix_dgram_socket (sendto)))
(allow perfprofd_26_0 pmsg_device_26_0 (chr_file (write lock append open)))
(allow perfprofd_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow perfprofd_26_0 self (capability2 (block_suspend)))
(allow perfprofd_26_0 self (capability (sys_admin)))
(allow perfprofd_26_0 domain (dir (ioctl read getattr lock search open)))
(allow perfprofd_26_0 domain (file (ioctl read getattr lock open)))
(allow perfprofd_26_0 domain (lnk_file (ioctl read getattr lock open)))
(allow perfprofd_26_0 self (capability (sys_ptrace sys_resource)))
(neverallow perfprofd_26_0 domain (process (ptrace)))
(allow perfprofd_26_0 exec_type (file (ioctl read getattr lock open)))
(allow perfprofd_26_0 debugfs_tracing_26_0 (file (ioctl read getattr lock open)))
(allow perfprofd_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow perfprofd_26_0 self (capability (ipc_lock)))
(allow postinstall_26_0 update_engine_common (fd (use)))
(allow postinstall_26_0 update_engine_common (fifo_file (ioctl read write getattr lock append open)))
(allow postinstall_26_0 postinstall_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow postinstall_26_0 postinstall_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow postinstall_26_0 postinstall_file_26_0 (dir (ioctl read getattr lock search open)))
(allow postinstall_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow postinstall_26_0 system_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow postinstall_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow postinstall_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 postinstall_26_0 (dir (search)))
(allow servicemanager_26_0 postinstall_26_0 (file (read open)))
(allow servicemanager_26_0 postinstall_26_0 (process (getattr)))
(allow postinstall_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 postinstall_26_0 (binder (transfer)))
(allow postinstall_26_0 system_server_26_0 (fd (use)))
(allow postinstall_26_0 otadexopt_service_26_0 (service_manager (find)))
(neverallow base_typeattr_35_26_0 postinstall_26_0 (process (transition dyntransition)))
(allow postinstall_dexopt_26_0 self (capability (chown dac_override fowner setgid setuid)))
(allow postinstall_dexopt_26_0 postinstall_file_26_0 (filesystem (getattr)))
(allow postinstall_dexopt_26_0 postinstall_file_26_0 (dir (getattr search)))
(allow postinstall_dexopt_26_0 postinstall_file_26_0 (lnk_file (read)))
(allow postinstall_dexopt_26_0 proc_26_0 (file (read getattr open)))
(allow postinstall_dexopt_26_0 tmpfs_26_0 (file (read)))
(allow postinstall_dexopt_26_0 apk_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow postinstall_dexopt_26_0 apk_data_file_26_0 (file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 apk_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 vendor_app_file_26_0 (dir (ioctl read getattr lock search open)))
(allow postinstall_dexopt_26_0 vendor_app_file_26_0 (file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 vendor_app_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 user_profile_data_file_26_0 (dir (getattr search)))
(allow postinstall_dexopt_26_0 user_profile_data_file_26_0 (file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 ota_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow postinstall_dexopt_26_0 ota_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow postinstall_dexopt_26_0 ota_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (dir (relabelto)))
(allow postinstall_dexopt_26_0 dalvikcache_data_file_26_0 (file (relabelto link)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow postinstall_dexopt_26_0 kernel_26_0 (security (check_context)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow postinstall_dexopt_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow postinstall_dexopt_26_0 kernel_26_0 (security (compute_av)))
(allow postinstall_dexopt_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(allow postinstall_dexopt_26_0 postinstall_26_0 (process (sigchld)))
(allow postinstall_dexopt_26_0 otapreopt_chroot_26_0 (fd (use)))
(allow postinstall_dexopt_26_0 cpuctl_device_26_0 (dir (search)))
(allow ppp_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow ppp_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow ppp_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow ppp_26_0 mtp_26_0 (socket (ioctl read write getattr setattr lock append bind connect getopt setopt shutdown)))
(allowx ppp_26_0 self (ioctl udp_socket (0x6900 0x6902)))
(allowx ppp_26_0 self (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx ppp_26_0 self (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allowx ppp_26_0 mtp_26_0 (ioctl socket (((range 0x7436 0x7441)) ((range 0x7446 0x7447)) ((range 0x744b 0x745a)) ((range 0x7480 0x7488)))))
(allow ppp_26_0 mtp_26_0 (unix_dgram_socket (ioctl read write getattr setattr lock append bind connect getopt setopt shutdown)))
(allow ppp_26_0 ppp_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow ppp_26_0 self (capability (net_admin)))
(allow ppp_26_0 system_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow ppp_26_0 vpn_data_file_26_0 (dir (write lock add_name remove_name search open)))
(allow ppp_26_0 vpn_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow ppp_26_0 mtp_26_0 (fd (use)))
(allow preopt2cachename_26_0 cppreopts_26_0 (fd (use)))
(allow preopt2cachename_26_0 cppreopts_26_0 (fifo_file (read write getattr)))
(allow preopt2cachename_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow profman_26_0 user_profile_data_file_26_0 (file (read write getattr lock)))
(allow profman_26_0 asec_apk_file_26_0 (file (read)))
(allow profman_26_0 apk_data_file_26_0 (file (read)))
(allow profman_26_0 oemfs_26_0 (file (read)))
(allow profman_26_0 tmpfs_26_0 (file (read)))
(allow profman_26_0 profman_dump_data_file_26_0 (file (write)))
(allow profman_26_0 installd_26_0 (fd (use)))
(allow profman_26_0 app_data_file_26_0 (file (read write getattr lock)))
(neverallow profman_26_0 app_data_file_26_0 (file (open)))
(neverallow profman_26_0 app_data_file_26_0 (lnk_file (open)))
(neverallow profman_26_0 app_data_file_26_0 (sock_file (open)))
(neverallow profman_26_0 app_data_file_26_0 (fifo_file (open)))
(allow property_type tmpfs_26_0 (filesystem (associate)))
(neverallow base_typeattr_10_26_0 base_typeattr_159_26_0 (file (ioctl read write create setattr lock relabelfrom append unlink link rename open)))
(allowx racoon_26_0 self (ioctl udp_socket (0x8914 0x8916 0x891c)))
(allow racoon_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 racoon_26_0 (dir (search)))
(allow servicemanager_26_0 racoon_26_0 (file (read open)))
(allow servicemanager_26_0 racoon_26_0 (process (getattr)))
(allow racoon_26_0 tun_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow racoon_26_0 cgroup_26_0 (dir (create add_name)))
(allow racoon_26_0 kernel_26_0 (system (module_request)))
(allow racoon_26_0 self (key_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow racoon_26_0 self (tun_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow racoon_26_0 self (capability (net_bind_service net_admin net_raw)))
(allow racoon_26_0 system_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow racoon_26_0 vpn_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow racoon_26_0 vpn_data_file_26_0 (dir (write lock add_name remove_name search open)))
(allow keystore_26_0 racoon_26_0 (dir (search)))
(allow keystore_26_0 racoon_26_0 (file (read open)))
(allow keystore_26_0 racoon_26_0 (process (getattr)))
(allow racoon_26_0 keystore_service_26_0 (service_manager (find)))
(allow racoon_26_0 keystore_26_0 (binder (call transfer)))
(allow keystore_26_0 racoon_26_0 (binder (transfer)))
(allow racoon_26_0 keystore_26_0 (fd (use)))
(allow racoon_26_0 keystore_26_0 (keystore_key (get sign verify)))
(allow radio_26_0 radio_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow radio_26_0 radio_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow radio_26_0 radio_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow radio_26_0 radio_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow radio_26_0 radio_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow radio_26_0 alarm_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow radio_26_0 net_data_file_26_0 (dir (search)))
(allow radio_26_0 net_data_file_26_0 (file (ioctl read getattr lock open)))
(allow radio_26_0 property_socket_26_0 (sock_file (write)))
(allow radio_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow radio_26_0 radio_prop_26_0 (property_service (set)))
(allow radio_26_0 radio_prop_26_0 (file (ioctl read getattr lock open)))
(allow radio_26_0 property_socket_26_0 (sock_file (write)))
(allow radio_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow radio_26_0 net_radio_prop_26_0 (property_service (set)))
(allow radio_26_0 net_radio_prop_26_0 (file (ioctl read getattr lock open)))
(allow radio_26_0 property_socket_26_0 (sock_file (write)))
(allow radio_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow radio_26_0 ctl_rildaemon_prop_26_0 (property_service (set)))
(allow radio_26_0 ctl_rildaemon_prop_26_0 (file (ioctl read getattr lock open)))
(allow radio_26_0 radio_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_160_26_0 radio_service_26_0 (service_manager (add)))
(neverallow radio_26_0 unlabeled_26_0 (service_manager (add)))
(allow radio_26_0 audioserver_service_26_0 (service_manager (find)))
(allow radio_26_0 cameraserver_service_26_0 (service_manager (find)))
(allow radio_26_0 drmserver_service_26_0 (service_manager (find)))
(allow radio_26_0 mediaserver_service_26_0 (service_manager (find)))
(allow radio_26_0 nfc_service_26_0 (service_manager (find)))
(allow radio_26_0 surfaceflinger_service_26_0 (service_manager (find)))
(allow radio_26_0 app_api_service (service_manager (find)))
(allow radio_26_0 system_api_service (service_manager (find)))
(allow radio_26_0 hwservicemanager_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 radio_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 radio_26_0 (dir (search)))
(allow hwservicemanager_26_0 radio_26_0 (file (read open)))
(allow hwservicemanager_26_0 radio_26_0 (process (getattr)))
(neverallow recovery_26_0 data_file_type (file (write create setattr relabelfrom append unlink link rename execute execute_no_trans)))
(neverallow recovery_26_0 data_file_type (dir (write create setattr relabelfrom link rename add_name remove_name reparent rmdir)))
(allow recovery_persist_26_0 pstorefs_26_0 (dir (search)))
(allow recovery_persist_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow recovery_persist_26_0 recovery_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow recovery_persist_26_0 recovery_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(neverallow recovery_persist_26_0 dev_type (blk_file (read write)))
(neverallow recovery_persist_26_0 domain (process (ptrace)))
(neverallow recovery_persist_26_0 system_file_26_0 (file (write)))
(neverallow recovery_persist_26_0 system_file_26_0 (dir (write)))
(neverallow recovery_persist_26_0 system_file_26_0 (lnk_file (write)))
(neverallow recovery_persist_26_0 system_file_26_0 (chr_file (write)))
(neverallow recovery_persist_26_0 system_file_26_0 (blk_file (write)))
(neverallow recovery_persist_26_0 system_file_26_0 (sock_file (write)))
(neverallow recovery_persist_26_0 system_file_26_0 (fifo_file (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (file (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (dir (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (lnk_file (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (chr_file (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (blk_file (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (sock_file (write)))
(neverallow recovery_persist_26_0 system_data_file_26_0 (fifo_file (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (file (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (dir (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (lnk_file (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (chr_file (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (blk_file (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (sock_file (write)))
(neverallow recovery_persist_26_0 app_data_file_26_0 (fifo_file (write)))
(allow recovery_refresh_26_0 pstorefs_26_0 (dir (search)))
(allow recovery_refresh_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(neverallow recovery_refresh_26_0 dev_type (blk_file (read write)))
(neverallow recovery_refresh_26_0 domain (process (ptrace)))
(neverallow recovery_refresh_26_0 system_file_26_0 (file (write)))
(neverallow recovery_refresh_26_0 system_file_26_0 (dir (write)))
(neverallow recovery_refresh_26_0 system_file_26_0 (lnk_file (write)))
(neverallow recovery_refresh_26_0 system_file_26_0 (chr_file (write)))
(neverallow recovery_refresh_26_0 system_file_26_0 (blk_file (write)))
(neverallow recovery_refresh_26_0 system_file_26_0 (sock_file (write)))
(neverallow recovery_refresh_26_0 system_file_26_0 (fifo_file (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (file (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (dir (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (lnk_file (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (chr_file (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (blk_file (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (sock_file (write)))
(neverallow recovery_refresh_26_0 system_data_file_26_0 (fifo_file (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (file (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (dir (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (lnk_file (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (chr_file (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (blk_file (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (sock_file (write)))
(neverallow recovery_refresh_26_0 app_data_file_26_0 (fifo_file (write)))
(allowx rild_26_0 self (ioctl udp_socket (0x6900 0x6902)))
(allowx rild_26_0 self (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx rild_26_0 self (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow rild_26_0 self (netlink_route_socket (nlmsg_write)))
(allow rild_26_0 kernel_26_0 (system (module_request)))
(allow rild_26_0 self (capability (setgid setuid setpcap net_admin net_raw)))
(allow rild_26_0 alarm_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow rild_26_0 cgroup_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow rild_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow rild_26_0 radio_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow rild_26_0 radio_device_26_0 (blk_file (ioctl read getattr lock open)))
(allow rild_26_0 mtd_device_26_0 (dir (search)))
(allow rild_26_0 efs_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow rild_26_0 efs_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow rild_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow rild_26_0 bluetooth_efs_file_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 bluetooth_efs_file_26_0 (dir (ioctl read getattr lock search open)))
(allow rild_26_0 radio_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow rild_26_0 radio_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow rild_26_0 sdcard_type (dir (ioctl read getattr lock search open)))
(allow rild_26_0 system_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow rild_26_0 system_data_file_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 system_file_26_0 (file (getattr execute execute_no_trans)))
(allow rild_26_0 property_socket_26_0 (sock_file (write)))
(allow rild_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow rild_26_0 radio_prop_26_0 (property_service (set)))
(allow rild_26_0 radio_prop_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 tty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow rild_26_0 self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow rild_26_0 self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow rild_26_0 self (netlink_kobject_uevent_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow rild_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow rild_26_0 self (capability2 (block_suspend)))
(allow rild_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow rild_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow rild_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow rild_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow rild_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow rild_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow rild_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow rild_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow rild_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow rild_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow rild_26_0 self (socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow runas_26_0 adbd_26_0 (process (sigchld)))
(allow runas_26_0 adbd_26_0 (unix_stream_socket (read write)))
(allow runas_26_0 shell_26_0 (fd (use)))
(allow runas_26_0 shell_26_0 (fifo_file (read write)))
(allow runas_26_0 shell_26_0 (unix_stream_socket (read write)))
(allow runas_26_0 devpts_26_0 (chr_file (ioctl read write)))
(allow runas_26_0 shell_data_file_26_0 (file (read write)))
(allow runas_26_0 system_data_file_26_0 (file (ioctl read getattr lock open)))
(dontaudit runas_26_0 self (capability (dac_override)))
(allow runas_26_0 app_data_file_26_0 (dir (getattr search)))
(allow runas_26_0 self (capability (setgid setuid)))
(allow runas_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow runas_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow runas_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow runas_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow runas_26_0 kernel_26_0 (security (check_context)))
(allow runas_26_0 self (process (setcurrent)))
(allow runas_26_0 base_typeattr_161_26_0 (process (dyntransition)))
(allow runas_26_0 seapp_contexts_file_26_0 (file (ioctl read getattr lock open)))
(neverallow runas_26_0 self (capability (chown dac_override dac_read_search fowner fsetid kill setpcap linux_immutable net_bind_service net_broadcast net_admin net_raw ipc_lock ipc_owner sys_module sys_rawio sys_chroot sys_ptrace sys_pacct sys_admin sys_boot sys_nice sys_resource sys_time sys_tty_config mknod lease audit_write audit_control setfcap)))
(neverallow runas_26_0 self (capability2 (mac_override mac_admin syslog wake_alarm block_suspend audit_read)))
(allow sdcardd_26_0 cgroup_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow sdcardd_26_0 fuse_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow sdcardd_26_0 rootfs_26_0 (dir (mounton)))
(allow sdcardd_26_0 sdcardfs_26_0 (filesystem (remount)))
(allow sdcardd_26_0 tmpfs_26_0 (dir (ioctl read getattr lock search open)))
(allow sdcardd_26_0 mnt_media_rw_file_26_0 (dir (ioctl read getattr lock search open)))
(allow sdcardd_26_0 storage_file_26_0 (dir (search)))
(allow sdcardd_26_0 storage_stub_file_26_0 (dir (mounton search)))
(allow sdcardd_26_0 sdcard_type (filesystem (mount unmount)))
(allow sdcardd_26_0 self (capability (dac_override setgid setuid sys_admin sys_resource)))
(allow sdcardd_26_0 sdcard_type (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow sdcardd_26_0 sdcard_type (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow sdcardd_26_0 media_rw_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow sdcardd_26_0 media_rw_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow sdcardd_26_0 system_data_file_26_0 (file (ioctl read getattr lock open)))
(allow sdcardd_26_0 install_data_file_26_0 (file (ioctl read getattr lock open)))
(allow sdcardd_26_0 vold_26_0 (fd (use)))
(allow sdcardd_26_0 vold_26_0 (fifo_file (read write getattr)))
(allow sdcardd_26_0 mnt_expand_file_26_0 (dir (search)))
(allow sdcardd_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(neverallow init_26_0 sdcardd_exec_26_0 (file (execute)))
(neverallow init_26_0 sdcardd_26_0 (process (transition dyntransition)))
(allow servicemanager_26_0 self (binder (set_context_mgr)))
(allow servicemanager_26_0 base_typeattr_162_26_0 (binder (transfer)))
(allow servicemanager_26_0 service_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow servicemanager_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow servicemanager_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow servicemanager_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow servicemanager_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow servicemanager_26_0 kernel_26_0 (security (compute_av)))
(allow servicemanager_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(allow sgdisk_26_0 block_device_26_0 (dir (search)))
(allow sgdisk_26_0 vold_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow sgdisk_26_0 devpts_26_0 (chr_file (ioctl read write getattr)))
(allow sgdisk_26_0 vold_26_0 (fd (use)))
(allow sgdisk_26_0 vold_26_0 (fifo_file (read write getattr)))
(allow sgdisk_26_0 self (capability (sys_admin)))
(neverallow base_typeattr_92_26_0 sgdisk_26_0 (process (transition)))
(neverallow base_typeattr_10_26_0 sgdisk_26_0 (process (dyntransition)))
(neverallow sgdisk_26_0 base_typeattr_163_26_0 (file (entrypoint)))
(allow shared_relro_26_0 shared_relro_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow shared_relro_26_0 shared_relro_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow shared_relro_26_0 webviewupdate_service_26_0 (service_manager (find)))
(allow shell_26_0 logcat_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow shell_26_0 logdr_socket_26_0 (sock_file (write)))
(allow shell_26_0 logd_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 logd_socket_26_0 (sock_file (write)))
(allow shell_26_0 logd_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 pstorefs_26_0 (dir (search)))
(allow shell_26_0 pstorefs_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 anr_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 anr_data_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 shell_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow shell_26_0 shell_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow shell_26_0 shell_data_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow shell_26_0 shell_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow shell_26_0 profman_dump_data_file_26_0 (dir (write getattr remove_name search)))
(allow shell_26_0 profman_dump_data_file_26_0 (file (getattr unlink)))
(allow shell_26_0 nativetest_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 nativetest_data_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow shell_26_0 dumpstate_socket_26_0 (sock_file (write)))
(allow shell_26_0 dumpstate_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 devpts_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow shell_26_0 tty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow shell_26_0 console_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow shell_26_0 input_device_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 input_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow shell_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 system_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow shell_26_0 system_file_26_0 (file (getattr execute execute_no_trans)))
(allow shell_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow shell_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow shell_26_0 zygote_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow shell_26_0 apk_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 apk_data_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 apk_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 shell_prop_26_0 (property_service (set)))
(allow shell_26_0 shell_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 ctl_bugreport_prop_26_0 (property_service (set)))
(allow shell_26_0 ctl_bugreport_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 ctl_dumpstate_prop_26_0 (property_service (set)))
(allow shell_26_0 ctl_dumpstate_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 dumpstate_prop_26_0 (property_service (set)))
(allow shell_26_0 dumpstate_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 debug_prop_26_0 (property_service (set)))
(allow shell_26_0 debug_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 powerctl_prop_26_0 (property_service (set)))
(allow shell_26_0 powerctl_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 log_tag_prop_26_0 (property_service (set)))
(allow shell_26_0 log_tag_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 wifi_log_prop_26_0 (property_service (set)))
(allow shell_26_0 wifi_log_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 log_prop_26_0 (property_service (set)))
(allow shell_26_0 log_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 logpersistd_logging_prop_26_0 (property_service (set)))
(allow shell_26_0 logpersistd_logging_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 boottrace_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow shell_26_0 boottrace_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow shell_26_0 property_socket_26_0 (sock_file (write)))
(allow shell_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow shell_26_0 persist_debug_prop_26_0 (property_service (set)))
(allow shell_26_0 persist_debug_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 serialno_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 device_logging_prop_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 servicemanager_26_0 (service_manager (list)))
(allow shell_26_0 base_typeattr_164_26_0 (service_manager (find)))
(allow shell_26_0 dumpstate_26_0 (binder (call)))
(allow shell_26_0 hwservicemanager_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 shell_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 shell_26_0 (dir (search)))
(allow hwservicemanager_26_0 shell_26_0 (file (read open)))
(allow hwservicemanager_26_0 shell_26_0 (process (getattr)))
(allow shell_26_0 hwservicemanager_26_0 (hwservice_manager (list)))
(allow shell_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow shell_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow shell_26_0 proc_interrupts_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 proc_stat_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 proc_timer_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 proc_zoneinfo_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 cgroup_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 cgroup_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 cgroup_26_0 (lnk_file (ioctl read getattr lock open)))
(allow shell_26_0 domain (dir (read getattr search open)))
(allow shell_26_0 domain (file (read getattr open)))
(allow shell_26_0 domain (lnk_file (read getattr open)))
(allow shell_26_0 labeledfs_26_0 (filesystem (getattr)))
(allow shell_26_0 proc_26_0 (filesystem (getattr)))
(allow shell_26_0 device_26_0 (dir (getattr)))
(allow shell_26_0 domain (process (getattr)))
(allow shell_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 bootchart_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow shell_26_0 bootchart_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow shell_26_0 self (process (ptrace)))
(allow shell_26_0 sysfs_batteryinfo_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 sysfs_26_0 (dir (ioctl read getattr lock search open)))
(allow shell_26_0 ion_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow shell_26_0 dev_type (dir (ioctl read getattr lock search open)))
(allow shell_26_0 dev_type (chr_file (getattr)))
(allow shell_26_0 proc_26_0 (lnk_file (getattr)))
(allow shell_26_0 dev_type (blk_file (getattr)))
(allow shell_26_0 file_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 property_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 seapp_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 service_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow shell_26_0 sepolicy_file_26_0 (file (ioctl read getattr lock open)))
(neverallow shell_26_0 file_type (file (link)))
(neverallowx shell_26_0 domain (ioctl tcp_socket (0x6900 0x6902)))
(neverallowx shell_26_0 domain (ioctl udp_socket (0x6900 0x6902)))
(neverallowx shell_26_0 domain (ioctl rawip_socket (0x6900 0x6902)))
(neverallowx shell_26_0 domain (ioctl tcp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx shell_26_0 domain (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx shell_26_0 domain (ioctl rawip_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(neverallowx shell_26_0 domain (ioctl tcp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx shell_26_0 domain (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallowx shell_26_0 domain (ioctl rawip_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(neverallow shell_26_0 hw_random_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow shell_26_0 kmem_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow shell_26_0 port_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow shell_26_0 fuse_device_26_0 (chr_file (ioctl read write create setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow shell_26_0 dev_type (blk_file (ioctl read write create setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(allow slideshow_26_0 kmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow slideshow_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow slideshow_26_0 self (capability2 (block_suspend)))
(allow slideshow_26_0 device_26_0 (dir (ioctl read getattr lock search open)))
(allow slideshow_26_0 self (capability (sys_tty_config)))
(allow slideshow_26_0 graphics_device_26_0 (dir (ioctl read getattr lock search open)))
(allow slideshow_26_0 graphics_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow slideshow_26_0 input_device_26_0 (dir (ioctl read getattr lock search open)))
(allow slideshow_26_0 input_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow slideshow_26_0 tty_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow su_26_0 vndbinder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow su_26_0 vndservicemanager_26_0 (binder (call transfer)))
(allow vndservicemanager_26_0 su_26_0 (dir (search)))
(allow vndservicemanager_26_0 su_26_0 (file (read open)))
(allow vndservicemanager_26_0 su_26_0 (process (getattr)))
(dontaudit su_26_0 self (capability (chown dac_override dac_read_search fowner fsetid kill setgid setuid setpcap linux_immutable net_bind_service net_broadcast net_admin net_raw ipc_lock ipc_owner sys_module sys_rawio sys_chroot sys_ptrace sys_pacct sys_admin sys_boot sys_nice sys_resource sys_time sys_tty_config mknod lease audit_write audit_control setfcap)))
(dontaudit su_26_0 self (capability2 (mac_override mac_admin syslog wake_alarm block_suspend audit_read)))
(dontaudit su_26_0 kernel_26_0 (security (compute_av compute_create compute_member check_context load_policy compute_relabel compute_user setenforce setbool setsecparam setcheckreqprot read_policy)))
(dontaudit su_26_0 kernel_26_0 (system (ipc_info syslog_read syslog_mod syslog_console module_request module_load)))
(dontaudit su_26_0 self (memprotect (mmap_zero)))
(dontaudit su_26_0 domain (process (fork transition sigchld sigkill sigstop signull signal ptrace getsched setsched getsession getpgid setpgid getcap setcap share getattr setexec setfscreate noatsecure siginh setrlimit rlimitinh dyntransition setcurrent execmem execstack execheap setkeycreate setsockcreate)))
(dontaudit su_26_0 domain (fd (use)))
(dontaudit su_26_0 domain (dir (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(dontaudit su_26_0 domain (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 domain (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 domain (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 domain (socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(dontaudit su_26_0 domain (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 domain (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 domain (netlink_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (packet_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (key_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (unix_stream_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind connectto)))
(dontaudit su_26_0 domain (unix_dgram_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_route_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write)))
(dontaudit su_26_0 domain (netlink_tcpdiag_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write)))
(dontaudit su_26_0 domain (netlink_nflog_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_xfrm_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write)))
(dontaudit su_26_0 domain (netlink_selinux_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_audit_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write nlmsg_relay nlmsg_readpriv nlmsg_tty_audit)))
(dontaudit su_26_0 domain (netlink_dnrt_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_kobject_uevent_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (appletalk_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (tun_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind attach_queue)))
(dontaudit su_26_0 domain (netlink_iscsi_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_fib_lookup_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_connector_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_netfilter_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_generic_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_scsitransport_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_rdma_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netlink_crypto_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (sctp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 domain (icmp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 domain (ax25_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (ipx_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (netrom_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (atmpvc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (x25_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (rose_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (decnet_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (atmsvc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (rds_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (irda_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (pppox_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (llc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (can_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (tipc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (bluetooth_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (iucv_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (rxrpc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (isdn_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (phonet_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (ieee802154_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (caif_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (alg_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (nfc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (vsock_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (kcm_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (qipcrtr_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 domain (sem (create destroy getattr setattr read write associate unix_read unix_write)))
(dontaudit su_26_0 domain (msgq (create destroy getattr setattr read write associate unix_read unix_write enqueue)))
(dontaudit su_26_0 domain (shm (create destroy getattr setattr read write associate unix_read unix_write lock)))
(dontaudit su_26_0 domain (ipc (create destroy getattr setattr read write associate unix_read unix_write)))
(dontaudit su_26_0 domain (key (view read write search link setattr create)))
(dontaudit su_26_0 fs_type (filesystem (mount remount unmount getattr relabelfrom relabelto associate quotamod quotaget)))
(dontaudit su_26_0 dev_type (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 dev_type (dir (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(dontaudit su_26_0 dev_type (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 dev_type (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 dev_type (blk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 dev_type (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 dev_type (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 fs_type (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 fs_type (dir (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(dontaudit su_26_0 fs_type (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 fs_type (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 fs_type (blk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 fs_type (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 fs_type (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 file_type (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 file_type (dir (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(dontaudit su_26_0 file_type (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 file_type (chr_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 file_type (blk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 file_type (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 file_type (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(dontaudit su_26_0 node_type (node (recvfrom sendto)))
(dontaudit su_26_0 node_type (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(dontaudit su_26_0 node_type (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 node_type (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 netif_type (netif (ingress egress)))
(dontaudit su_26_0 port_type (socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(dontaudit su_26_0 port_type (udp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 port_type (rawip_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 port_type (netlink_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (packet_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (key_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (unix_stream_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind connectto)))
(dontaudit su_26_0 port_type (unix_dgram_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_route_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write)))
(dontaudit su_26_0 port_type (netlink_tcpdiag_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write)))
(dontaudit su_26_0 port_type (netlink_nflog_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_xfrm_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write)))
(dontaudit su_26_0 port_type (netlink_selinux_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_audit_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind nlmsg_read nlmsg_write nlmsg_relay nlmsg_readpriv nlmsg_tty_audit)))
(dontaudit su_26_0 port_type (netlink_dnrt_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_kobject_uevent_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (appletalk_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (tun_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind attach_queue)))
(dontaudit su_26_0 port_type (netlink_iscsi_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_fib_lookup_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_connector_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_netfilter_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_generic_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_scsitransport_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_rdma_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netlink_crypto_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (sctp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 port_type (icmp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind)))
(dontaudit su_26_0 port_type (ax25_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (ipx_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (netrom_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (atmpvc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (x25_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (rose_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (decnet_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (atmsvc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (rds_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (irda_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (pppox_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (llc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (can_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (tipc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (bluetooth_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (iucv_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (rxrpc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (isdn_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (phonet_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (ieee802154_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (caif_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (alg_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (nfc_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (vsock_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (kcm_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (qipcrtr_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(dontaudit su_26_0 port_type (tcp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(dontaudit su_26_0 port_type (dccp_socket (ioctl read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind node_bind name_connect)))
(dontaudit su_26_0 domain (peer (recv)))
(dontaudit su_26_0 domain (binder (impersonate call set_context_mgr transfer)))
(dontaudit su_26_0 property_type (property_service (set)))
(dontaudit su_26_0 property_type (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(dontaudit su_26_0 service_manager_type (service_manager (add find list)))
(dontaudit su_26_0 hwservice_manager_type (hwservice_manager (add find list)))
(dontaudit su_26_0 vndservice_manager_type (service_manager (add find list)))
(dontaudit su_26_0 servicemanager_26_0 (service_manager (list)))
(dontaudit su_26_0 hwservicemanager_26_0 (hwservice_manager (list)))
(dontaudit su_26_0 vndservicemanager_26_0 (service_manager (list)))
(dontaudit su_26_0 keystore_26_0 (keystore_key (get_state get insert delete exist list reset password lock unlock is_empty sign verify grant duplicate clear_uid add_auth user_changed gen_unique_id)))
(dontaudit su_26_0 domain (drmservice (consumeRights setPlaybackStatus openDecryptSession closeDecryptSession initializeDecryptUnit decrypt finalizeDecryptUnit pread)))
(dontaudit su_26_0 unlabeled_26_0 (filesystem (mount remount unmount getattr relabelfrom relabelto associate quotamod quotaget)))
(dontaudit su_26_0 postinstall_file_26_0 (filesystem (mount remount unmount getattr relabelfrom relabelto associate quotamod quotaget)))
(allow tombstoned_26_0 domain (fd (use)))
(allow tombstoned_26_0 domain (fifo_file (write)))
(allow tombstoned_26_0 domain (dir (ioctl read getattr lock search open)))
(allow tombstoned_26_0 domain (file (ioctl read getattr lock open)))
(allow tombstoned_26_0 tombstone_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow tombstoned_26_0 tombstone_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow tombstoned_26_0 anr_data_file_26_0 (file (getattr append)))
(allow tombstoned_26_0 anr_data_file_26_0 (file (write)))
(auditallow tombstoned_26_0 anr_data_file_26_0 (file (write)))
(allow toolbox_26_0 tmpfs_26_0 (chr_file (ioctl read write)))
(allow toolbox_26_0 devpts_26_0 (chr_file (ioctl read write getattr)))
(allow toolbox_26_0 block_device_26_0 (dir (search)))
(allow toolbox_26_0 swap_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(neverallow base_typeattr_5_26_0 toolbox_26_0 (process (transition)))
(neverallow base_typeattr_10_26_0 toolbox_26_0 (process (dyntransition)))
(neverallow toolbox_26_0 base_typeattr_165_26_0 (file (entrypoint)))
(allow tzdatacheck_26_0 zoneinfo_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow tzdatacheck_26_0 zoneinfo_data_file_26_0 (file (unlink)))
(allow ueventd_26_0 kmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow ueventd_26_0 self (capability (chown dac_override fowner fsetid setgid net_admin sys_rawio mknod)))
(allow ueventd_26_0 device_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow ueventd_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow ueventd_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow ueventd_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow ueventd_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow ueventd_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow ueventd_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow ueventd_26_0 sysfs_26_0 (file (write lock append open)))
(allow ueventd_26_0 sysfs_usb_26_0 (file (write lock append open)))
(allow ueventd_26_0 sysfs_hwrandom_26_0 (file (write lock append open)))
(allow ueventd_26_0 sysfs_zram_uevent_26_0 (file (write lock append open)))
(allow ueventd_26_0 sysfs_type (file (getattr setattr relabelfrom relabelto)))
(allow ueventd_26_0 sysfs_type (lnk_file (getattr setattr relabelfrom relabelto)))
(allow ueventd_26_0 sysfs_type (dir (ioctl read getattr setattr lock relabelfrom relabelto search open)))
(allow ueventd_26_0 sysfs_devices_system_cpu_26_0 (file (ioctl read write getattr lock append open)))
(allow ueventd_26_0 tmpfs_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow ueventd_26_0 dev_type (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow ueventd_26_0 dev_type (lnk_file (create unlink)))
(allow ueventd_26_0 dev_type (chr_file (create getattr setattr unlink)))
(allow ueventd_26_0 dev_type (blk_file (create getattr setattr relabelfrom relabelto unlink)))
(allow ueventd_26_0 self (netlink_kobject_uevent_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow ueventd_26_0 efs_file_26_0 (dir (search)))
(allow ueventd_26_0 efs_file_26_0 (file (ioctl read getattr lock open)))
(allow ueventd_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow ueventd_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow ueventd_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow ueventd_26_0 vendor_file_26_0 (dir (ioctl read getattr lock search open)))
(allow ueventd_26_0 vendor_file_26_0 (file (ioctl read getattr lock open)))
(allow ueventd_26_0 vendor_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow ueventd_26_0 file_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow ueventd_26_0 self (process (setfscreate)))
(neverallow ueventd_26_0 property_socket_26_0 (sock_file (write)))
(neverallow ueventd_26_0 init_26_0 (unix_stream_socket (connectto)))
(neverallow ueventd_26_0 property_type (property_service (set)))
(neverallow ueventd_26_0 dev_type (blk_file (ioctl read write lock append link rename execute quotaon mounton open audit_access execmod)))
(neverallow ueventd_26_0 kmem_device_26_0 (chr_file (ioctl read write lock relabelfrom append link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow ueventd_26_0 port_device_26_0 (chr_file (ioctl read write lock relabelfrom append link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(allow uncrypt_26_0 self (capability (dac_override)))
(allow uncrypt_26_0 app_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow uncrypt_26_0 app_data_file_26_0 (file (ioctl read getattr lock open)))
(allow uncrypt_26_0 app_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow uncrypt_26_0 shell_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow uncrypt_26_0 shell_data_file_26_0 (file (ioctl read getattr lock open)))
(allow uncrypt_26_0 shell_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow uncrypt_26_0 cache_recovery_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow uncrypt_26_0 cache_recovery_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow uncrypt_26_0 ota_package_file_26_0 (dir (ioctl read getattr lock search open)))
(allow uncrypt_26_0 ota_package_file_26_0 (file (ioctl read getattr lock open)))
(allow uncrypt_26_0 uncrypt_socket_26_0 (sock_file (write)))
(allow uncrypt_26_0 uncrypt_26_0 (unix_stream_socket (connectto)))
(allow uncrypt_26_0 property_socket_26_0 (sock_file (write)))
(allow uncrypt_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow uncrypt_26_0 powerctl_prop_26_0 (property_service (set)))
(allow uncrypt_26_0 powerctl_prop_26_0 (file (ioctl read getattr lock open)))
(allow uncrypt_26_0 self (capability (sys_rawio)))
(allow uncrypt_26_0 misc_block_device_26_0 (blk_file (write lock append open)))
(allow uncrypt_26_0 block_device_26_0 (dir (ioctl read getattr lock search open)))
(allow uncrypt_26_0 userdata_block_device_26_0 (blk_file (write lock append open)))
(allow uncrypt_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow uncrypt_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow uncrypt_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow update_engine_26_0 qtaguid_proc_26_0 (file (ioctl read write getattr lock append open)))
(allow update_engine_26_0 qtaguid_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow update_engine_26_0 self (process (setsched)))
(allow update_engine_26_0 self (capability (fowner sys_admin)))
(allow update_engine_26_0 kmsg_device_26_0 (chr_file (write lock append open)))
(allow update_engine_26_0 update_engine_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow update_engine_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow update_engine_26_0 self (capability2 (block_suspend)))
(dontaudit update_engine_26_0 kernel_26_0 (process (setsched)))
(allow update_engine_26_0 update_engine_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow update_engine_26_0 update_engine_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(dontaudit update_engine_26_0 kernel_26_0 (system (module_request)))
(allow update_engine_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 update_engine_26_0 (dir (search)))
(allow servicemanager_26_0 update_engine_26_0 (file (read open)))
(allow servicemanager_26_0 update_engine_26_0 (process (getattr)))
(allow update_engine_26_0 update_engine_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_166_26_0 update_engine_service_26_0 (service_manager (add)))
(neverallow update_engine_26_0 unlabeled_26_0 (service_manager (add)))
(allow update_engine_26_0 priv_app_26_0 (binder (call transfer)))
(allow priv_app_26_0 update_engine_26_0 (binder (transfer)))
(allow update_engine_26_0 priv_app_26_0 (fd (use)))
(allow update_engine_26_0 ota_package_file_26_0 (file (ioctl read getattr lock open)))
(allow update_engine_26_0 ota_package_file_26_0 (dir (ioctl read getattr lock search open)))
(allow update_engine_common block_device_26_0 (dir (search)))
(allow update_engine_common boot_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow update_engine_common system_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow update_engine_common misc_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow update_engine_common postinstall_mnt_dir_26_0 (dir (mounton)))
(allow update_engine_common postinstall_file_26_0 (filesystem (mount unmount relabelfrom relabelto)))
(allow update_engine_common labeledfs_26_0 (filesystem (relabelfrom)))
(allow update_engine_common postinstall_file_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow update_engine_common postinstall_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow update_engine_common postinstall_file_26_0 (dir (ioctl read getattr lock search open)))
(allow update_engine_common shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow update_engine_common postinstall_26_0 (process (sigkill sigstop signal)))
(allow update_engine_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow update_engine_26_0 proc_misc_26_0 (file (ioctl read getattr lock open)))
(allow update_engine_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow update_verifier_26_0 block_device_26_0 (dir (search)))
(allow update_verifier_26_0 ota_package_file_26_0 (dir (ioctl read getattr lock search open)))
(allow update_verifier_26_0 ota_package_file_26_0 (file (ioctl read getattr lock open)))
(allow update_verifier_26_0 dm_device_26_0 (blk_file (ioctl read getattr lock open)))
(allow update_verifier_26_0 property_socket_26_0 (sock_file (write)))
(allow update_verifier_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow update_verifier_26_0 powerctl_prop_26_0 (property_service (set)))
(allow update_verifier_26_0 powerctl_prop_26_0 (file (ioctl read getattr lock open)))
(allow vdc_26_0 vold_socket_26_0 (sock_file (write)))
(allow vdc_26_0 vold_26_0 (unix_stream_socket (connectto)))
(allow vdc_26_0 dumpstate_26_0 (fd (use)))
(allow vdc_26_0 dumpstate_26_0 (unix_stream_socket (read write getattr)))
(allow vdc_26_0 shell_data_file_26_0 (file (write getattr)))
(allow vdc_26_0 dumpstate_26_0 (unix_dgram_socket (read write)))
(allow vdc_26_0 devpts_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vdc_26_0 kmsg_device_26_0 (chr_file (write lock append open)))
(neverallow base_typeattr_167_26_0 vendor_toolbox_exec_26_0 (file (execute execute_no_trans entrypoint)))
(allow virtual_touchpad_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 virtual_touchpad_26_0 (dir (search)))
(allow servicemanager_26_0 virtual_touchpad_26_0 (file (read open)))
(allow servicemanager_26_0 virtual_touchpad_26_0 (process (getattr)))
(allow virtual_touchpad_26_0 virtual_touchpad_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_168_26_0 virtual_touchpad_service_26_0 (service_manager (add)))
(neverallow virtual_touchpad_26_0 unlabeled_26_0 (service_manager (add)))
(allow virtual_touchpad_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 virtual_touchpad_26_0 (binder (transfer)))
(allow virtual_touchpad_26_0 system_server_26_0 (fd (use)))
(allow virtual_touchpad_26_0 uhid_device_26_0 (chr_file (ioctl write lock append open)))
(allow virtual_touchpad_26_0 permission_service_26_0 (service_manager (find)))
(allow vold_26_0 cache_file_26_0 (dir (ioctl read getattr lock search open)))
(allow vold_26_0 cache_file_26_0 (file (read getattr)))
(allow vold_26_0 cache_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow vold_26_0 proc_26_0 (dir (ioctl read getattr lock search open)))
(allow vold_26_0 proc_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 proc_26_0 (lnk_file (ioctl read getattr lock open)))
(allow vold_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow vold_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow vold_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow vold_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow vold_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow vold_26_0 sysfs_26_0 (file (write lock append open)))
(allow vold_26_0 sysfs_usb_26_0 (file (write lock append open)))
(allow vold_26_0 sysfs_zram_uevent_26_0 (file (write lock append open)))
(allow vold_26_0 rootfs_26_0 (dir (ioctl read getattr lock search open)))
(allow vold_26_0 rootfs_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 rootfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow vold_26_0 proc_meminfo_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 file_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 self (process (setexec)))
(allow vold_26_0 shell_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow vold_26_0 self (process (setfscreate)))
(allow vold_26_0 system_file_26_0 (file (getattr execute execute_no_trans)))
(allow vold_26_0 block_device_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 device_26_0 (dir (write)))
(allow vold_26_0 devpts_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vold_26_0 rootfs_26_0 (dir (mounton)))
(allow vold_26_0 sdcard_type (dir (mounton)))
(allow vold_26_0 sdcard_type (filesystem (mount remount unmount)))
(allow vold_26_0 sdcard_type (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 sdcard_type (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 sdcard_type (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 mnt_media_rw_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 storage_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 sdcard_type (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 mnt_media_rw_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 storage_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 media_rw_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 media_rw_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 mnt_media_rw_stub_file_26_0 (dir (create getattr setattr mounton rmdir)))
(allow vold_26_0 storage_stub_file_26_0 (dir (create getattr setattr mounton rmdir)))
(allow vold_26_0 mnt_user_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 mnt_user_file_26_0 (lnk_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 mnt_expand_file_26_0 (dir (ioctl read write create getattr setattr lock rename mounton add_name remove_name reparent search rmdir open)))
(allow vold_26_0 apk_data_file_26_0 (dir (create getattr setattr)))
(allow vold_26_0 shell_data_file_26_0 (dir (create getattr setattr)))
(allow vold_26_0 tmpfs_26_0 (filesystem (mount unmount)))
(allow vold_26_0 tmpfs_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 tmpfs_26_0 (dir (mounton)))
(allow vold_26_0 self (capability (chown dac_override fowner fsetid net_admin sys_admin mknod)))
(allow vold_26_0 self (netlink_kobject_uevent_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow vold_26_0 app_data_file_26_0 (dir (search)))
(allow vold_26_0 app_data_file_26_0 (file (ioctl read write getattr lock append open)))
(allow vold_26_0 loop_control_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vold_26_0 loop_device_26_0 (blk_file (ioctl read write create getattr setattr lock append unlink open)))
(allow vold_26_0 vold_device_26_0 (blk_file (ioctl read write create getattr setattr lock append unlink open)))
(allow vold_26_0 dm_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vold_26_0 dm_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow vold_26_0 domain (dir (ioctl read getattr lock search open)))
(allow vold_26_0 domain (file (ioctl read getattr lock open)))
(allow vold_26_0 domain (lnk_file (ioctl read getattr lock open)))
(allow vold_26_0 domain (process (sigkill signal)))
(allow vold_26_0 self (capability (kill sys_ptrace)))
(allow vold_26_0 sysfs_26_0 (file (ioctl read write getattr lock append open)))
(allow vold_26_0 kmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vold_26_0 fsck_exec_26_0 (file (ioctl read getattr lock execute open)))
(allow vold_26_0 fscklogs_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow vold_26_0 fscklogs_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 labeledfs_26_0 (filesystem (mount unmount)))
(allow vold_26_0 efs_file_26_0 (file (ioctl read write getattr lock append open)))
(allow vold_26_0 system_data_file_26_0 (dir (ioctl read write create getattr setattr lock mounton add_name remove_name search rmdir open)))
(allow vold_26_0 kernel_26_0 (process (setsched)))
(allow vold_26_0 property_socket_26_0 (sock_file (write)))
(allow vold_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow vold_26_0 vold_prop_26_0 (property_service (set)))
(allow vold_26_0 vold_prop_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 property_socket_26_0 (sock_file (write)))
(allow vold_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow vold_26_0 powerctl_prop_26_0 (property_service (set)))
(allow vold_26_0 powerctl_prop_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 property_socket_26_0 (sock_file (write)))
(allow vold_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow vold_26_0 ctl_fuse_prop_26_0 (property_service (set)))
(allow vold_26_0 ctl_fuse_prop_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 property_socket_26_0 (sock_file (write)))
(allow vold_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow vold_26_0 restorecon_prop_26_0 (property_service (set)))
(allow vold_26_0 restorecon_prop_26_0 (file (ioctl read getattr lock open)))
(allow vold_26_0 asec_image_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 asec_image_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow vold_26_0 asec_apk_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto rename mounton add_name remove_name reparent search rmdir open)))
(allow vold_26_0 asec_public_file_26_0 (dir (setattr relabelto)))
(allow vold_26_0 asec_apk_file_26_0 (file (ioctl read getattr setattr lock relabelfrom relabelto open)))
(allow vold_26_0 asec_public_file_26_0 (file (setattr relabelto)))
(allow vold_26_0 unlabeled_26_0 (dir (ioctl read getattr setattr lock relabelfrom search open)))
(allow vold_26_0 unlabeled_26_0 (file (ioctl read getattr setattr lock relabelfrom open)))
(allow vold_26_0 sysfs_wake_lock_26_0 (file (ioctl read write getattr lock append open)))
(allow vold_26_0 self (capability2 (block_suspend)))
(allow vold_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 vold_26_0 (dir (search)))
(allow servicemanager_26_0 vold_26_0 (file (read open)))
(allow servicemanager_26_0 vold_26_0 (process (getattr)))
(allow vold_26_0 healthd_26_0 (binder (call transfer)))
(allow healthd_26_0 vold_26_0 (binder (transfer)))
(allow vold_26_0 healthd_26_0 (fd (use)))
(allow vold_26_0 userdata_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow vold_26_0 metadata_block_device_26_0 (blk_file (ioctl read write getattr lock append open)))
(allow vold_26_0 unencrypted_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 unencrypted_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 proc_drop_caches_26_0 (file (write lock append open)))
(allow vold_26_0 vold_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 vold_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow vold_26_0 init_26_0 (key (write search setattr)))
(allow vold_26_0 vold_26_0 (key (write search setattr)))
(allow vold_26_0 self (capability (sys_nice)))
(allow vold_26_0 self (capability (sys_chroot)))
(allow vold_26_0 storage_file_26_0 (dir (mounton)))
(allow vold_26_0 fuse_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vold_26_0 fuse_26_0 (filesystem (relabelfrom)))
(allow vold_26_0 app_fusefs_26_0 (filesystem (relabelfrom relabelto)))
(allow vold_26_0 app_fusefs_26_0 (filesystem (mount unmount)))
(allow vold_26_0 toolbox_exec_26_0 (file (ioctl read getattr lock execute execute_no_trans open)))
(allow vold_26_0 user_profile_data_file_26_0 (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow vold_26_0 misc_block_device_26_0 (blk_file (write lock append open)))
(neverallow base_typeattr_92_26_0 vold_data_file_26_0 (dir (write lock relabelfrom append unlink link rename execute quotaon mounton add_name remove_name reparent rmdir audit_access execmod)))
(neverallow base_typeattr_169_26_0 vold_data_file_26_0 (file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_169_26_0 vold_data_file_26_0 (lnk_file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_169_26_0 vold_data_file_26_0 (sock_file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_169_26_0 vold_data_file_26_0 (fifo_file (ioctl read write create setattr lock relabelfrom append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_90_26_0 vold_data_file_26_0 (dir (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton add_name remove_name reparent search rmdir open audit_access execmod)))
(neverallow base_typeattr_170_26_0 vold_data_file_26_0 (file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton execute_no_trans entrypoint execmod open audit_access)))
(neverallow base_typeattr_170_26_0 vold_data_file_26_0 (lnk_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_170_26_0 vold_data_file_26_0 (sock_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_170_26_0 vold_data_file_26_0 (fifo_file (ioctl read write create getattr setattr lock relabelfrom relabelto append unlink link rename execute quotaon mounton open audit_access execmod)))
(neverallow base_typeattr_90_26_0 restorecon_prop_26_0 (property_service (set)))
(neverallow vold_26_0 fsck_exec_26_0 (file (execute_no_trans)))
(allow vr_hwc_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 vr_hwc_26_0 (dir (search)))
(allow servicemanager_26_0 vr_hwc_26_0 (file (read open)))
(allow servicemanager_26_0 vr_hwc_26_0 (process (getattr)))
(allow vr_hwc_26_0 surfaceflinger_26_0 (binder (call transfer)))
(allow surfaceflinger_26_0 vr_hwc_26_0 (binder (transfer)))
(allow vr_hwc_26_0 surfaceflinger_26_0 (fd (use)))
(allow vr_hwc_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 vr_hwc_26_0 (binder (transfer)))
(allow vr_hwc_26_0 system_server_26_0 (fd (use)))
(allow vr_hwc_26_0 vr_hwc_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_171_26_0 vr_hwc_service_26_0 (service_manager (add)))
(neverallow vr_hwc_26_0 unlabeled_26_0 (service_manager (add)))
(allow vr_hwc_26_0 hwservicemanager_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 vr_hwc_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 vr_hwc_26_0 (dir (search)))
(allow hwservicemanager_26_0 vr_hwc_26_0 (file (read open)))
(allow hwservicemanager_26_0 vr_hwc_26_0 (process (getattr)))
(allow vr_hwc_26_0 system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow vr_hwc_26_0 ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow vr_hwc_26_0 pdx_display_client_endpoint_dir_type (dir (ioctl read getattr lock search open)))
(allow vr_hwc_26_0 pdx_display_client_endpoint_socket_type (sock_file (ioctl read write getattr lock append open)))
(allow vr_hwc_26_0 pdx_display_client_endpoint_socket_type (unix_stream_socket (read write shutdown connectto)))
(allow vr_hwc_26_0 pdx_display_client_channel_socket_type (unix_stream_socket (read write getattr setattr lock append getopt setopt shutdown)))
(allow vr_hwc_26_0 pdx_display_client_server_type (fd (use)))
(allow pdx_display_client_server_type vr_hwc_26_0 (fd (use)))
(allow vr_hwc_26_0 permission_service_26_0 (service_manager (find)))
(allow watchdogd_26_0 watchdog_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow watchdogd_26_0 kmsg_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow wificond_26_0 servicemanager_26_0 (binder (call transfer)))
(allow servicemanager_26_0 wificond_26_0 (dir (search)))
(allow servicemanager_26_0 wificond_26_0 (file (read open)))
(allow servicemanager_26_0 wificond_26_0 (process (getattr)))
(allow wificond_26_0 system_server_26_0 (binder (call transfer)))
(allow system_server_26_0 wificond_26_0 (binder (transfer)))
(allow wificond_26_0 system_server_26_0 (fd (use)))
(allow wificond_26_0 wificond_service_26_0 (service_manager (add find)))
(neverallow base_typeattr_172_26_0 wificond_service_26_0 (service_manager (add)))
(neverallow wificond_26_0 unlabeled_26_0 (service_manager (add)))
(allow wificond_26_0 property_socket_26_0 (sock_file (write)))
(allow wificond_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow wificond_26_0 wifi_prop_26_0 (property_service (set)))
(allow wificond_26_0 wifi_prop_26_0 (file (ioctl read getattr lock open)))
(allow wificond_26_0 property_socket_26_0 (sock_file (write)))
(allow wificond_26_0 init_26_0 (unix_stream_socket (connectto)))
(allow wificond_26_0 ctl_default_prop_26_0 (property_service (set)))
(allow wificond_26_0 ctl_default_prop_26_0 (file (ioctl read getattr lock open)))
(allow wificond_26_0 self (udp_socket (ioctl read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allowx wificond_26_0 self (ioctl udp_socket (0x8914)))
(allow wificond_26_0 self (capability (net_admin net_raw)))
(allow wificond_26_0 self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow wificond_26_0 self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow wificond_26_0 proc_net_26_0 (dir (ioctl read getattr lock search open)))
(allow wificond_26_0 proc_net_26_0 (file (ioctl read getattr lock open)))
(allow wificond_26_0 proc_net_26_0 (lnk_file (ioctl read getattr lock open)))
(allow wificond_26_0 wifi_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow wificond_26_0 wifi_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow wificond_26_0 permission_service_26_0 (service_manager (find)))
(allow wificond_26_0 dumpstate_26_0 (fd (use)))
(allow wificond_26_0 dumpstate_26_0 (fifo_file (write)))
(allow init_26_0 hal_audio_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_audio_default (process (transition)))
(allow hal_audio_default hal_audio_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_audio_default (process (noatsecure)))
(allow init_26_0 hal_audio_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_audio_default_exec process hal_audio_default)
(typetransition hal_audio_default tmpfs_26_0 file hal_audio_default_tmpfs)
(allow hal_audio_default hal_audio_default_tmpfs (file (read write getattr)))
(allow hal_audio_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_bluetooth_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_bluetooth_default (process (transition)))
(allow hal_bluetooth_default hal_bluetooth_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_bluetooth_default (process (noatsecure)))
(allow init_26_0 hal_bluetooth_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_bluetooth_default_exec process hal_bluetooth_default)
(typetransition hal_bluetooth_default tmpfs_26_0 file hal_bluetooth_default_tmpfs)
(allow hal_bluetooth_default hal_bluetooth_default_tmpfs (file (read write getattr)))
(allow hal_bluetooth_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_bootctl_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_bootctl_default (process (transition)))
(allow hal_bootctl_default hal_bootctl_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_bootctl_default (process (noatsecure)))
(allow init_26_0 hal_bootctl_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_bootctl_default_exec process hal_bootctl_default)
(typetransition hal_bootctl_default tmpfs_26_0 file hal_bootctl_default_tmpfs)
(allow hal_bootctl_default hal_bootctl_default_tmpfs (file (read write getattr)))
(allow hal_bootctl_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_camera_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_camera_default (process (transition)))
(allow hal_camera_default hal_camera_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_camera_default (process (noatsecure)))
(allow init_26_0 hal_camera_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_camera_default_exec process hal_camera_default)
(typetransition hal_camera_default tmpfs_26_0 file hal_camera_default_tmpfs)
(allow hal_camera_default hal_camera_default_tmpfs (file (read write getattr)))
(allow hal_camera_default tmpfs_26_0 (dir (getattr search)))
(allow hal_camera_default fwk_sensor_hwservice_26_0 (hwservice_manager (find)))
(allow init_26_0 hal_configstore_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_configstore_default (process (transition)))
(allow hal_configstore_default hal_configstore_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_configstore_default (process (noatsecure)))
(allow init_26_0 hal_configstore_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_configstore_default_exec process hal_configstore_default)
(typetransition hal_configstore_default tmpfs_26_0 file hal_configstore_default_tmpfs)
(allow hal_configstore_default hal_configstore_default_tmpfs (file (read write getattr)))
(allow hal_configstore_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_contexthub_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_contexthub_default (process (transition)))
(allow hal_contexthub_default hal_contexthub_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_contexthub_default (process (noatsecure)))
(allow init_26_0 hal_contexthub_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_contexthub_default_exec process hal_contexthub_default)
(typetransition hal_contexthub_default tmpfs_26_0 file hal_contexthub_default_tmpfs)
(allow hal_contexthub_default hal_contexthub_default_tmpfs (file (read write getattr)))
(allow hal_contexthub_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_drm_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_drm_default (process (transition)))
(allow hal_drm_default hal_drm_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_drm_default (process (noatsecure)))
(allow init_26_0 hal_drm_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_drm_default_exec process hal_drm_default)
(typetransition hal_drm_default tmpfs_26_0 file hal_drm_default_tmpfs)
(allow hal_drm_default hal_drm_default_tmpfs (file (read write getattr)))
(allow hal_drm_default tmpfs_26_0 (dir (getattr search)))
(allow hal_drm_default mediacodec_26_0 (fd (use)))
(allow hal_drm_default base_typeattr_100_26_0 (fd (use)))
(allow init_26_0 hal_dumpstate_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_dumpstate_default (process (transition)))
(allow hal_dumpstate_default hal_dumpstate_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_dumpstate_default (process (noatsecure)))
(allow init_26_0 hal_dumpstate_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_dumpstate_default_exec process hal_dumpstate_default)
(typetransition hal_dumpstate_default tmpfs_26_0 file hal_dumpstate_default_tmpfs)
(allow hal_dumpstate_default hal_dumpstate_default_tmpfs (file (read write getattr)))
(allow hal_dumpstate_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_fingerprint_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_fingerprint_default (process (transition)))
(allow hal_fingerprint_default hal_fingerprint_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_fingerprint_default (process (noatsecure)))
(allow init_26_0 hal_fingerprint_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_fingerprint_default_exec process hal_fingerprint_default)
(typetransition hal_fingerprint_default tmpfs_26_0 file hal_fingerprint_default_tmpfs)
(allow hal_fingerprint_default hal_fingerprint_default_tmpfs (file (read write getattr)))
(allow hal_fingerprint_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_gatekeeper_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_gatekeeper_default (process (transition)))
(allow hal_gatekeeper_default hal_gatekeeper_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_gatekeeper_default (process (noatsecure)))
(allow init_26_0 hal_gatekeeper_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_gatekeeper_default_exec process hal_gatekeeper_default)
(typetransition hal_gatekeeper_default tmpfs_26_0 file hal_gatekeeper_default_tmpfs)
(allow hal_gatekeeper_default hal_gatekeeper_default_tmpfs (file (read write getattr)))
(allow hal_gatekeeper_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_gnss_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_gnss_default (process (transition)))
(allow hal_gnss_default hal_gnss_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_gnss_default (process (noatsecure)))
(allow init_26_0 hal_gnss_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_gnss_default_exec process hal_gnss_default)
(typetransition hal_gnss_default tmpfs_26_0 file hal_gnss_default_tmpfs)
(allow hal_gnss_default hal_gnss_default_tmpfs (file (read write getattr)))
(allow hal_gnss_default tmpfs_26_0 (dir (getattr search)))
(allow hal_gnss system_file_26_0 (dir (ioctl read getattr lock search open)))
(allow hal_gnss system_file_26_0 (file (ioctl read getattr lock open)))
(allow hal_gnss system_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 hal_graphics_allocator_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_graphics_allocator_default (process (transition)))
(allow hal_graphics_allocator_default hal_graphics_allocator_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_graphics_allocator_default (process (noatsecure)))
(allow init_26_0 hal_graphics_allocator_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_graphics_allocator_default_exec process hal_graphics_allocator_default)
(typetransition hal_graphics_allocator_default tmpfs_26_0 file hal_graphics_allocator_default_tmpfs)
(allow hal_graphics_allocator_default hal_graphics_allocator_default_tmpfs (file (read write getattr)))
(allow hal_graphics_allocator_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_graphics_composer_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_graphics_composer_default (process (transition)))
(allow hal_graphics_composer_default hal_graphics_composer_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_graphics_composer_default (process (noatsecure)))
(allow init_26_0 hal_graphics_composer_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_graphics_composer_default_exec process hal_graphics_composer_default)
(typetransition hal_graphics_composer_default tmpfs_26_0 file hal_graphics_composer_default_tmpfs)
(allow hal_graphics_composer_default hal_graphics_composer_default_tmpfs (file (read write getattr)))
(allow hal_graphics_composer_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_health_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_health_default (process (transition)))
(allow hal_health_default hal_health_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_health_default (process (noatsecure)))
(allow init_26_0 hal_health_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_health_default_exec process hal_health_default)
(typetransition hal_health_default tmpfs_26_0 file hal_health_default_tmpfs)
(allow hal_health_default hal_health_default_tmpfs (file (read write getattr)))
(allow hal_health_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_ir_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_ir_default (process (transition)))
(allow hal_ir_default hal_ir_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_ir_default (process (noatsecure)))
(allow init_26_0 hal_ir_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_ir_default_exec process hal_ir_default)
(typetransition hal_ir_default tmpfs_26_0 file hal_ir_default_tmpfs)
(allow hal_ir_default hal_ir_default_tmpfs (file (read write getattr)))
(allow hal_ir_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_keymaster_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_keymaster_default (process (transition)))
(allow hal_keymaster_default hal_keymaster_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_keymaster_default (process (noatsecure)))
(allow init_26_0 hal_keymaster_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_keymaster_default_exec process hal_keymaster_default)
(typetransition hal_keymaster_default tmpfs_26_0 file hal_keymaster_default_tmpfs)
(allow hal_keymaster_default hal_keymaster_default_tmpfs (file (read write getattr)))
(allow hal_keymaster_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_light_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_light_default (process (transition)))
(allow hal_light_default hal_light_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_light_default (process (noatsecure)))
(allow init_26_0 hal_light_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_light_default_exec process hal_light_default)
(typetransition hal_light_default tmpfs_26_0 file hal_light_default_tmpfs)
(allow hal_light_default hal_light_default_tmpfs (file (read write getattr)))
(allow hal_light_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_memtrack_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_memtrack_default (process (transition)))
(allow hal_memtrack_default hal_memtrack_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_memtrack_default (process (noatsecure)))
(allow init_26_0 hal_memtrack_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_memtrack_default_exec process hal_memtrack_default)
(typetransition hal_memtrack_default tmpfs_26_0 file hal_memtrack_default_tmpfs)
(allow hal_memtrack_default hal_memtrack_default_tmpfs (file (read write getattr)))
(allow hal_memtrack_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_nfc_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_nfc_default (process (transition)))
(allow hal_nfc_default hal_nfc_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_nfc_default (process (noatsecure)))
(allow init_26_0 hal_nfc_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_nfc_default_exec process hal_nfc_default)
(typetransition hal_nfc_default tmpfs_26_0 file hal_nfc_default_tmpfs)
(allow hal_nfc_default hal_nfc_default_tmpfs (file (read write getattr)))
(allow hal_nfc_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 mediacodec_exec_26_0 (file (read getattr execute open)))
(allow init_26_0 mediacodec_26_0 (process (transition)))
(allow mediacodec_26_0 mediacodec_exec_26_0 (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 mediacodec_26_0 (process (noatsecure)))
(allow init_26_0 mediacodec_26_0 (process (siginh rlimitinh)))
(typetransition init_26_0 mediacodec_exec_26_0 process mediacodec)
(typetransition mediacodec_26_0 tmpfs_26_0 file mediacodec_tmpfs)
(allow mediacodec_26_0 mediacodec_tmpfs (file (read write getattr)))
(allow mediacodec_26_0 tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_power_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_power_default (process (transition)))
(allow hal_power_default hal_power_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_power_default (process (noatsecure)))
(allow init_26_0 hal_power_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_power_default_exec process hal_power_default)
(typetransition hal_power_default tmpfs_26_0 file hal_power_default_tmpfs)
(allow hal_power_default hal_power_default_tmpfs (file (read write getattr)))
(allow hal_power_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_sensors_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_sensors_default (process (transition)))
(allow hal_sensors_default hal_sensors_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_sensors_default (process (noatsecure)))
(allow init_26_0 hal_sensors_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_sensors_default_exec process hal_sensors_default)
(typetransition hal_sensors_default tmpfs_26_0 file hal_sensors_default_tmpfs)
(allow hal_sensors_default hal_sensors_default_tmpfs (file (read write getattr)))
(allow hal_sensors_default tmpfs_26_0 (dir (getattr search)))
(allow hal_sensors_default fwk_scheduler_hwservice_26_0 (hwservice_manager (find)))
(allow init_26_0 hal_thermal_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_thermal_default (process (transition)))
(allow hal_thermal_default hal_thermal_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_thermal_default (process (noatsecure)))
(allow init_26_0 hal_thermal_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_thermal_default_exec process hal_thermal_default)
(typetransition hal_thermal_default tmpfs_26_0 file hal_thermal_default_tmpfs)
(allow hal_thermal_default hal_thermal_default_tmpfs (file (read write getattr)))
(allow hal_thermal_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_tv_cec_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_tv_cec_default (process (transition)))
(allow hal_tv_cec_default hal_tv_cec_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_tv_cec_default (process (noatsecure)))
(allow init_26_0 hal_tv_cec_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_tv_cec_default_exec process hal_tv_cec_default)
(typetransition hal_tv_cec_default tmpfs_26_0 file hal_tv_cec_default_tmpfs)
(allow hal_tv_cec_default hal_tv_cec_default_tmpfs (file (read write getattr)))
(allow hal_tv_cec_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_tv_input_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_tv_input_default (process (transition)))
(allow hal_tv_input_default hal_tv_input_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_tv_input_default (process (noatsecure)))
(allow init_26_0 hal_tv_input_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_tv_input_default_exec process hal_tv_input_default)
(typetransition hal_tv_input_default tmpfs_26_0 file hal_tv_input_default_tmpfs)
(allow hal_tv_input_default hal_tv_input_default_tmpfs (file (read write getattr)))
(allow hal_tv_input_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_usb_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_usb_default (process (transition)))
(allow hal_usb_default hal_usb_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_usb_default (process (noatsecure)))
(allow init_26_0 hal_usb_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_usb_default_exec process hal_usb_default)
(typetransition hal_usb_default tmpfs_26_0 file hal_usb_default_tmpfs)
(allow hal_usb_default hal_usb_default_tmpfs (file (read write getattr)))
(allow hal_usb_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_vibrator_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_vibrator_default (process (transition)))
(allow hal_vibrator_default hal_vibrator_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_vibrator_default (process (noatsecure)))
(allow init_26_0 hal_vibrator_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_vibrator_default_exec process hal_vibrator_default)
(typetransition hal_vibrator_default tmpfs_26_0 file hal_vibrator_default_tmpfs)
(allow hal_vibrator_default hal_vibrator_default_tmpfs (file (read write getattr)))
(allow hal_vibrator_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_vr_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_vr_default (process (transition)))
(allow hal_vr_default hal_vr_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_vr_default (process (noatsecure)))
(allow init_26_0 hal_vr_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_vr_default_exec process hal_vr_default)
(typetransition hal_vr_default tmpfs_26_0 file hal_vr_default_tmpfs)
(allow hal_vr_default hal_vr_default_tmpfs (file (read write getattr)))
(allow hal_vr_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_wifi_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_wifi_default (process (transition)))
(allow hal_wifi_default hal_wifi_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_wifi_default (process (noatsecure)))
(allow init_26_0 hal_wifi_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_wifi_default_exec process hal_wifi_default)
(typetransition hal_wifi_default tmpfs_26_0 file hal_wifi_default_tmpfs)
(allow hal_wifi_default hal_wifi_default_tmpfs (file (read write getattr)))
(allow hal_wifi_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_wifi_offload_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_wifi_offload_default (process (transition)))
(allow hal_wifi_offload_default hal_wifi_offload_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_wifi_offload_default (process (noatsecure)))
(allow init_26_0 hal_wifi_offload_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_wifi_offload_default_exec process hal_wifi_offload_default)
(typetransition hal_wifi_offload_default tmpfs_26_0 file hal_wifi_offload_default_tmpfs)
(allow hal_wifi_offload_default hal_wifi_offload_default_tmpfs (file (read write getattr)))
(allow hal_wifi_offload_default tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 hal_wifi_supplicant_default_exec (file (read getattr execute open)))
(allow init_26_0 hal_wifi_supplicant_default (process (transition)))
(allow hal_wifi_supplicant_default hal_wifi_supplicant_default_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hal_wifi_supplicant_default (process (noatsecure)))
(allow init_26_0 hal_wifi_supplicant_default (process (siginh rlimitinh)))
(typetransition init_26_0 hal_wifi_supplicant_default_exec process hal_wifi_supplicant_default)
(typetransition hal_wifi_supplicant_default tmpfs_26_0 file hal_wifi_supplicant_default_tmpfs)
(allow hal_wifi_supplicant_default hal_wifi_supplicant_default_tmpfs (file (read write getattr)))
(allow hal_wifi_supplicant_default tmpfs_26_0 (dir (getattr search)))
(allow hal_wifi_supplicant_default hwservicemanager_26_0 (binder (call transfer)))
(allow hwservicemanager_26_0 hal_wifi_supplicant_default (binder (call transfer)))
(allow hwservicemanager_26_0 hal_wifi_supplicant_default (dir (search)))
(allow hwservicemanager_26_0 hal_wifi_supplicant_default (file (read open)))
(allow hwservicemanager_26_0 hal_wifi_supplicant_default (process (getattr)))
(allow hal_wifi_supplicant_default system_wifi_keystore_hwservice_26_0 (hwservice_manager (find)))
(allow hal_wifi_supplicant_default wifi_keystore_service_server (binder (call transfer)))
(allow wifi_keystore_service_server hal_wifi_supplicant_default (binder (transfer)))
(allow hal_wifi_supplicant_default wifi_keystore_service_server (fd (use)))
(allow init_26_0 hostapd_exec (file (read getattr execute open)))
(allow init_26_0 hostapd (process (transition)))
(allow hostapd hostapd_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 hostapd (process (noatsecure)))
(allow init_26_0 hostapd (process (siginh rlimitinh)))
(typetransition init_26_0 hostapd_exec process hostapd)
(typetransition hostapd tmpfs_26_0 file hostapd_tmpfs)
(allow hostapd hostapd_tmpfs (file (read write getattr)))
(allow hostapd tmpfs_26_0 (dir (getattr search)))
(allow hostapd self (capability (net_admin net_raw)))
(allow hostapd sysfs_26_0 (file (ioctl read getattr lock open)))
(allow hostapd sysfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hostapd proc_net_26_0 (file (read getattr open)))
(allowx hostapd self (ioctl udp_socket (0x6900 0x6902)))
(allowx hostapd self (ioctl udp_socket (((range 0x890b 0x890d)) 0x8911 0x8914 0x8916 0x8918 0x891a ((range 0x891c 0x8920)) ((range 0x8922 0x8927)) 0x8929 ((range 0x8930 0x8932)) ((range 0x8934 0x8937)) 0x8939 ((range 0x8940 0x8941)) 0x8943 ((range 0x8946 0x894b)) ((range 0x8953 0x8955)) ((range 0x8960 0x8962)) ((range 0x8970 0x8971)) ((range 0x8980 0x8983)) ((range 0x8990 0x8995)) ((range 0x89a0 0x89a3)) 0x89b0 ((range 0x89e0 0x89ff)))))
(allowx hostapd self (ioctl udp_socket (0x8b00 0x8b02 0x8b04 0x8b06 0x8b08 0x8b0a 0x8b0c 0x8b0e 0x8b10 ((range 0x8b14 0x8b1d)) 0x8b20 0x8b22 0x8b24 0x8b26 0x8b28 ((range 0x8b2a 0x8b2c)) ((range 0x8b30 0x8b36)) ((range 0x8be0 0x8bff)))))
(allow hostapd self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hostapd self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hostapd self (packet_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow hostapd self (netlink_route_socket (nlmsg_write)))
(allow hostapd wifi_data_file_26_0 (file (ioctl read write getattr lock append open)))
(allow hostapd wifi_data_file_26_0 (dir (ioctl read getattr lock search open)))
(allow hostapd wifi_data_file_26_0 (file (ioctl read getattr lock open)))
(allow hostapd wifi_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow hostapd hostapd_socket (dir (ioctl read write create getattr setattr lock rename add_name remove_name reparent search rmdir open)))
(allow hostapd hostapd_socket (sock_file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow init_26_0 rild_exec (file (read getattr execute open)))
(allow init_26_0 rild_26_0 (process (transition)))
(allow rild_26_0 rild_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 rild_26_0 (process (noatsecure)))
(allow init_26_0 rild_26_0 (process (siginh rlimitinh)))
(typetransition init_26_0 rild_exec process rild)
(typetransition rild_26_0 tmpfs_26_0 file rild_tmpfs)
(allow rild_26_0 rild_tmpfs (file (read write getattr)))
(allow rild_26_0 tmpfs_26_0 (dir (getattr search)))
(allow init_26_0 tee_exec (file (read getattr execute open)))
(allow init_26_0 tee_26_0 (process (transition)))
(allow tee_26_0 tee_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 tee_26_0 (process (noatsecure)))
(allow init_26_0 tee_26_0 (process (siginh rlimitinh)))
(typetransition init_26_0 tee_exec process tee)
(typetransition tee_26_0 tmpfs_26_0 file tee_tmpfs)
(allow tee_26_0 tee_tmpfs (file (read write getattr)))
(allow tee_26_0 tmpfs_26_0 (dir (getattr search)))
(allow tee_26_0 self (capability (dac_override)))
(allow tee_26_0 tee_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow tee_26_0 tee_data_file_26_0 (dir (ioctl read write getattr lock add_name remove_name search open)))
(allow tee_26_0 tee_data_file_26_0 (file (ioctl read write create getattr setattr lock append unlink rename open)))
(allow tee_26_0 self (netlink_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow tee_26_0 self (netlink_generic_socket (read write create getattr setattr lock append bind connect getopt setopt shutdown)))
(allow tee_26_0 ion_device_26_0 (chr_file (ioctl read getattr lock open)))
(allow tee_26_0 sysfs_type (dir (ioctl read getattr lock search open)))
(allow tee_26_0 sysfs_type (file (ioctl read getattr lock open)))
(allow tee_26_0 sysfs_type (lnk_file (ioctl read getattr lock open)))
(allow tee_26_0 system_data_file_26_0 (file (read getattr)))
(allow tee_26_0 system_data_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 vendor_toolbox_exec_26_0 (file (read getattr execute open)))
(allow init_26_0 vendor_modprobe (process (transition)))
(allow vendor_modprobe vendor_toolbox_exec_26_0 (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 vendor_modprobe (process (noatsecure)))
(allow init_26_0 vendor_modprobe (process (siginh rlimitinh)))
(allow vendor_modprobe proc_modules_26_0 (file (ioctl read getattr lock open)))
(allow vendor_modprobe self (capability (sys_module)))
(allow vendor_modprobe kernel_26_0 (key (search)))
(allow vendor_modprobe vendor_file_26_0 (system (module_load)))
(allow vendor_modprobe vendor_file_26_0 (dir (ioctl read getattr lock search open)))
(allow vendor_modprobe vendor_file_26_0 (file (ioctl read getattr lock open)))
(allow vendor_modprobe vendor_file_26_0 (lnk_file (ioctl read getattr lock open)))
(allow init_26_0 vndservicemanager_exec (file (read getattr execute open)))
(allow init_26_0 vndservicemanager_26_0 (process (transition)))
(allow vndservicemanager_26_0 vndservicemanager_exec (file (read getattr execute entrypoint open)))
(dontaudit init_26_0 vndservicemanager_26_0 (process (noatsecure)))
(allow init_26_0 vndservicemanager_26_0 (process (siginh rlimitinh)))
(typetransition init_26_0 vndservicemanager_exec process vndservicemanager)
(typetransition vndservicemanager_26_0 tmpfs_26_0 file vndservicemanager_tmpfs)
(allow vndservicemanager_26_0 vndservicemanager_tmpfs (file (read write getattr)))
(allow vndservicemanager_26_0 tmpfs_26_0 (dir (getattr search)))
(allow vndservicemanager_26_0 self (binder (set_context_mgr)))
(allow vndservicemanager_26_0 base_typeattr_173_26_0 (binder (transfer)))
(allow vndservicemanager_26_0 vndbinder_device_26_0 (chr_file (ioctl read write getattr lock append open)))
(allow vndservicemanager_26_0 vndservice_contexts_file_26_0 (file (ioctl read getattr lock open)))
(allow vndservicemanager_26_0 selinuxfs_26_0 (dir (ioctl read getattr lock search open)))
(allow vndservicemanager_26_0 selinuxfs_26_0 (file (ioctl read getattr lock open)))
(allow vndservicemanager_26_0 selinuxfs_26_0 (lnk_file (ioctl read getattr lock open)))
(allow vndservicemanager_26_0 selinuxfs_26_0 (file (write lock append open)))
(allow vndservicemanager_26_0 kernel_26_0 (security (compute_av)))
(allow vndservicemanager_26_0 self (netlink_selinux_socket (read write create getattr setattr lock relabelfrom relabelto append bind connect listen accept getopt setopt shutdown recvfrom sendto name_bind)))
(typetransition hal_wifi_supplicant_default wifi_data_file_26_0 dir "sockets" wpa_socket)
(typeattribute base_typeattr_173_26_0)
(typeattributeset base_typeattr_173_26_0 ((and (domain) ((not (coredomain init_26_0))))))
(typeattribute base_typeattr_172_26_0)
(typeattributeset base_typeattr_172_26_0 ((and (domain) ((not (wificond_26_0))))))
(typeattribute base_typeattr_171_26_0)
(typeattributeset base_typeattr_171_26_0 ((and (domain) ((not (vr_hwc_26_0))))))
(typeattribute base_typeattr_170_26_0)
(typeattributeset base_typeattr_170_26_0 ((and (domain) ((not (init_26_0 kernel_26_0 vold_26_0))))))
(typeattribute base_typeattr_169_26_0)
(typeattributeset base_typeattr_169_26_0 ((and (domain) ((not (kernel_26_0 vold_26_0))))))
(typeattribute base_typeattr_168_26_0)
(typeattributeset base_typeattr_168_26_0 ((and (domain) ((not (virtual_touchpad_26_0))))))
(typeattribute base_typeattr_167_26_0)
(typeattributeset base_typeattr_167_26_0 ((and (coredomain) ((not (init_26_0 modprobe_26_0))))))
(typeattribute base_typeattr_166_26_0)
(typeattributeset base_typeattr_166_26_0 ((and (domain) ((not (update_engine_26_0))))))
(typeattribute base_typeattr_165_26_0)
(typeattributeset base_typeattr_165_26_0 ((and (fs_type file_type) ((not (toolbox_exec_26_0))))))
(typeattribute base_typeattr_164_26_0)
(typeattributeset base_typeattr_164_26_0 ((and (service_manager_type) ((not (gatekeeper_service_26_0 incident_service_26_0 installd_service_26_0 netd_service_26_0 virtual_touchpad_service_26_0 vr_hwc_service_26_0))))))
(typeattribute base_typeattr_163_26_0)
(typeattributeset base_typeattr_163_26_0 ((and (fs_type file_type) ((not (sgdisk_exec_26_0))))))
(typeattribute base_typeattr_162_26_0)
(typeattributeset base_typeattr_162_26_0 ((and (domain) ((not (hwservicemanager_26_0 init_26_0 vndservicemanager_26_0))))))
(typeattribute base_typeattr_161_26_0)
(typeattributeset base_typeattr_161_26_0 ((and (appdomain) ((not (system_app_26_0))))))
(typeattribute base_typeattr_160_26_0)
(typeattributeset base_typeattr_160_26_0 ((and (domain) ((not (radio_26_0))))))
(typeattribute base_typeattr_159_26_0)
(typeattributeset base_typeattr_159_26_0 ((and (core_property_type) ((not (audio_prop_26_0 config_prop_26_0 cppreopt_prop_26_0 dalvik_prop_26_0 debuggerd_prop_26_0 debug_prop_26_0 default_prop_26_0 dhcp_prop_26_0 dumpstate_prop_26_0 ffs_prop_26_0 fingerprint_prop_26_0 logd_prop_26_0 net_radio_prop_26_0 nfc_prop_26_0 pan_result_prop_26_0 persist_debug_prop_26_0 powerctl_prop_26_0 radio_prop_26_0 restorecon_prop_26_0 shell_prop_26_0 system_prop_26_0 system_radio_prop_26_0 vold_prop_26_0))))))
(typeattribute base_typeattr_158_26_0)
(typeattributeset base_typeattr_158_26_0 ((and (domain) ((not (performanced_26_0))))))
(typeattribute base_typeattr_157_26_0)
(typeattributeset base_typeattr_157_26_0 ((and (domain) ((not (dumpstate_26_0 netd_26_0 system_server_26_0))))))
(typeattribute base_typeattr_156_26_0)
(typeattributeset base_typeattr_156_26_0 ((and (domain) ((not (netd_26_0))))))
(typeattribute base_typeattr_155_26_0)
(typeattributeset base_typeattr_155_26_0 ((and (domain) ((not (mediaserver_26_0))))))
(typeattribute base_typeattr_154_26_0)
(typeattributeset base_typeattr_154_26_0 ((and (domain) ((not (mediametrics_26_0))))))
(typeattribute base_typeattr_153_26_0)
(typeattributeset base_typeattr_153_26_0 ((and (domain) ((not (mediaextractor_26_0))))))
(typeattribute base_typeattr_152_26_0)
(typeattributeset base_typeattr_152_26_0 ((and (domain) ((not (mediadrmserver_26_0))))))
(typeattribute base_typeattr_151_26_0)
(typeattributeset base_typeattr_151_26_0 ((and (domain) ((not (mediacodec_26_0))))))
(typeattribute base_typeattr_150_26_0)
(typeattributeset base_typeattr_150_26_0 ((and (domain) ((not (init_26_0 logd_26_0))))))
(typeattribute base_typeattr_149_26_0)
(typeattributeset base_typeattr_149_26_0 ((and (domain) ((not (crash_dump_26_0))))))
(typeattribute base_typeattr_148_26_0)
(typeattributeset base_typeattr_148_26_0 ((and (domain) ((not (init_26_0 keystore_26_0))))))
(typeattribute base_typeattr_147_26_0)
(typeattributeset base_typeattr_147_26_0 ((and (domain) ((not (keystore_26_0))))))
(typeattribute base_typeattr_146_26_0)
(typeattributeset base_typeattr_146_26_0 ((and (domain) ((not (servicemanager_26_0 su_26_0 system_server_26_0))))))
(typeattribute base_typeattr_145_26_0)
(typeattributeset base_typeattr_145_26_0 ((and (domain) ((not (dumpstate_26_0 installd_26_0 system_server_26_0))))))
(typeattribute base_typeattr_144_26_0)
(typeattributeset base_typeattr_144_26_0 ((and (domain) ((not (installd_26_0))))))
(typeattribute base_typeattr_143_26_0)
(typeattributeset base_typeattr_143_26_0 ((and (domain) ((not (inputflinger_26_0))))))
(typeattribute base_typeattr_142_26_0)
(typeattributeset base_typeattr_142_26_0 ((and (fs_type file_type) ((not (init_exec_26_0))))))
(typeattribute base_typeattr_141_26_0)
(typeattributeset base_typeattr_141_26_0 ((and (dev_type) ((not (kmem_device_26_0 port_device_26_0))))))
(typeattribute base_typeattr_140_26_0)
(typeattributeset base_typeattr_140_26_0 ((and (dev_type) ((not (device_26_0 alarm_device_26_0 ashmem_device_26_0 binder_device_26_0 hwbinder_device_26_0 dm_device_26_0 keychord_device_26_0 console_device_26_0 hw_random_device_26_0 kmem_device_26_0 port_device_26_0 ptmx_device_26_0 kmsg_device_26_0 null_device_26_0 random_device_26_0 owntty_device_26_0 zero_device_26_0 devpts_26_0))))))
(typeattribute base_typeattr_139_26_0)
(typeattributeset base_typeattr_139_26_0 ((and (dev_type) ((not (device_26_0 vndbinder_device_26_0 kmem_device_26_0 port_device_26_0))))))
(typeattribute base_typeattr_138_26_0)
(typeattributeset base_typeattr_138_26_0 ((and (fs_type) ((not (contextmount_type sdcard_type rootfs_26_0))))))
(typeattribute base_typeattr_137_26_0)
(typeattributeset base_typeattr_137_26_0 ((and (file_type) ((not (exec_type vendor_file_type system_file_26_0))))))
(typeattribute base_typeattr_136_26_0)
(typeattributeset base_typeattr_136_26_0 ((and (file_type) ((not (exec_type vendor_file_type system_file_26_0 runtime_event_log_tags_file_26_0 shell_data_file_26_0 keystore_data_file_26_0 vold_data_file_26_0 app_data_file_26_0 system_app_data_file_26_0 misc_logd_file_26_0))))))
(typeattribute base_typeattr_135_26_0)
(typeattributeset base_typeattr_135_26_0 ((and (file_type) ((not (exec_type vendor_file_type system_file_26_0 shell_data_file_26_0 keystore_data_file_26_0 vold_data_file_26_0 app_data_file_26_0 system_app_data_file_26_0 misc_logd_file_26_0))))))
(typeattribute base_typeattr_134_26_0)
(typeattributeset base_typeattr_134_26_0 ((and (file_type) ((not (exec_type vendor_file_type system_file_26_0 app_data_file_26_0 system_app_data_file_26_0 misc_logd_file_26_0))))))
(typeattribute base_typeattr_133_26_0)
(typeattributeset base_typeattr_133_26_0 ((and (domain) ((not (healthd_26_0))))))
(typeattribute base_typeattr_132_26_0)
(typeattributeset base_typeattr_132_26_0 ((and (domain) ((not (hal_wifi_supplicant_server))))))
(typeattribute base_typeattr_131_26_0)
(typeattributeset base_typeattr_131_26_0 ((and (domain) ((not (hal_wifi_server))))))
(typeattribute base_typeattr_130_26_0)
(typeattributeset base_typeattr_130_26_0 ((and (domain) ((not (hal_weaver_server))))))
(typeattribute base_typeattr_129_26_0)
(typeattributeset base_typeattr_129_26_0 ((and (domain) ((not (hal_vr_server))))))
(typeattribute base_typeattr_128_26_0)
(typeattributeset base_typeattr_128_26_0 ((and (domain) ((not (hal_vibrator_server))))))
(typeattribute base_typeattr_127_26_0)
(typeattributeset base_typeattr_127_26_0 ((and (domain) ((not (hal_usb_server))))))
(typeattribute base_typeattr_126_26_0)
(typeattributeset base_typeattr_126_26_0 ((and (domain) ((not (hal_tv_input_server))))))
(typeattribute base_typeattr_125_26_0)
(typeattributeset base_typeattr_125_26_0 ((and (domain) ((not (hal_tv_cec_server))))))
(typeattribute base_typeattr_124_26_0)
(typeattributeset base_typeattr_124_26_0 ((and (domain) ((not (hal_thermal_server))))))
(typeattribute base_typeattr_123_26_0)
(typeattributeset base_typeattr_123_26_0 ((and (domain) ((not (hal_telephony_server))))))
(typeattribute base_typeattr_122_26_0)
(typeattributeset base_typeattr_122_26_0 ((and (domain) ((not (hal_sensors_server))))))
(typeattribute base_typeattr_121_26_0)
(typeattributeset base_typeattr_121_26_0 ((and (domain) ((not (hal_power_server))))))
(typeattribute base_typeattr_120_26_0)
(typeattributeset base_typeattr_120_26_0 ((and (domain) ((not (hal_oemlock_server))))))
(typeattribute base_typeattr_119_26_0)
(typeattributeset base_typeattr_119_26_0 ((and (domain) ((not (hal_nfc_server))))))
(typeattribute base_typeattr_118_26_0)
(typeattributeset base_typeattr_118_26_0 ((and (halserverdomain) ((not (hal_dumpstate_server rild_26_0))))))
(typeattribute base_typeattr_117_26_0)
(typeattributeset base_typeattr_117_26_0 ((and (halserverdomain) ((not (hal_tetheroffload_server hal_wifi_server hal_wifi_supplicant_server rild_26_0))))))
(typeattribute base_typeattr_116_26_0)
(typeattributeset base_typeattr_116_26_0 ((and (halserverdomain) ((not (hal_bluetooth_server hal_wifi_server hal_wifi_supplicant_server rild_26_0))))))
(typeattribute base_typeattr_115_26_0)
(typeattributeset base_typeattr_115_26_0 ((and (domain) ((not (hal_memtrack_server))))))
(typeattribute base_typeattr_114_26_0)
(typeattributeset base_typeattr_114_26_0 ((and (domain) ((not (hal_light_server))))))
(typeattribute base_typeattr_113_26_0)
(typeattributeset base_typeattr_113_26_0 ((and (domain) ((not (hal_keymaster_server))))))
(typeattribute base_typeattr_112_26_0)
(typeattributeset base_typeattr_112_26_0 ((and (domain) ((not (hal_ir_server))))))
(typeattribute base_typeattr_111_26_0)
(typeattributeset base_typeattr_111_26_0 ((and (domain) ((not (hal_health_server))))))
(typeattribute base_typeattr_110_26_0)
(typeattributeset base_typeattr_110_26_0 ((and (domain) ((not (hal_graphics_composer_server))))))
(typeattribute base_typeattr_109_26_0)
(typeattributeset base_typeattr_109_26_0 ((and (domain) ((not (hal_graphics_allocator_server))))))
(typeattribute base_typeattr_108_26_0)
(typeattributeset base_typeattr_108_26_0 ((and (domain) ((not (hal_gnss_server))))))
(typeattribute base_typeattr_107_26_0)
(typeattributeset base_typeattr_107_26_0 ((and (domain) ((not (hal_gatekeeper_server))))))
(typeattribute base_typeattr_106_26_0)
(typeattributeset base_typeattr_106_26_0 ((and (domain) ((not (hal_fingerprint_server))))))
(typeattribute base_typeattr_105_26_0)
(typeattributeset base_typeattr_105_26_0 ((and (domain) ((not (hal_dumpstate_server))))))
(typeattribute base_typeattr_104_26_0)
(typeattributeset base_typeattr_104_26_0 ((and (domain) ((not (hal_drm_server))))))
(typeattribute base_typeattr_103_26_0)
(typeattributeset base_typeattr_103_26_0 ((and (domain) ((not (hal_contexthub_server))))))
(typeattribute base_typeattr_102_26_0)
(typeattributeset base_typeattr_102_26_0 ((and (domain) ((not (hal_configstore_server))))))
(typeattribute base_typeattr_101_26_0)
(typeattributeset base_typeattr_101_26_0 ((and (halserverdomain) ((not (hal_camera_server))))))
(typeattribute base_typeattr_100_26_0)
(typeattributeset base_typeattr_100_26_0 ((and (appdomain) ((not (isolated_app_26_0))))))
(typeattribute base_typeattr_99_26_0)
(typeattributeset base_typeattr_99_26_0 ((and (domain) ((not (hal_camera_server))))))
(typeattribute base_typeattr_98_26_0)
(typeattributeset base_typeattr_98_26_0 ((and (domain) ((not (hal_bootctl_server))))))
(typeattribute base_typeattr_97_26_0)
(typeattributeset base_typeattr_97_26_0 ((and (domain) ((not (hal_bluetooth_server))))))
(typeattribute base_typeattr_96_26_0)
(typeattributeset base_typeattr_96_26_0 ((and (halserverdomain) ((not (hal_audio_server))))))
(typeattribute base_typeattr_95_26_0)
(typeattributeset base_typeattr_95_26_0 ((and (domain) ((not (hal_audio_server))))))
(typeattribute base_typeattr_94_26_0)
(typeattributeset base_typeattr_94_26_0 ((and (domain) ((not (hal_allocator_server))))))
(typeattribute base_typeattr_93_26_0)
(typeattributeset base_typeattr_93_26_0 ((and (domain) ((not (gatekeeperd_26_0))))))
(typeattribute base_typeattr_92_26_0)
(typeattributeset base_typeattr_92_26_0 ((and (domain) ((not (vold_26_0))))))
(typeattribute base_typeattr_91_26_0)
(typeattributeset base_typeattr_91_26_0 ((and (fs_type file_type) ((not (fsck_exec_26_0))))))
(typeattribute base_typeattr_90_26_0)
(typeattributeset base_typeattr_90_26_0 ((and (domain) ((not (init_26_0 vold_26_0))))))
(typeattribute base_typeattr_89_26_0)
(typeattributeset base_typeattr_89_26_0 ((and (domain) ((not (fingerprintd_26_0))))))
(typeattribute base_typeattr_88_26_0)
(typeattributeset base_typeattr_88_26_0 ((and (domain) ((not (dumpstate_26_0 shell_26_0 system_server_26_0))))))
(typeattribute base_typeattr_87_26_0)
(typeattributeset base_typeattr_87_26_0 ((and (domain) ((not (dumpstate_26_0))))))
(typeattribute base_typeattr_86_26_0)
(typeattributeset base_typeattr_86_26_0 ((and (service_manager_type) ((not (dumpstate_service_26_0 gatekeeper_service_26_0 incident_service_26_0 virtual_touchpad_service_26_0 vr_hwc_service_26_0))))))
(typeattribute base_typeattr_85_26_0)
(typeattributeset base_typeattr_85_26_0 ((and (domain) ((not (drmserver_26_0))))))
(typeattribute base_typeattr_84_26_0)
(typeattributeset base_typeattr_84_26_0 ((not (coredomain))))
(typeattribute base_typeattr_83_26_0)
(typeattributeset base_typeattr_83_26_0 ((not (rootfs_26_0 system_file_26_0 vendor_file_26_0))))
(typeattribute base_typeattr_82_26_0)
(typeattributeset base_typeattr_82_26_0 ((and (domain) ((not (installd_26_0 profman_26_0))))))
(typeattribute base_typeattr_81_26_0)
(typeattributeset base_typeattr_81_26_0 ((and (domain) ((not (dumpstate_26_0 init_26_0 system_server_26_0))))))
(typeattribute base_typeattr_80_26_0)
(typeattributeset base_typeattr_80_26_0 ((not (hwservicemanager_26_0))))
(typeattribute base_typeattr_79_26_0)
(typeattributeset base_typeattr_79_26_0 ((not (servicemanager_26_0 vndservicemanager_26_0))))
(typeattribute base_typeattr_78_26_0)
(typeattributeset base_typeattr_78_26_0 ((and (domain) ((not (appdomain adbd_26_0 dumpstate_26_0 installd_26_0 uncrypt_26_0))))))
(typeattribute base_typeattr_77_26_0)
(typeattributeset base_typeattr_77_26_0 ((and (domain) ((not (appdomain adbd_26_0 dumpstate_26_0 init_26_0 installd_26_0 system_server_26_0 uncrypt_26_0))))))
(typeattribute base_typeattr_76_26_0)
(typeattributeset base_typeattr_76_26_0 ((and (domain) ((not (adbd_26_0 dumpstate_26_0 init_26_0 installd_26_0 shell_26_0 vold_26_0))))))
(typeattribute base_typeattr_75_26_0)
(typeattributeset base_typeattr_75_26_0 ((and (domain) ((not (installd_26_0 shell_26_0 uncrypt_26_0))))))
(typeattribute base_typeattr_74_26_0)
(typeattributeset base_typeattr_74_26_0 ((and (domain) ((not (appdomain installd_26_0 uncrypt_26_0))))))
(typeattribute base_typeattr_73_26_0)
(typeattributeset base_typeattr_73_26_0 ((and (appdomain) ((not (bluetooth_26_0 shell_26_0 su_26_0))))))
(typeattribute base_typeattr_72_26_0)
(typeattributeset base_typeattr_72_26_0 ((and (domain) ((not (runas_26_0 webview_zygote_26_0 zygote_26_0))))))
(typeattribute base_typeattr_71_26_0)
(typeattributeset base_typeattr_71_26_0 ((and (domain) ((not (adbd_26_0 init_26_0 runas_26_0 zygote_26_0))))))
(typeattribute base_typeattr_70_26_0)
(typeattributeset base_typeattr_70_26_0 ((and (domain) ((not (appdomain installd_26_0))))))
(typeattribute base_typeattr_69_26_0)
(typeattributeset base_typeattr_69_26_0 ((and (domain) ((not (appdomain installd_26_0 system_server_26_0))))))
(typeattribute base_typeattr_68_26_0)
(typeattributeset base_typeattr_68_26_0 ((and (domain) ((not (init_26_0 installd_26_0 system_app_26_0 system_server_26_0))))))
(typeattribute base_typeattr_67_26_0)
(typeattributeset base_typeattr_67_26_0 ((not (domain))))
(typeattribute base_typeattr_66_26_0)
(typeattributeset base_typeattr_66_26_0 ((and (domain) ((not (untrusted_app_all))))))
(typeattribute base_typeattr_65_26_0)
(typeattributeset base_typeattr_65_26_0 ((and (file_type) ((not (apk_data_file_26_0 app_data_file_26_0 asec_public_file_26_0))))))
(typeattribute base_typeattr_64_26_0)
(typeattributeset base_typeattr_64_26_0 ((and (domain) ((not (dumpstate_26_0 shell_26_0 su_26_0))))))
(typeattribute base_typeattr_63_26_0)
(typeattributeset base_typeattr_63_26_0 ((and (domain) ((not (dumpstate_26_0 system_server_26_0))))))
(typeattribute base_typeattr_62_26_0)
(typeattributeset base_typeattr_62_26_0 ((and (domain) ((not (crash_dump_26_0 mediacodec_26_0 mediaextractor_26_0))))))
(typeattribute base_typeattr_61_26_0)
(typeattributeset base_typeattr_61_26_0 ((and (domain) ((not (crash_dump_26_0 dumpstate_26_0 mediacodec_26_0 mediaextractor_26_0 system_server_26_0 tombstoned_26_0))))))
(typeattribute base_typeattr_60_26_0)
(typeattributeset base_typeattr_60_26_0 ((and (domain) ((not (system_server_26_0 webview_zygote_26_0))))))
(typeattribute base_typeattr_59_26_0)
(typeattributeset base_typeattr_59_26_0 ((and (domain) ((not (system_server_26_0))))))
(typeattribute base_typeattr_58_26_0)
(typeattributeset base_typeattr_58_26_0 ((and (domain) ((not (system_server_26_0 zygote_26_0))))))
(typeattribute base_typeattr_57_26_0)
(typeattributeset base_typeattr_57_26_0 ((and (domain) ((not (cppreopts_26_0 dex2oat_26_0 init_26_0 installd_26_0 otapreopt_slot_26_0 postinstall_dexopt_26_0 zygote_26_0))))))
(typeattribute base_typeattr_56_26_0)
(typeattributeset base_typeattr_56_26_0 ((and (exec_type) ((not (vendor_file_type crash_dump_exec_26_0 netutils_wrapper_exec_26_0))))))
(typeattribute base_typeattr_55_26_0)
(typeattributeset base_typeattr_55_26_0 ((and (domain) ((not (appdomain coredomain vendor_executes_system_violators rild_26_0))))))
(typeattribute base_typeattr_54_26_0)
(typeattributeset base_typeattr_54_26_0 ((and (coredomain) ((not (init_26_0))))))
(typeattribute base_typeattr_53_26_0)
(typeattributeset base_typeattr_53_26_0 ((and (coredomain) ((not (appdomain idmap_26_0 init_26_0 installd_26_0 system_server_26_0 zygote_26_0))))))
(typeattribute base_typeattr_52_26_0)
(typeattributeset base_typeattr_52_26_0 ((and (coredomain) ((not (appdomain dex2oat_26_0 idmap_26_0 init_26_0 installd_26_0 postinstall_dexopt_26_0 system_server_26_0))))))
(typeattribute base_typeattr_51_26_0)
(typeattributeset base_typeattr_51_26_0 ((and (dev_type file_type) ((not (core_data_file_type coredomain_socket unlabeled_26_0))))))
(typeattribute base_typeattr_50_26_0)
(typeattributeset base_typeattr_50_26_0 ((and (coredomain) ((not (socket_between_core_and_vendor_violators init_26_0 ueventd_26_0))))))
(typeattribute base_typeattr_49_26_0)
(typeattributeset base_typeattr_49_26_0 ((and (core_data_file_type coredomain_socket unlabeled_26_0) ((not (pdx_endpoint_socket_type pdx_channel_socket_type app_data_file_26_0))))))
(typeattribute base_typeattr_48_26_0)
(typeattributeset base_typeattr_48_26_0 ((and (domain) ((not (netdomain coredomain socket_between_core_and_vendor_violators))))))
(typeattribute base_typeattr_47_26_0)
(typeattributeset base_typeattr_47_26_0 ((and (coredomain) ((not (incidentd_26_0 init_26_0 logd_26_0 mdnsd_26_0 netd_26_0 su_26_0 tombstoned_26_0))))))
(typeattribute base_typeattr_46_26_0)
(typeattributeset base_typeattr_46_26_0 ((and (domain) ((not (appdomain coredomain socket_between_core_and_vendor_violators))))))
(typeattribute base_typeattr_45_26_0)
(typeattributeset base_typeattr_45_26_0 ((and (domain) ((not (coredomain socket_between_core_and_vendor_violators))))))
(typeattribute base_typeattr_44_26_0)
(typeattributeset base_typeattr_44_26_0 ((and (coredomain) ((not (adbd_26_0 init_26_0))))))
(typeattribute base_typeattr_43_26_0)
(typeattributeset base_typeattr_43_26_0 ((and (coredomain) ((not (shell_26_0 su_26_0))))))
(typeattribute base_typeattr_42_26_0)
(typeattributeset base_typeattr_42_26_0 ((and (coredomain) ((not (shell_26_0 su_26_0 ueventd_26_0))))))
(typeattribute base_typeattr_41_26_0)
(typeattributeset base_typeattr_41_26_0 ((and (service_manager_type) ((not (app_api_service ephemeral_app_api_service audioserver_service_26_0 cameraserver_service_26_0 drmserver_service_26_0 keystore_service_26_0 mediaserver_service_26_0 mediametrics_service_26_0 mediaextractor_service_26_0 mediadrmserver_service_26_0 mediacasserver_service_26_0 nfc_service_26_0 radio_service_26_0 surfaceflinger_service_26_0 virtual_touchpad_service_26_0 vr_hwc_service_26_0 vr_manager_service_26_0))))))
(typeattribute base_typeattr_40_26_0)
(typeattributeset base_typeattr_40_26_0 ((and (appdomain) ((not (coredomain))))))
(typeattribute base_typeattr_39_26_0)
(typeattributeset base_typeattr_39_26_0 ((and (domain) ((not (appdomain coredomain binder_in_vendor_violators))))))
(typeattribute base_typeattr_38_26_0)
(typeattributeset base_typeattr_38_26_0 ((and (domain) ((not (hwservicemanager_26_0 servicemanager_26_0 vndservicemanager_26_0))))))
(typeattribute base_typeattr_37_26_0)
(typeattributeset base_typeattr_37_26_0 ((and (domain) ((not (domain hal_bootctl init_26_0 recovery_26_0 ueventd_26_0 uncrypt_26_0 update_engine_26_0 vold_26_0))))))
(typeattribute base_typeattr_36_26_0)
(typeattributeset base_typeattr_36_26_0 ((and (domain) ((not (install_recovery_26_0 recovery_26_0))))))
(typeattribute base_typeattr_35_26_0)
(typeattributeset base_typeattr_35_26_0 ((and (domain) ((not (recovery_26_0 update_engine_26_0))))))
(typeattribute base_typeattr_34_26_0)
(typeattributeset base_typeattr_34_26_0 ((and (domain) ((not (init_26_0 recovery_26_0 vold_26_0))))))
(typeattribute base_typeattr_33_26_0)
(typeattributeset base_typeattr_33_26_0 ((and (domain) ((not (init_26_0 recovery_26_0 shell_26_0 system_server_26_0 ueventd_26_0))))))
(typeattribute base_typeattr_32_26_0)
(typeattributeset base_typeattr_32_26_0 ((and (domain) ((not (init_26_0 system_server_26_0))))))
(typeattribute base_typeattr_31_26_0)
(typeattributeset base_typeattr_31_26_0 ((and (domain) ((not (hal_drm adbd_26_0 dumpstate_26_0 init_26_0 mediadrmserver_26_0 recovery_26_0 shell_26_0 system_server_26_0))))))
(typeattribute base_typeattr_30_26_0)
(typeattributeset base_typeattr_30_26_0 ((and (fs_type) ((not (contextmount_type))))))
(typeattribute base_typeattr_29_26_0)
(typeattributeset base_typeattr_29_26_0 ((and (domain) ((not (kernel_26_0 recovery_26_0))))))
(typeattribute base_typeattr_28_26_0)
(typeattributeset base_typeattr_28_26_0 ((and (domain) ((not (shell_26_0))))))
(typeattribute base_typeattr_27_26_0)
(typeattributeset base_typeattr_27_26_0 ((and (data_file_type) ((not (system_data_file_26_0 apk_data_file_26_0 dalvikcache_data_file_26_0))))))
(typeattribute base_typeattr_26_26_0)
(typeattributeset base_typeattr_26_26_0 ((and (domain) ((not (appdomain))))))
(typeattribute base_typeattr_25_26_0)
(typeattributeset base_typeattr_25_26_0 ((and (fs_type) ((not (rootfs_26_0))))))
(typeattribute base_typeattr_24_26_0)
(typeattributeset base_typeattr_24_26_0 ((and (domain) ((not (appdomain recovery_26_0))))))
(typeattribute base_typeattr_23_26_0)
(typeattributeset base_typeattr_23_26_0 ((and (file_type) ((not (exec_type vendor_file_type system_file_26_0 postinstall_file_26_0))))))
(typeattribute base_typeattr_22_26_0)
(typeattributeset base_typeattr_22_26_0 ((and (domain) ((not (appdomain dumpstate_26_0 shell_26_0 su_26_0 system_server_26_0 webview_zygote_26_0 zygote_26_0))))))
(typeattribute base_typeattr_21_26_0)
(typeattributeset base_typeattr_21_26_0 ((and (fs_type) ((not (sdcard_type))))))
(typeattribute base_typeattr_20_26_0)
(typeattributeset base_typeattr_20_26_0 ((and (domain) ((not (init_26_0 kernel_26_0 otapreopt_chroot_26_0 recovery_26_0 update_engine_26_0 vold_26_0 zygote_26_0))))))
(typeattribute base_typeattr_19_26_0)
(typeattributeset base_typeattr_19_26_0 ((and (domain) ((not (init_26_0 kernel_26_0 recovery_26_0))))))
(typeattribute base_typeattr_18_26_0)
(typeattributeset base_typeattr_18_26_0 ((and (domain) ((not (shell_26_0 ueventd_26_0))))))
(typeattribute base_typeattr_17_26_0)
(typeattributeset base_typeattr_17_26_0 ((and (file_type) ((not (exec_type postinstall_file_26_0))))))
(typeattribute base_typeattr_16_26_0)
(typeattributeset base_typeattr_16_26_0 ((and (domain) ((not (init_26_0 shell_26_0 system_server_26_0 ueventd_26_0))))))
(typeattribute base_typeattr_15_26_0)
(typeattributeset base_typeattr_15_26_0 ((and (domain) ((not (kernel_26_0))))))
(typeattribute base_typeattr_14_26_0)
(typeattributeset base_typeattr_14_26_0 ((and (domain) ((not (recovery_26_0))))))
(typeattribute base_typeattr_13_26_0)
(typeattributeset base_typeattr_13_26_0 ((and (domain) ((not (domain healthd_26_0 init_26_0 kernel_26_0 recovery_26_0 tee_26_0 ueventd_26_0 uncrypt_26_0))))))
(typeattribute base_typeattr_12_26_0)
(typeattributeset base_typeattr_12_26_0 ((and (domain) ((not (init_26_0 kernel_26_0 ueventd_26_0 vold_26_0))))))
(typeattribute base_typeattr_11_26_0)
(typeattributeset base_typeattr_11_26_0 ((and (domain) ((not (init_26_0 recovery_26_0))))))
(typeattribute base_typeattr_10_26_0)
(typeattributeset base_typeattr_10_26_0 ((all)))
(typeattribute base_typeattr_9_26_0)
(typeattributeset base_typeattr_9_26_0 ((and (domain) ((not (domain))))))
(typeattribute base_typeattr_8_26_0)
(typeattributeset base_typeattr_8_26_0 ((and (domain) ((not (coredomain))))))
(typeattribute base_typeattr_7_26_0)
(typeattributeset base_typeattr_7_26_0 ((and (domain) ((not (servicemanager_26_0 vndservicemanager_26_0))))))
(typeattribute base_typeattr_6_26_0)
(typeattributeset base_typeattr_6_26_0 ((and (appdomain coredomain binder_in_vendor_violators) ((not (hwservicemanager_26_0))))))
(typeattribute base_typeattr_5_26_0)
(typeattributeset base_typeattr_5_26_0 ((and (domain) ((not (init_26_0))))))
(typeattribute base_typeattr_4_26_0)
(typeattributeset base_typeattr_4_26_0 ((and (domain) ((not (display_service_server))))))
(typeattribute base_typeattr_3_26_0)
(typeattributeset base_typeattr_3_26_0 ((and (domain) ((not (crash_dump_26_0 init_26_0 keystore_26_0 logd_26_0))))))
(typeattribute base_typeattr_2_26_0)
(typeattributeset base_typeattr_2_26_0 ((and (domain) ((not (cameraserver_26_0))))))
(typeattribute base_typeattr_1_26_0)
(typeattributeset base_typeattr_1_26_0 ((and (domain) ((not (bufferhubd_26_0))))))
