Pierre-Hugues Husson | f181109 | 2018-04-10 18:33:33 +0200 | [diff] [blame] | 1 | #!/system/bin/sh |
| 2 | |
| 3 | set -e |
| 4 | |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 5 | fixSPL() { |
| 6 | img="$(find /dev/block -type l |grep by-name |grep /kernel$(getprop ro.boot.slot_suffix) |head -n 1)" |
| 7 | [ -z "$img" ] && img="$(find /dev/block -type l |grep by-name |grep /boot$(getprop ro.boot.slot_suffix) |head -n 1)" |
| 8 | if [ -n "$img" ];then |
| 9 | #Rewrite SPL/Android version if needed |
| 10 | Arelease="$(getSPL $img android)" |
| 11 | setprop ro.keymaster.xxx.release $Arelease |
| 12 | setprop ro.keymaster.xxx.security_patch "$(getSPL $img spl)" |
| 13 | |
| 14 | #Only Android 8.0 needs this |
| 15 | if ! echo "$Arelease" |grep -qF 8.0;then |
| 16 | return 0 |
| 17 | fi |
| 18 | |
| 19 | for f in /vendor/lib64/hw/android.hardware.keymaster@3.0-impl-qti.so /system/lib64/vndk-26/libsoftkeymasterdevice.so;do |
| 20 | [ ! -f $f ] && continue |
| 21 | b="$(basename "$f")" |
| 22 | |
| 23 | mkdir -p /dev/phh/ |
| 24 | cp $f /dev/phh/$b |
| 25 | sed -i -e 's/ro.build.version.release/ro.keymaster.xxx.release/g' -e 's/ro.build.version.security_patch/ro.keymaster.xxx.security_patch/g' /dev/phh/$b |
| 26 | if echo $f |grep vendor;then |
| 27 | chcon u:object_r:vendor_file:s0 /dev/phh/$b |
| 28 | else |
| 29 | chcon u:object_r:system_file:s0 /dev/phh/$b |
| 30 | fi |
| 31 | chmod 0644 /dev/phh/$b |
| 32 | mount -o bind /dev/phh/$b $f |
| 33 | done |
| 34 | setprop ctl.restart keymaster-3-0 |
| 35 | fi |
| 36 | } |
| 37 | |
Pierre-Hugues Husson | 16ea168 | 2018-04-15 19:19:47 +0200 | [diff] [blame] | 38 | if mount -o remount,rw /system;then |
| 39 | resize2fs $(grep ' /system ' /proc/mounts |cut -d ' ' -f 1) |
| 40 | elif mount -o remount,rw /;then |
| 41 | resize2fs /dev/root |
| 42 | fi |
Pierre-Hugues Husson | f181109 | 2018-04-10 18:33:33 +0200 | [diff] [blame] | 43 | mount -o remount,ro /system |
Pierre-Hugues Husson | 16ea168 | 2018-04-15 19:19:47 +0200 | [diff] [blame] | 44 | mount -o remount,ro / |
Pierre-Hugues Husson | 520fea1 | 2018-04-24 22:36:59 +0200 | [diff] [blame] | 45 | |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 46 | fixSPL |
Pierre-Hugues Husson | 520fea1 | 2018-04-24 22:36:59 +0200 | [diff] [blame] | 47 | |
Pierre-Hugues Husson | 29622ec | 2018-04-30 13:56:06 +0200 | [diff] [blame] | 48 | if grep vendor.huawei.hardware.biometrics.fingerprint /vendor/manifest.xml;then |
| 49 | mount -o bind system/phh/huawei/fingerprint.kl /vendor/usr/keylayout/fingerprint.kl |
| 50 | fi |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 51 | |
Pierre-Hugues Husson | bf88632 | 2018-05-18 15:09:30 +0200 | [diff] [blame] | 52 | if ! grep android.hardware.biometrics.fingerprint /vendor/manifest.xml;then |
| 53 | mount -o bind system/phh/empty /system/etc/permissions/android.hardware.fingerprint.xml |
| 54 | fi |
| 55 | |
Pierre-Hugues Husson | 1936b62 | 2018-05-19 13:40:50 +0200 | [diff] [blame] | 56 | if ! grep android.hardware.ir /vendor/manifest.xml;then |
| 57 | mount -o bind system/phh/empty /system/etc/permissions/android.hardware.consumerir.xml |
| 58 | fi |
| 59 | |
Pierre-Hugues Husson | 71789c3 | 2018-05-14 13:39:17 +0200 | [diff] [blame] | 60 | #Disable trustkernel keystore, because it doesn't work for the moment |
| 61 | #Found on MTK devices |
| 62 | mount -o bind /system/phh/empty /vendor/lib/hw/keystore.trustkernel.so || true |
| 63 | mount -o bind /system/phh/empty /vendor/lib64/hw/keystore.trustkernel.so || true |