# Support asec containers getting mounted
allow file_type rootfs:filesystem associate;

# Themes
type themeservice_app_data_file, file_type, data_file_type;

# Performance settings
type sysfs_devices_system_iosched, file_type, sysfs_type;

# Persistent property storage
type persist_property_file, file_type;

# Knobs for LiveDisplay
type livedisplay_sysfs, sysfs_type, file_type;

# Filesystems
type exfat, sdcard_type, fs_type, mlstrustedobject;
type fuseblk, sdcard_type, fs_type, mlstrustedobject;
type ntfs, sdcard_type, fs_type, mlstrustedobject;
