c4dcb16ca9
This simply adds checks for selinux labels for files under /data/misc/wifi which were not labeled correctly for some devices Change-Id: Iaacf6db792aaea1485502b424d639a1212c5841b
77 lines
1.7 KiB
Bash
77 lines
1.7 KiB
Bash
#!/system/bin/sh
|
|
|
|
L="log -p i -t SELinuxLabel"
|
|
|
|
# Bail out early if not on a SELinux build
|
|
getprop ro.build.selinux | grep -q 1 || exit
|
|
if [ ! -f /file_contexts ]; then
|
|
exit
|
|
fi
|
|
|
|
LABELDATA=0
|
|
LABELSYS=0
|
|
LABELDALVIKCACHE=0
|
|
|
|
# Test /data
|
|
ls -Zd /data/system | grep -q unlabeled
|
|
if [ $? -eq 0 ]; then
|
|
$L "userdata is unlabeled, fixing..."
|
|
LABELDATA=1
|
|
fi
|
|
|
|
# Recheck other files under /data
|
|
ls -Z /data/misc/wifi/wpa_supplicant.conf | grep -q "wifi_"
|
|
if [ $? -eq 1 ]; then
|
|
$L "data is unlabeled, fixing..."
|
|
LABELDATA=1
|
|
fi
|
|
|
|
ls -Z /system/bin/surfaceflinger | grep -q unlabeled
|
|
if [ $? -eq 0 ]; then
|
|
$L "system is unlabeled, fixing... (You really should update your recovery)"
|
|
LABELSYS=1
|
|
fi
|
|
|
|
ls -Z /system/priv-app/GoogleServicesFramework.apk | grep -q unlabeled
|
|
if [ $LABELSYS = "0" -a $? -eq 0 ]; then
|
|
$L "Found unlabeled Google framework, fixing..."
|
|
LABELSYS=1
|
|
fi
|
|
|
|
ls -Zd /data/dalvik-cache | grep -q unlabeled
|
|
if [ $? -eq 0 ]; then
|
|
$L "dalvik-cache is unlabeled, fixing..."
|
|
LABELDALVIKCACHE=1
|
|
fi
|
|
|
|
ls -Zd /cache/dalvik-cache | grep -q unlabeled
|
|
if [ $? -eq 0 ]; then
|
|
$L "dalvik-cache is unlabeled, fixing..."
|
|
LABELDALVIKCACHE=1
|
|
fi
|
|
|
|
|
|
if [ $LABELSYS = "1" ]; then
|
|
busybox mount -o remount,rw /system
|
|
$L "/system relabel starting..."
|
|
restorecon -R /system
|
|
$L "/system relabel complete"
|
|
busybox mount -o remount,ro /system
|
|
fi
|
|
|
|
if [ $LABELDATA = "1" ]; then
|
|
$L "/data relabel starting..."
|
|
restorecon -R /data
|
|
$L "/data relabel complete"
|
|
$L "/cache relabel starting..."
|
|
restorecon -R /cache
|
|
$L "/cache relabel complete"
|
|
fi
|
|
|
|
if [ $LABELDALVIKCACHE = "1" ]; then
|
|
$L "dalvik-cache relabel starting..."
|
|
restorecon -R /data/dalvik-cache
|
|
restorecon -R /cache/dalvik-cache
|
|
$L "dalvik-cache relabel complete"
|
|
fi
|