sepolicy : cleanup and misc denials addressed .

as part of bringup addressed misc denials and code cleanup

Change-Id: Ifba5c183739663113dd58814fbf445ae51cefe77
This commit is contained in:
Ravi Kumar Siddojigari 2018-11-02 22:48:21 +05:30 committed by Gerrit - the friendly Code Review server
parent 1287d1c879
commit 4106db5b4f
12 changed files with 82 additions and 37 deletions

View file

@ -165,3 +165,5 @@ type hal_neuralnetworks_data_file, file_type, data_file_type;
#BT Files
type vendor_bt_data_file, file_type, data_file_type;
type sysfs_usb_controller, sysfs_type, fs_type;

View file

@ -272,8 +272,9 @@
/dev/dri/controlD64 u:object_r:graphics_device:s0
/dev/dri/renderD128 u:object_r:graphics_device:s0
#TODO: move this to genfs_context or target based file_context
# sysfs_leds
/sys/devices/platform/soc/[a-z0-9]+.qcom,spmi/spmi-0/spmi0-0[0-9]/[a-z0-9]+.qcom,spmi:qcom,[a-z0-9]+@[0-9]:qcom,haptics@c000/leds/vibrator(/.*)? u:object_r:sysfs_leds:s0
/sys/devices/platform/soc/[a-f0-9]+.qcom,spmi/spmi-0/spmi0-0[0-9]/[a-f0-9]+.qcom,spmi:qcom,[a-f0-9]+@[0-9]:qcom,haptics@c000/leds/vibrator(/.*)? u:object_r:sysfs_leds:s0
# sysfs_devfreq
/sys/devices(/platform)?/soc/soc:qcom,l3-cpu[0-9]/devfreq/soc:qcom,l3-cpu[0-9](/.*)? u:object_r:sysfs_devfreq:s0
@ -283,10 +284,10 @@
/sys/devices/virtual/xt_idletimer/timers(/.*)? u:object_r:sysfs_data:s0
#persist_bluetooth_file
/mnt/vendor/persist/bluetooth(/.*)? u:object_r:persist_bluetooth_file:s0
/mnt/vendor/persist/bluetooth(/.*)? u:object_r:persist_bluetooth_file:s0
/(vendor|system/vendor)/bin/hbtp_daemon u:object_r:hbtp_exec:s0
/(vendor|system/vendor)/bin/hbtp_daemon u:object_r:hbtp_exec:s0
# sysfs_graphics
/sys/class/graphics/fb0/mdp/caps u:object_r:sysfs_graphics:s0
@ -339,25 +340,25 @@
/sys/devices/platform/vfb.([0-3])+/graphics/fb([0-3])+/modes u:object_r:sysfs_graphics:s0
/sys/devices/platform/vfb.([0-3])+/graphics/fb([0-3])+/mode u:object_r:sysfs_graphics:s0
/sys/module/drm/parameters/vblankoffdelay u:object_r:sysfs_graphics:s0
/sys/devices/platform/soc/[a-z0-9]+.qcom,mdss_mdp/drm/card([0-3])+/card([0-3])+-DSI-1/modes u:object_r:sysfs_graphics:s0
/sys/devices/platform/soc/[a-z0-9]+.qcom,mdss_mdp/drm/card([0-3])+/card([0-3])+-DSI-1/status u:object_r:sysfs_graphics:s0
/sys/devices/platform/soc/[a-f0-9]+.qcom,mdss_mdp/drm/card([0-3])+/card([0-3])+-DSI-1/modes u:object_r:sysfs_graphics:s0
/sys/devices/platform/soc/[a-f0-9]+.qcom,mdss_mdp/drm/card([0-3])+/card([0-3])+-DSI-1/status u:object_r:sysfs_graphics:s0
/sys/class/graphics/fb([0-3])+/mdp/caps u:object_r:sysfs_graphics:s0
/sys/class/graphics/fb([0-3])+/ad u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[0-9a-z]+.qcom,spmi/spmi-[0-9]+/spmi[0-9]+-[0-9]+/[0-9a-z]+.qcom,spmi:qcom,pmi[0-9]+@[0-9]+:qcom,leds@[a-z0-9]+(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[0-9a-f]+.qcom,spmi/spmi-[0-9]+/spmi[0-9]+-[0-9]+/[0-9a-f]+.qcom,spmi:qcom,pmi[0-9]+@[0-9]+:qcom,leds@[a-f0-9]+(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices/platform/soc/ae00000.qcom,mdss_mdp/backlight(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices/virtual/switch/hdmi(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,mdss_mdp/[a-z0-9]+.qcom,mdss_mdp:qcom,mdss_fb_primary/leds/lcd-backlight(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices/soc.0/[a-z0-9]+.qcom,mdss_mdp/qcom,mdss_fb_primary.+[a-z0-9]/leds/lcd-backlight(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,mdss_mdp/caps u:object_r:sysfs_graphics:s0
/sys/devices/soc/[a-z0-9]+.qcom,mdss_mdp/bw_mode_bitmap u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,mdss_mdp/bw_mode_bitmap u:object_r:sysfs_graphics:s0
/sys/devices/soc.0/[a-z0-9]+.qcom,mdss_mdp/bw_mode_bitmap u:object_r:sysfs_graphics:s0
/sys/devices/soc.0/[a-z0-9]+.qcom,mdss_mdp/caps u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,mdss_cam/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,mdss_rotator/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,mdss_rotator/caps u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,vidc/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,cci/[a-z0-9]+.qcom,cci:qcom,camera@[0-2]/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,mdss_mdp/[a-f0-9]+.qcom,mdss_mdp:qcom,mdss_fb_primary/leds/lcd-backlight(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices/soc.0/[a-f0-9]+.qcom,mdss_mdp/qcom,mdss_fb_primary.+[a-f0-9]/leds/lcd-backlight(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,mdss_mdp/caps u:object_r:sysfs_graphics:s0
/sys/devices/soc/[a-f0-9]+.qcom,mdss_mdp/bw_mode_bitmap u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,mdss_mdp/bw_mode_bitmap u:object_r:sysfs_graphics:s0
/sys/devices/soc.0/[a-f0-9]+.qcom,mdss_mdp/bw_mode_bitmap u:object_r:sysfs_graphics:s0
/sys/devices/soc.0/[a-f0-9]+.qcom,mdss_mdp/caps u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,mdss_cam/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,mdss_rotator/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,mdss_rotator/caps u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,vidc/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,cci/[a-f0-9]+.qcom,cci:qcom,camera@[0-2]/video4linux/video[0-33]/name(/.*)? u:object_r:sysfs_graphics:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.sdhci/mmc_host/mmc0/clk_scaling(/.*)? u:object_r:sysfs_mmc_host:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.ufshc/clkscale_enable u:object_r:sysfs_scsi_host:s0
@ -366,30 +367,32 @@
/data/vendor/mediadrm(/.*)? u:object_r:mediadrm_vendor_data_file:s0
/data/vendor/nnhal(/.*)? u:object_r:hal_neuralnetworks_data_file:s0
/sys/devices(/platform)?/soc/[a-z0-9\.:]+,[a-z0-9\-\_]+/subsys[0-9]+/name u:object_r:sysfs_ssr:s0
/sys/devices(/platform)?/soc/[a-f0-9\.:]+,[a-f0-9\-\_]+/subsys[0-9]+/name u:object_r:sysfs_ssr:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,kgsl-3d0/kgsl/kgsl-3d0(/.*)? u:object_r:sysfs_kgsl:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,kgsl-3d0/devfreq/[a-f0-9]+.qcom,kgsl-3d0(/.*)? u:object_r:sysfs_kgsl:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-z0-9]+.qcom,spmi:qcom,[a-z0-9]+@[0-9]:qcom,usb-pdphy@[0-9]+/usbpd/usbpd[0-9](/.*)? u:object_r:sysfs_usbpd_device:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-z0-9]+.qcom,spmi:qcom,[a-z0-9]+@[0-9]:qcom,qpnp-smb2/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-z0-9]+.qcom,spmi:qcom,[a-z0-9]+@[0-9]:qcom,qpnp-smb2/power_supply/pc_port(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.i2c/i2c-[0-9]+/[0-9]+-[0-9]+/[a-z0-9]+.i2c:qcom,[a-z0-9]+@[0-9]:qcom,smb[0-9]+-charger@[0-9]+/power_supply/parallel(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices/soc/[a-z0-9]+.ssusb/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-f0-9]+.qcom,spmi:qcom,[a-f0-9]+@[0-9]:qcom,usb-pdphy@[0-9]+/usbpd/usbpd[0-9](/.*)? u:object_r:sysfs_usbpd_device:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-f0-9]+.qcom,spmi:qcom,[a-f0-9]+@[0-9]:qcom,qpnp-smb2/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-f0-9]+.qcom,spmi:qcom,[a-f0-9]+@[0-9]:qcom,qpnp-smb2/power_supply/pc_port(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.i2c/i2c-[0-9]+/[0-9]+-[0-9]+/[a-f0-9]+.i2c:qcom,[a-f0-9]+@[0-9]:qcom,smb[0-9]+-charger@[0-9]+/power_supply/parallel(/.*)? u:object_r:sysfs_usb_supply:s0
/sys/devices/soc/[a-f0-9]+.ssusb/power_supply/usb(/.*)? u:object_r:sysfs_usb_supply:s0
/data/(misc|vendor)/hbtp(/.*)? u:object_r:hbtp_log_file:s0
/vendor/etc/hbtp/* u:object_r:hbtp_cfg_file:s0
/sys/devices/qpnp-charger.*/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-z0-9]+.qcom,spmi:qcom,[a-z0-9]+@[0-9]:qcom,qpnp-smb2/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/[a-z0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-z0-9]+.qcom,spmi:qcom,[a-z0-9]+@[0-9]:qpnp,fg/power_supply/bms(/.*)? u:object_r:sysfs_battery_supply:s0
# TODO: move this 2 line to target specfic file_contexts/genfs_context
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-f0-9]+.qcom,spmi:qcom,[a-f0-9]+@[0-9]:qcom,qpnp-smb2/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/[a-f0-9]+.qcom,spmi/spmi-[0-9]/spmi0-0[0-9]/[a-f0-9]+.qcom,spmi:qcom,[a-f0-9]+@[0-9]:qpnp,fg/power_supply/bms(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/class/qcom-battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/qpnp-linear-charger-[a-z0-9]+/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/qpnp-vm-bms-[a-z0-9]+/power_supply/bms(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-smbcharger-[a-z0-9]+/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-fg-[a-z0-9]+/power_supply/bms(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-smbcharger-[a-z0-9]+/power_supply/dc(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/[a-z0-9]+.i2c/i2c-[0-9]/[0-9]-[a-z0-9]+/power_supply/parallel(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/qpnp-linear-charger-[a-f0-9]+/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices(/platform)?/soc/qpnp-vm-bms-[a-f0-9]+/power_supply/bms(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-smbcharger-[a-f0-9]+/power_supply/battery(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-fg-[a-f0-9]+/power_supply/bms(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-smbcharger-[a-f0-9]+/power_supply/dc(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/[a-f0-9]+.i2c/i2c-[0-9]/[0-9]-[a-f0-9]+/power_supply/parallel(/.*)? u:object_r:sysfs_battery_supply:s0
/sys/devices/soc/qpnp-vadc-[0-9]+(/.*)? u:object_r:sysfs_vadc_dev:s0

View file

@ -40,8 +40,8 @@ allow wcnss_service vendor_toolbox_exec:file rx_file_perms;
allow wcnss_service proc_net:file w_file_perms;
allow wcnss_service self:socket create_socket_perms;
allowxperm wcnss_service self:socket ioctl msm_sock_ipc_ioctls;
allow wcnss_service self:{ socket qipcrtr_socket } create_socket_perms;
allowxperm wcnss_service self:{ socket qipcrtr_socket } ioctl msm_sock_ipc_ioctls;
allowxperm wcnss_service self:udp_socket ioctl { SIOCIWFIRSTPRIV_05 SIOCSIFFLAGS };
allow wcnss_service self:netlink_generic_socket create_socket_perms_no_ioctl;

View file

@ -25,7 +25,6 @@
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
type sysfs_usb_controller, sysfs_type, fs_type;
#type sysfs_qdss_dev;
type uefi_block_device, dev_type;
#logdump partition

View file

@ -78,3 +78,6 @@ genfscon sysfs /devices/platform/soc/soc:qcom,wil6210/subsys9/name u:object_r:sy
genfscon sysfs /devices/platform/soc/soc:qcom,mdm3/subsys9/name u:object_r:sysfs_ssr:s0
genfscon sysfs /devices/platform/soc/soc:bt_qca6174/extldo u:object_r:sysfs_bluetooth_writable:s0
genfscon sysfs /devices/platform/soc/soc:bt_qca6174/rfkill/rfkill0/state u:object_r:sysfs_bluetooth_writable:s0
#hvdcp
genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-02/c440000.qcom,spmi:qcom,pm8150b@2:qcom,usb-pdphy@1700/usbpd/usbpd0 u:object_r:sysfs_usbpd_device:s0

View file

@ -38,6 +38,8 @@
/system/bin/mirrorlinkserver u:object_r:mirrorlink_exec:s0
/system/bin/qvrservice u:object_r:qvrd_exec:s0
/system/bin/seempd u:object_r:seempd_exec:s0
#/system/bin/dun-server u:object_r:dun-server_exec:s0
####### data files ################
/data/misc/mirrorlinkserver(/.*)? u:object_r:mirrorlink_data_file:s0

View file

@ -25,4 +25,6 @@
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
persist.vendor.dpm. u:object_r:persist_dpm_prop:s0
persist.vendor.dpm. u:object_r:persist_dpm_prop:s0
persist.vendor.btstack u:object_r:bluetooth_prop:s0
persist.vendor.bluetooth.emailaccountcount u:object_r:bluetooth_prop:s0

View file

@ -25,5 +25,5 @@
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
allow hal_gnss self:qipcrtr_socket rw_socket_perms;
allow hal_gnss self:qipcrtr_socket create_socket_perms_no_ioctl;
allowxperm hal_gnss self:qipcrtr_socket ioctl msm_sock_ipc_ioctls;

View file

@ -36,6 +36,7 @@ vendor.qti.hardware.wigig.netperftuner::INetPerfTuner u:object_r:hal_wigi
vendor.qti.hardware.qteeconnector::IAppConnector u:object_r:hal_qteeconnector_hwservice:s0
vendor.qti.hardware.qteeconnector::IGPAppConnector u:object_r:hal_qteeconnector_hwservice:s0
vendor.qti.hardware.mlshal::IMlsDap u:object_r:hal_mirrorlink_hwservice:s0
vendor.qti.hardware.mlshal::IMlsVnc u:object_r:hal_mirrorlink_hwservice:s0
vendor.qti.power.pasrmanager::IPasrManager u:object_r:hal_pasrmanager_hwservice:s0
com.qualcomm.qti.bluetooth_audio::IBluetoothAudio u:object_r:hal_audio_hwservice:s0
vendor.qti.gnss::ILocHidlGnss u:object_r:hal_gnss_hwservice:s0
@ -52,3 +53,4 @@ vendor.qti.hardware.scve.panorama::IPanoramaStitching u:object_r:hal_scve
vendor.qti.hardware.soter::ISoter u:object_r:hal_soter_hwservice:s0
vendor.qti.hardware.fm::IFmHci u:object_r:hal_bluetooth_hwservice:s0
vendor.qti.esepowermanager::IEsePowerManager u:object_r:hal_esepowermanager_hwservice:s0
vendor.qti.hardware.wifi.supplicant::ISupplicantVendor u:object_r:hal_wifi_supplicant_hwservice:s0

View file

@ -27,3 +27,4 @@
type vendor_dataadpl_prop, property_type;
type spcomlib_prop, property_type;
type vendor_qdma_prop, property_type;

View file

@ -31,3 +31,6 @@ persist.vendor.bt.soc.scram_freqs u:object_r:vendor_bluetooth_prop:s0
persist.vendor.bluetooth.a2dp. u:object_r:vendor_bluetooth_prop:s0
ro.vendor.bluetooth. u:object_r:vendor_bluetooth_prop:s0
ro.vendor.qualcomm.bluetooth. u:object_r:vendor_bluetooth_prop:s0
# qdma property
vendor.qti.qdma. u:object_r:vendor_qdma_prop:s0

28
qva/vendor/msmnile/genfs_contexts vendored Normal file
View file

@ -0,0 +1,28 @@
# Copyright (c) 2018, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of The Linux Foundation nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED"AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
genfscon sysfs /devices/soc/18800000.qcom,icnss/net u:object_r:sysfs_net:s0