Permission issue on sysfs access from android application ( .java source code )

ansh462

New member
Apr 3, 2017
1
0
0
Visit site
Android application in java having permission issues when accessing sysfs entry.

try{
FileOutputStream fos = new FileOutputStream("/sys/class/shift_reg/shift_reg/value");
byte mybyte = 1;
fos.write(mybyte);
fos.close();
} catch ( Exception e) {
Log.d(TAG, "Failed in writing to Shift Register"); <------- I am always getting this exception.
}
1) Have tried putting 'setenforce 0'. Does't work. Even though enforce level is permissive.

2) Do I have to access using JNI way: ( android-app -> jni -> driver )

3) I have set file permission as 0777 for the sysfs node file.

Dmesg Error message:

[ 417.176302] type=1400 audit(418.589:63): avc: denied { write } for pid=3164 comm="com.android.cam" name="value" dev="sysfs" ino=9749 scontext=u:r:untrusted_app:s0 tcontext=u:eek:bject_r:sysfs:s0 tclass=file permissive=1
ps -Z

u:r:untrusted_app:s0 u0_a67 4360 333
com.android.cam
 

BayK

Active member
Apr 2, 2017
38
0
0
Visit site
This file is exposed by the kernel, it is not a physical file in the file system.
For you need to check you kernel doc to verify if it is writable.

Did you try to write to /sys/class/shift_reg/shift_reg/value from Adb? Does it work?
 
Last edited: