diff --git a/README.md b/README.md index a2a5dee..ea41158 100644 --- a/README.md +++ b/README.md @@ -86,7 +86,7 @@ The fingerprints list will update without the need to update the entire module. Just run the `props` command and the list will be updated automatically. Use the -nw option to disable or disable it completely in the script settings (see below). If you've disabled the this setting you can update the list manually in the `Edit device fingerprint` menu. -**_Current fingerprints list version - v17_** +**_Current fingerprints list version - v18_** ## Improved root hiding - Editing build.prop and default.prop @@ -160,6 +160,12 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log" ## Changelog +### v2.2.2 +- This is not the changelog you're looking for. You can go about your business. Move along. +- Fixed a bug with setting custom props where the value contains spaces. +- Added a couple of fingerprints (OnePlus 6 and Xiaomi Mi Note 2) and cleaned out a few old ones, list v 18. +- As usual, a whole bunch of script improvements that hopefully won't break anything. + ### v2.2.1 - Added a check for entering empty values for fingerprint and custom props. - Added a command option to go directly to the settings menu. Run `props` with the -h option for details. @@ -239,7 +245,7 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log" ## Current fingerprints list -### List v17  +### List v18  - Asus Zenfone 2 Laser (6.0.1) - Google Nexus 4 (5.1.1) - Google Nexus 5 (6.0.1) @@ -266,6 +272,7 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log" - OnePlus 3T (8.0.0) - OnePlus 5T (7.1.1) - OnePlus 5T (8.0.0) +- OnePlus 6 (8.1.0) - Samsung Galaxy A8 Plus (7.1.1) - Samsung Galaxy Grand Prime (5.0.2) - Samsung Galaxy J5 (7.1.1) @@ -308,6 +315,7 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log" - Xiaomi Mi 6 (8.0.0) - Xiaomi Mi A1 (8.0.0) - Xiaomi Mi Max 2 (7.1.1) +- Xiaomi Mi Note 2 (7.0) - Xiaomi Redmi 4 Prime (6.0.1) - Xiaomi Redmi 4X (6.0.1) - Xiaomi Redmi Note 3 Pro (6.0.1) diff --git a/common/prints.sh b/common/prints.sh index dd523a6..9ccfc08 100644 --- a/common/prints.sh +++ b/common/prints.sh @@ -3,7 +3,7 @@ # MagiskHide Props Config # By Didgeridoohan @ XDA Developers -PRINTSV=17 +PRINTSV=18 PRINTSTRANSF=1 PRINTSFILE=/sdcard/printslist @@ -34,8 +34,8 @@ Motorola Moto G5 Plus (7.0)=motorola/potter_n/potter_n:7.0/NPNS25.137-33-11/11:u Motorola Moto X4 (8.0.0)=motorola/payton/payton:8.0.0/OPWS27.57-25-6-10/12:user/release-keys Nvidia Shield K1 (7.0)=nvidia/sb_na_wf/shieldtablet:7.0/NRD90M/1928188_1065.2559:user/release-keys OnePlus 3T (8.0.0)=OnePlus/OnePlus3/OnePlus3T:8.0.0/OPR6.170623.013/12041042:user/release-keys -OnePlus 5T (7.1.1)=OnePlus/OnePlus5T/OnePlus5T:7.1.1/NMF26X/12152312:user/release-keys OnePlus 5T (8.0.0)=OnePlus/OnePlus5T/OnePlus5T:8.0.0/OPR1.170623.032/02040656:user/release-keys +OnePlus 6 (8.1.0)=OnePlus/OnePlus6/OnePlus6:8.1.0/OPM1.171019.011/05172042:user/release-keys Samsung Galaxy A8 Plus (7.1.1)=samsung/jackpot2ltexx/jackpot2lte:7.1.1/NMF26X/A730FXXU2ARD1:user/release-keys Samsung Galaxy Grand Prime (5.0.2)=samsung/fortuna3gdtvvj/fortuna3gdtv:5.0.2/LRX22G/G530BTVJU1BPH4:user/release-keys Samsung Galaxy J5 (7.1.1)=samsung/j5xnltexx/j5xnlte:7.1.1/NMF26X/J510FNXXS2BRA2:user/release-keys @@ -48,11 +48,8 @@ Samsung Galaxy S3 Neo (4.4.4)=samsung/s3ve3gdd/s3ve3gdd:4.4.4/KTU84P/I9300IDDUBQ Samsung Galaxy S4 (5.0.1)=samsung/jfltexx/jflte:5.0.1/LRX22C/I9505XXUHPF4:user/release-keys Samsung Galaxy S6 (7.0)=samsung/zerofltexx/zeroflte:7.0/NRD90M/G920FXXS5EQL1:user/release-keys Samsung Galaxy S6 Edge (7.0)=samsung/zeroltexx/zerolte:7.0/NRD90M/G925FXXS5EQL1:user/release-keys -Samsung Galaxy S7 (7.0)=samsung/heroltexx/herolte:7.0/NRD90M/G930FXXU2DRB6:user/release-keys Samsung Galaxy S7 (8.0.0)=samsung/heroltexx/herolte:8.0.0/R16NW/G930FXXU2ERD5:user/release-keys -Samsung Galaxy S7 Edge (7.0)=samsung/hero2ltexx/hero2lte:7.0/NRD90M/G935FXXU2DRB6:user/release-keys Samsung Galaxy S7 Edge (8.0.0)=samsung/hero2ltexx/hero2lte:8.0.0/R16NW/G935FXXU2ERD5:user/release-keys -Samsung Galaxy S8 Plus (7.0)=samsung/dream2ltexx/dream2lte:7.0/NRD90M/G955FXXU1AQGB:user/release-keys Samsung Galaxy S8 Plus (8.0.0)=samsung/dream2ltexx/dream2lte:8.0.0/R16NW/G955FXXU1CRC7:user/release-keys Samsung Galaxy S9 (8.0.0)=samsung/starltexx/starlte:8.0.0/R16NW/G960FXXU1ARCC:user/release-keys Samsung Galaxy S9 Plus (8.0.0)=samsung/star2ltexx/star2lte:8.0.0/R16NW/G965FXXU1ARCC:user/release-keys @@ -78,6 +75,7 @@ Xiaomi Mi 6 (7.1.1)=Xiaomi/sagit/sagit:7.1.1/NMF26X/V8.2.17.0.NCACNEC:user/relea Xiaomi Mi 6 (8.0.0)=Xiaomi/sagit/sagit:8.0.0/OPR1.170623.027/V9.2.3.0.OCAMIEK:user/release-keys Xiaomi Mi A1 (8.0.0)=xiaomi/tissot/tissot_sprout:8.0.0/OPR1.170623.026/V.9.5.10.0.ODHMIFA:user/release-keys Xiaomi Mi Max 2 (7.1.1)=Xiaomi/oxygen/oxygen:7.1.1/NMF26F/V9.5.4.0.NDDMIFA:user/release-keys +Xiaomi Mi Note 2 (7.0)=Xiaomi/scorpio/scorpio:7.0/NRD90M/V9.2.1.0.NADMIEK:user/release-keys Xiaomi Redmi 4 Prime (6.0.1)=Xiaomi/markw/markw:6.0.1/MMB29M/V9.5.3.0.MBEMIFA:user/release-keys Xiaomi Redmi 4X (6.0.1)=Xiaomi/santoni/santoni:6.0.1/MMB29M/V8.5.4.0.MAMCNED:user/release-keys Xiaomi Redmi Note 3 Pro (6.0.1)=Xiaomi/kenzo/kenzo:6.0.1/MMB29M/V8.2.1.0.MHOCNDL:user/release-keys diff --git a/common/propsconf_late b/common/propsconf_late index 47aa010..7cf2110 100644 --- a/common/propsconf_late +++ b/common/propsconf_late @@ -9,7 +9,7 @@ # In that case, feel free to delete it. # Script version -SCRIPTV=7 +SCRIPTV=8 SETTRANSF=1 # Variables @@ -103,13 +103,13 @@ if [ -d "$MODPATH" ]; then # ---Original values--- # default.prop - FILEDEBUGGABLE="" - FILESECURE="" + ORIGDEBUGGABLE="" + ORIGSECURE="" # build.prop - FILETYPE="" - FILETAGS="" - FILESELINUX="" - FILEFINGERPRINT="" + ORIGTYPE="" + ORIGTAGS="" + ORIGSELINUX="" + ORIGFINGERPRINT="" # ---Module values--- MODULEDEBUGGABLE="" diff --git a/common/propsconf_post b/common/propsconf_post index 8ea480f..5ac695e 100644 --- a/common/propsconf_post +++ b/common/propsconf_post @@ -33,19 +33,23 @@ if [ -d "$MODPATH" ]; then # Start logging log_start - # Get the current values saved in propsconf_late - latefile_values # Get default values - file_values + log_handler "Checking device default values." + curr_values + # Get the current original values saved in propsconf_late + log_handler "Checking currently saved values." + orig_values # Save default file values in propsconf_late - replace_fn FILEDEBUGGABLE "\"$LATEFILEDEBUGGABLE\"" "\"$FILEDEBUGGABLE\"" $LATEFILE - replace_fn FILESECURE "\"$LATEFILESECURE\"" "\"$FILESECURE\"" $LATEFILE - replace_fn FILETYPE "\"$LATEFILETYPE\"" "\"$FILETYPE\"" $LATEFILE - replace_fn FILETAGS "\"$LATEFILETAGS\"" "\"$FILETAGS\"" $LATEFILE - replace_fn FILESELINUX "\"$LATEFILESELINUX\"" "\"$FILESELINUX\"" $LATEFILE - replace_fn FILEFINGERPRINT "\"$LATEFILEFINGERPRINT\"" "\"$FILEFINGERPRINT\"" $LATEFILE + replace_fn ORIGDEBUGGABLE "\"$ORIGDEBUGGABLE\"" "\"$CURRDEBUGGABLE\"" $LATEFILE + replace_fn ORIGSECURE "\"$ORIGSECURE\"" "\"$CURRSECURE\"" $LATEFILE + replace_fn ORIGTYPE "\"$ORIGTYPE\"" "\"$CURRTYPE\"" $LATEFILE + replace_fn ORIGTAGS "\"$ORIGTAGS\"" "\"$CURRTAGS\"" $LATEFILE + replace_fn ORIGSELINUX "\"$ORIGSELINUX\"" "\"$CURRSELINUX\"" $LATEFILE + replace_fn ORIGFINGERPRINT "\"$ORIGFINGERPRINT\"" "\"$CURRFINGERPRINT\"" $LATEFILE log_handler "Default values saved to $LATEFILE." + # Loading the new values + orig_values # Check if original file values are safe orig_safe @@ -97,7 +101,7 @@ if [ -d "$MODPATH" ]; then change_prop_file "build" # Fingerprint if [ "$MODULEFINGERPRINT" ] && [ "$(get_file_value $LATEFILE "SETFINGERPRINT=")" == "true" ]; then - PRINTSTMP="$(cat /system/build.prop | grep "$FILEFINGERPRINT")" + PRINTSTMP="$(cat /system/build.prop | grep "$ORIGFINGERPRINT")" for ITEM in $PRINTSTMP; do replace_fn $(get_eq_left "$ITEM") $(get_eq_right "$ITEM") $MODULEFINGERPRINT $MODPATH/system/build.prop && log_handler "$(get_eq_left "$ITEM")=$MODULEFINGERPRINT" done diff --git a/common/util_functions.sh b/common/util_functions.sh index dae3a03..468c143 100644 --- a/common/util_functions.sh +++ b/common/util_functions.sh @@ -15,11 +15,21 @@ LASTLOGFILE=$CACHELOC/propsconf_last.log CONFFILE=$CACHELOC/propsconf_conf RESETFILE=$CACHELOC/reset_mhpc MAGISKLOC=/data/adb/magisk -BBPATH=$MAGISKLOC/busybox +if [ -d "$IMGPATH/busybox-ndk" ]; then + BBPATH=$(find $IMGPATH/busybox-ndk -name 'busybox') +elif [ -f "/system/bin/busybox" ]; then + BBPATH=/system/bin/busybox +elif [ -f "/system/xbin/busybox" ]; then + BBPATH=/system/xbin/busybox +else + BBPATH=$MAGISKLOC/busybox +fi alias cat="$BBPATH cat" alias grep="$BBPATH grep" alias printf="$BBPATH printf" -alias resetprop="$MAGISKLOC/magisk resetprop" +if [ -z "$(echo $PATH | grep /sbin:)" ]; then + alias resetprop="$MAGISKLOC/magisk resetprop" +fi alias sed="$BBPATH sed" alias sort="$BBPATH sort" alias tr="$BBPATH tr" @@ -165,7 +175,7 @@ orig_check() { ORIGLOAD=0 for PROPTYPE in $PROPSTMPLIST; do PROP=$(get_prop_type $PROPTYPE) - ORIGPROP=$(echo "FILE${PROP}" | tr '[:lower:]' '[:upper:]') + ORIGPROP=$(echo "ORIG${PROP}" | tr '[:lower:]' '[:upper:]') ORIGVALUE=$(get_file_value $LATEFILE "${ORIGPROP}=") if [ "$ORIGVALUE" ]; then ORIGLOAD=1 @@ -186,44 +196,28 @@ script_ran_check() { # Currently set values curr_values() { - CURRDEBUGGABLE=$(resetprop ro.debuggable) - CURRSECURE=$(resetprop ro.secure) - CURRTYPE=$(resetprop ro.build.type) - CURRTAGS=$(resetprop ro.build.tags) - CURRSELINUX=$(resetprop ro.build.selinux) - CURRFINGERPRINT=$(resetprop ro.build.fingerprint) + CURRDEBUGGABLE=$(resetprop -v ro.debuggable) 2>> $LOGFILE + CURRSECURE=$(resetprop -v ro.secure) 2>> $LOGFILE + CURRTYPE=$(resetprop -v ro.build.type) 2>> $LOGFILE + CURRTAGS=$(resetprop -v ro.build.tags) 2>> $LOGFILE + CURRSELINUX=$(resetprop -v ro.build.selinux) 2>> $LOGFILE + CURRFINGERPRINT=$(resetprop -v ro.build.fingerprint) 2>> $LOGFILE if [ -z "$CURRFINGERPRINT" ]; then - CURRFINGERPRINT=$(resetprop ro.bootimage.build.fingerprint) + CURRFINGERPRINT=$(resetprop -v ro.bootimage.build.fingerprint) 2>> $LOGFILE if [ -z "$CURRFINGERPRINT" ]; then - CURRFINGERPRINT=$(resetprop ro.vendor.build.fingerprint) + CURRFINGERPRINT=$(resetprop -v ro.vendor.build.fingerprint) 2>> $LOGFILE fi fi } -# Prop file values -file_values() { - FILEDEBUGGABLE=$(resetprop ro.debuggable) - FILESECURE=$(resetprop ro.secure) - FILETYPE=$(resetprop ro.build.type) - FILETAGS=$(resetprop ro.build.tags) - FILESELINUX=$(resetprop ro.build.selinux) - FILEFINGERPRINT=$(resetprop ro.build.fingerprint) - if [ -z "$FILEFINGERPRINT" ]; then - FILEFINGERPRINT=$(resetprop ro.bootimage.build.fingerprint) - if [ -z "$FILEFINGERPRINT" ]; then - FILEFINGERPRINT=$(resetprop ro.vendor.build.fingerprint) - fi - fi -} - -# Latefile values -latefile_values() { - LATEFILEDEBUGGABLE=$(get_file_value $LATEFILE "FILEDEBUGGABLE=") - LATEFILESECURE=$(get_file_value $LATEFILE "FILESECURE=") - LATEFILETYPE=$(get_file_value $LATEFILE "FILETYPE=") - LATEFILETAGS=$(get_file_value $LATEFILE "FILETAGS=") - LATEFILESELINUX=$(get_file_value $LATEFILE "FILESELINUX=") - LATEFILEFINGERPRINT=$(get_file_value $LATEFILE "FILEFINGERPRINT=") +# Original values +orig_values() { + ORIGDEBUGGABLE=$(get_file_value $LATEFILE "ORIGDEBUGGABLE=") + ORIGSECURE=$(get_file_value $LATEFILE "ORIGSECURE=") + ORIGTYPE=$(get_file_value $LATEFILE "ORIGTYPE=") + ORIGTAGS=$(get_file_value $LATEFILE "ORIGTAGS=") + ORIGSELINUX=$(get_file_value $LATEFILE "ORIGSELINUX=") + ORIGFINGERPRINT=$(get_file_value $LATEFILE "ORIGFINGERPRINT=") } # Module values @@ -241,10 +235,8 @@ module_values() { all_values() { # Currently set values curr_values - # Prop file values - file_values - # Latefile values - latefile_values + # Original values + orig_values # Module values module_values } @@ -300,7 +292,7 @@ orig_safe() { replace_fn FILESAFE 0 1 $LATEFILE for V in $PROPSLIST; do PROP=$(get_prop_type $V) - FILEPROP=$(echo "FILE${PROP}" | tr '[:lower:]' '[:upper:]') + FILEPROP=$(echo "CURR${PROP}" | tr '[:lower:]' '[:upper:]') FILEVALUE=$(eval "echo \$$FILEPROP") log_handler "Checking $FILEPROP=$FILEVALUE" safe_props $V $FILEVALUE @@ -544,7 +536,7 @@ edit_prop_files() { else # Checking if the device fingerprint is set by the module if [ "$(get_file_value $LATEFILE "FINGERPRINTENB=")" == 1 ] && [ "$(get_file_value $LATEFILE "PRINTEDIT=")" == 1 ]; then - if [ "$(cat /system/build.prop | grep "$FILEFINGERPRINT")" ]; then + if [ "$(cat /system/build.prop | grep "$ORIGFINGERPRINT")" ]; then log_handler "Enabling prop file editing for device fingerprint." replace_fn SETFINGERPRINT "false" "true" $LATEFILE fi @@ -610,7 +602,7 @@ change_prop_file() { for ITEM in $FNLIST; do PROP=$(get_prop_type $ITEM) MODULEPROP=$(echo "MODULE${PROP}" | tr '[:lower:]' '[:upper:]') - FILEPROP=$(echo "FILE${PROP}" | tr '[:lower:]' '[:upper:]') + FILEPROP=$(echo "ORIG${PROP}" | tr '[:lower:]' '[:upper:]') SETPROP=$(echo "SET${PROP}" | tr '[:lower:]' '[:upper:]') if [ "$(eval "echo \$$MODULEPROP")" ]; then SEDVAR="$(eval "echo \$$MODULEPROP")" @@ -752,10 +744,11 @@ custom_edit() { if [ "$(get_file_value $LATEFILE "CUSTOMEDIT=")" == 1 ]; then log_handler "Writing custom props." TMPLST="$(get_file_value $LATEFILE "CUSTOMPROPS=")" - for ITEM in $TMPLST; do + for ITEM in $TMPLST; do log_handler "Changing/writing $(get_eq_left "$ITEM")." + TMPITEM=$( echo $(get_eq_right "$ITEM") | sed 's|_sp_| |g') resetprop -v $(get_eq_left "$ITEM") 2>> $LOGFILE - resetprop -nv $(get_eq_left "$ITEM") $(get_eq_right "$ITEM") 2>> $LOGFILE + resetprop -nv $(get_eq_left "$ITEM") "$TMPITEM" 2>> $LOGFILE done fi } @@ -763,8 +756,9 @@ custom_edit() { # Set custom prop value set_custprop() { if [ "$2" ]; then + TMPVALUE=$(echo "$2" | sed 's| |_sp_|g') CURRCUSTPROPS=$(get_file_value $LATEFILE "CUSTOMPROPS=") - TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${2}" | sed 's|^[ \t]*||') + TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${TMPVALUE}" | sed 's|^[ \t]*||') SORTCUSTPROPS=$(echo $(printf '%s\n' $TMPCUSTPROPS | sort -u)) log_handler "Setting custom prop $1." @@ -793,12 +787,13 @@ reset_all_custprop() { # Reset custom prop value reset_custprop() { + TMPVALUE=$(echo "$2" | sed 's| |_sp_|g') CURRCUSTPROPS=$(get_file_value $LATEFILE "CUSTOMPROPS=") - log_handler "Resetting custom props $1." - TMPCUSTPROPS=$(echo $CURRCUSTPROPS | sed "s|${1}=${2}||" | tr -s " " | sed 's|^[ \t]*||') + log_handler "Resetting custom prop $1." + TMPCUSTPROPS=$(echo $CURRCUSTPROPS | sed "s|${1}=${TMPVALUE}||" | tr -s " " | sed 's|^[ \t]*||') - # Removing all custom props + # Updating custom props string replace_fn CUSTOMPROPS "\"$CURRCUSTPROPS\"" "\"$TMPCUSTPROPS\"" $LATEFILE CURRCUSTPROPS=$(get_file_value $LATEFILE "CUSTOMPROPS=") if [ -z "$CURRCUSTPROPS" ]; then diff --git a/config.sh b/config.sh index 022e0bb..22928d0 100644 --- a/config.sh +++ b/config.sh @@ -129,7 +129,11 @@ if [ -f "$LATEFILE" ]; then else FILEV=0 fi -BBPATH=/data/adb/magisk/busybox +if [ -d "$IMGPATH/busybox-ndk" ]; then + BBPATH=$(find $IMGPATH/busybox-ndk -name 'busybox') +else + BBPATH=/data/adb/magisk/busybox +fi $BOOTMODE && alias grep="$BBPATH grep" $BOOTMODE && alias sed="$BBPATH sed" $BOOTMODE && alias tr="$BBPATH tr" diff --git a/module.prop b/module.prop index 237bb30..2f83d94 100644 --- a/module.prop +++ b/module.prop @@ -1,7 +1,7 @@ id=MagiskHidePropsConf name=MagiskHide Props Config -version=v2.2.1-v17 -versionCode=14 +version=v2.2.2-v18 +versionCode=15 author=Didgeridoohan description=Change your device's fingerprint, to pass SafetyNet's CTS Profile check. Edit prop files for better root hiding. Set/reset prop values set by MagiskHide. Change any prop values easily. minMagisk=1500 diff --git a/system/binpath/props b/system/binpath/props index 8e974b6..e4698fa 100644 Binary files a/system/binpath/props and b/system/binpath/props differ