selinux: add the BT logging permission for Pixel logger

Denial message:

09-13 18:55:11.249  7554  7577 W libc    : Unable to set property
"persist.service.bdroid.snooplog" to "true": error code: 0x18
09-13 18:55:11.250  7554  7577 E AndroidRuntime: FATAL EXCEPTION:
LoggingService
09-13 18:55:11.250  7554  7577 E AndroidRuntime: Process:
com.android.pixellogger, PID: 7554
09-13 18:55:11.250  7554  7577 E AndroidRuntime:
java.lang.RuntimeException: failed to set system property
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
android.os.SystemProperties.native_set(Native Method)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
android.os.SystemProperties.set(SystemProperties.java:171)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
com.android.pixellogger.data.logger.vendor.qct.ModemLogger$1.onStart(ModemLogger.java:79)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
com.android.pixellogger.data.logger.vendor.qct.ModemLogger.lambda$startLogging$0$ModemLogger(ModemLogger.java:186)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
com.android.pixellogger.data.logger.vendor.qct.ModemLogger$$Lambda$0.accept(Unknown
Source:6)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
java.util.HashMap.forEach(HashMap.java:1292)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
com.android.pixellogger.data.logger.vendor.qct.ModemLogger.startLogging(ModemLogger.java:183)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
com.android.pixellogger.service.logging.LoggingService$StartLoggingRunnable.run(LoggingService.java:458)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
android.os.Handler.handleCallback(Handler.java:790)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
android.os.Handler.dispatchMessage(Handler.java:99)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
android.os.Looper.loop(Looper.java:164)
09-13 18:55:11.250  7554  7577 E AndroidRuntime: 	at
android.os.HandlerThread.run(HandlerThread.java:65)
09-13 18:55:11.251  1147  2530 W ActivityManager:   Force finishing
activity com.android.pixellogger/.ui.main.MainActivity
09-13 18:55:11.257  1147  1206 I ActivityManager: Showing crash dialog
for package com.android.pixellogger u0
09-13 21:38:45.198  2084  2084 W wcnss_filter: type=1400 audit(0.0:1174):
avc: denied { read } for name="timestamp_switch" dev="sysfs" ino=27539
scontext=u:r:wcnss_filter:s0 tcontext=u:object_r:sysfs_timestamp_switch:s0 tclass=file permissive=0


09-13 21:30:50.451  2031  2031 W wcnss_filter: type=1400
audit(0.0:1390): avc: denied { search } for name="diagchar" dev="sysfs"
ino=27213 scontext=u:r:wcnss_filter:s0 tcontext=u:object_r:sysfs_diag:s0
tclass=dir permissive=0

Change-Id: Ia05996c1b6e0969ef6df6ea142271f76445b90e1
Signed-off-by: Ecco Park <eccopark@google.com>
This commit is contained in:
Ecco Park
2017-09-13 19:07:28 -07:00
parent bb69407f19
commit 98a67963fb
5 changed files with 13 additions and 0 deletions

View File

@@ -384,3 +384,11 @@ service cnss_diag_txt /vendor/bin/cnss_diag -s -f -m /data/vendor/wifi/cnss_diag
on property:debug.htc.ramdump.crash=true
write /proc/sysrq-trigger "c"
on property:sys.logger.bluetooth=true
setprop persist.service.bdroid.snooplog true
setprop persist.service.bdroid.fwsnoop true
on property:sys.logger.bluetooth=false
setprop persist.service.bdroid.snooplog false
setprop persist.service.bdroid.fwsnoop false

View File

@@ -18,4 +18,5 @@ userdebug_or_eng(`
set_prop(logger_app, cnss_diag_prop)
set_prop(logger_app, modem_diag_prop)
set_prop(logger_app, bluetooth_log_prop)
')

View File

@@ -14,3 +14,4 @@ type modem_diag_prop, property_type;
type tel_mon_prop, property_type;
type sys_time_prop, property_type;
type atfwd_start_prop, property_type;
type bluetooth_log_prop, property_type;

View File

@@ -24,3 +24,4 @@ sys.modem.diag. u:object_r:modem_diag_prop:s0
persist.radio.enable_tel_mon u:object_r:tel_mon_prop:s0
sys.time.set u:object_r:sys_time_prop:s0
persist.radio.atfwd.start u:object_r:atfwd_start_prop:s0
sys.logger.bluetooth u:object_r:bluetooth_log_prop:s0

View File

@@ -12,7 +12,9 @@ userdebug_or_eng(`
allow wcnss_filter diag_device:chr_file rw_file_perms;
allow wcnss_filter ramdump_vendor_data_file:dir create_dir_perms;
allow wcnss_filter ramdump_vendor_data_file:file create_file_perms;
allow wcnss_filter sysfs_timestamp_switch:file r_file_perms;
r_dir_file(wcnss_filter, debugfs_ipc)
r_dir_file(wcnss_filter, sysfs_diag)
')
#allow wakelock