mirror of
https://github.com/Magisk-Modules-Repo/MagiskHidePropsConf.git
synced 2024-07-01 02:18:44 +00:00
v2.1.5
This commit is contained in:
parent
e845f17bbc
commit
1e69ecab7f
|
@ -87,7 +87,7 @@ print_modname
|
|||
|
||||
# Please leave this message in your flashable zip for credits :)
|
||||
ui_print "******************************"
|
||||
ui_print "Powered by Magisk (@topjohnwu)"
|
||||
ui_print "Powered by Magisk (|topjohnwu)"
|
||||
ui_print "******************************"
|
||||
|
||||
##########################################################################################
|
||||
|
|
12
README.md
12
README.md
|
@ -67,7 +67,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 - v11_**
|
||||
**_Current fingerprints list version - v12_**
|
||||
|
||||
|
||||
## Improved root hiding - Editing build.prop and default.prop
|
||||
|
@ -129,6 +129,11 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log"
|
|||
|
||||
|
||||
## Changelog
|
||||
### v2.1.5
|
||||
- Show what device the currently set fingerprint is from.
|
||||
- Fixed,updated and added a bunch of fingerprints, list v12.
|
||||
- Minor updates and improvements.
|
||||
|
||||
### v2.1.4
|
||||
- Fixed improved hiding.
|
||||
- Fixed using the configuration file on a clean install.
|
||||
|
@ -187,7 +192,7 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log"
|
|||
|
||||
|
||||
## Current fingerprints list
|
||||
### List v11
|
||||
### List v12
|
||||
- Google Nexus 4 (5.1.1)
|
||||
- Google Nexus 5 (6.0.1)
|
||||
- Google Nexus 6 (7.1.1)
|
||||
|
@ -206,11 +211,13 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log"
|
|||
- Motorola Moto G4 (7.0)
|
||||
- Motorola Moto G5 (7.0)
|
||||
- Motorola Moto G5 Plus (7.0)
|
||||
- Motorola Moto X4 (8.0.0)
|
||||
- Nvidia Shield K1 (7.0)
|
||||
- OnePlus 3T (8.0.0)
|
||||
- OnePlus 5T (7.1.1)
|
||||
- OnePlus 5T (8.0.0)
|
||||
- Samsung Galaxy Grand Prime (5.0.2)
|
||||
- Samsung Galaxy J5 Prime (7.0)
|
||||
- Samsung Galaxy Note 3 (7.1.1)
|
||||
- Samsung Galaxy Note 4 (6.0.1)
|
||||
- Samsung Galaxy Note 5 (7.0)
|
||||
|
@ -218,6 +225,7 @@ If you have the latest beta release of Magisk installed, the "magisk_debug.log"
|
|||
- Samsung Galaxy S6 (5.0.2)
|
||||
- Samsung Galaxy S7 (7.0)
|
||||
- Samsung Galaxy S7 Edge (7.0)
|
||||
- Samsung Galaxy S7 Edge (8.0.0)
|
||||
- Samsung Galaxy S8 Plus (7.0)
|
||||
- Samsung Galaxy S8 Plus (8.0.0)
|
||||
- Sony Xperia X (8.0.0)
|
||||
|
|
|
@ -89,7 +89,7 @@ if [ "$(get_file_value $LATEFILE "FILESAFE=")" == 0 ]; then
|
|||
if [ "$MODULEFINGERPRINT" ] && [ "$(get_file_value $LATEFILE "SETFINGERPRINT=")" == "true" ]; then
|
||||
PRINTSTMP="$(cat /system/build.prop | grep "$FILEFINGERPRINT")"
|
||||
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"
|
||||
replace_fn $(get_eq_left "$ITEM") $(get_eq_right "$ITEM") $MODULEFINGERPRINT $MODPATH/system/build.prop && log_handler "$(get_eq_left "$ITEM")=$MODULEFINGERPRINT"
|
||||
done
|
||||
fi
|
||||
else
|
||||
|
|
|
@ -3,13 +3,14 @@
|
|||
# MagiskHide Props Config
|
||||
# By Didgeridoohan @ XDA Developers
|
||||
|
||||
PRINTSV=11
|
||||
PRINTSV=12
|
||||
PRINTSTRANSF=1
|
||||
|
||||
PRINTSFILE=/sdcard/printslist
|
||||
|
||||
# Certified fingerprints
|
||||
PRINTSLIST="
|
||||
Asus Zenfone 2 Laser (6.0.1)=asus/WW_Z00L/ASUS_Z00L_63:6.0.1/MMB29P/WW_user_21.40.1220.2179_20170803:user/release-keys
|
||||
Google Nexus 4 (5.1.1)=google/occam/mako:5.1.1/LMY48T/2237560:user/release-keys
|
||||
Google Nexus 5 (6.0.1)=google/hammerhead/hammerhead:6.0.1/M4B30Z/3437181:user/release-keys
|
||||
Google Nexus 6 (7.1.1)=google/shamu/shamu:7.1.1/N6F27M/4299435:user/release-keys
|
||||
|
@ -28,26 +29,31 @@ Motorola Moto E4 (7.1.1)=motorola/sperry_sprint/sperry:7.1.1/NCQ26.69-64/68:user
|
|||
Motorola Moto G4 (7.0)=motorola/athene/athene:7.0/NPJS25.93-14-13/3:user/release-keys
|
||||
Motorola Moto G5 (7.0)=motorola/cedric/cedric:7.0/NPPS25.137-15-11/11:user/release-keys
|
||||
Motorola Moto G5 Plus (7.0)=motorola/potter_n/potter_n:7.0/NPNS25.137-33-11/11:user/release-keys
|
||||
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
|
||||
Samsung Galaxy Grand Prime (5.0.2)=samsung/fortuna3gdtvvj/fortuna3gdtv:5.0.2/LRX22G/G530BTVJU1BPH4:user/release-keys
|
||||
Samsung Galaxy J5 Prime (7.0)=samsung/on5xeltejv/on5xelte:7.0/NRD90M/G570FXXU1BQI6:user/release-keys
|
||||
Samsung Galaxy Note 3 (7.1.1)=samsung/greatltexx/greatlte:7.1.1/NMF26X/N950FXXU1AQHA:user/release-keys
|
||||
Samsung Galaxy Note 4 (6.0.1)=samsung/trltexx/trlte:6.0.1/MMB29M/N910FXXS1DQH9:user/release-keys
|
||||
Samsung Galaxy Note 5 (7.0)=samsung/nobleltejv/noblelte:7.0/NRD90M/N920CXXU3CQH6:user/release-keys
|
||||
Samsung Galaxy S4 (5.0.1)=samsung/jfltexx/jflte:5.0.1/LRX22C/I9505XXUHPF4:user/release-keys
|
||||
Samsung Galaxy S6 (5.0.2)=samsung/zerofltexx/zeroflte:5.0.2/LRX22G/G920FXXU1AOD4:user/release-keys
|
||||
Samsung Galaxy S6 (5.0.2)=samsung/zerofltexx/zeroflte:5.0.2/LRX22G/G920FXXU1AOD4:user/release-keys
|
||||
Samsung Galaxy S7 (7.0)=samsung/heroltexx/herolte:7.0/NRD90M/G930FXXU2DRB6:user/release-keys
|
||||
Samsung Galaxy S7 Edge (7.0)=samsung/hero2ltexx/hero2lte:7.0/NRD90M/G935FXXU2DRB6: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
|
||||
Sony Xperia X Performance (8.0.0)=Sony/F8131/F8131:8.0.0/41.3.A.2.99/1455830589:user/release-keys
|
||||
Sony Xperia X (8.0.0)=Sony/F5121/F5121:8.0.0/34.4.A.2.32/1455699507:user/release-keys
|
||||
Sony Xperia X Performance (8.0.0)=Sony/F8131/F8131:8.0.0/41.3.A.2.99/1455830589:user/release-keys
|
||||
Sony Xperia XZ (8.0.0)=Sony/F8331/F8331:8.0.0/41.3.A.2.99/1455830589:user/release-keys
|
||||
Sony Xperia XZ1 Compact (8.0.0)=Sony/G8441/G8441:8.0.0/47.1.A.12.119/1601781803:user/release-keys
|
||||
Sony Xperia Z2 (6.0.1)=Sony/D6503/D6503:6.0.1/23.5.A.1.291/2769308465:user/release-keys
|
||||
Sony Xperia Z3 (6.0.1)=Sony/D6633/D6633:6.0.1/23.5.A.1.291/2769308465:user/release-keys
|
||||
Sony Xperia Z3 Tablet Compact (6.0.1)=Sony/SGP621/SGP621:6.0.1/23.5.A.1.291/3706784398:user/release-keys
|
||||
Sony Xperia Z3 Compact (6.0.1)=Sony/D5803/D5803:6.0.1/23.5.A.1.291/2769308465:user/release-keys
|
||||
Sony Xperia Z3 Tablet Compact (6.0.1)=Sony/SGP621/SGP621:6.0.1/23.5.A.1.291/3706784398:user/release-keys
|
||||
Sony Xperia Z5 (7.1.1)=Sony/E6603/E6603:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
||||
Sony Xperia Z5 Compact (7.1.1)=Sony/E5823/E5823:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
||||
Sony Xperia Z5 Dual (7.1.1)=Sony/E6633/E6633:7.1.1/32.4.A.1.54/3761073091:user/release-keys
|
||||
|
@ -57,7 +63,7 @@ Xiaomi Mi 5S (7.0)=Xiaomi/capricorn/capricorn:7.0/NRD90M/V9.2.1.0.NAGMIEK:user/r
|
|||
Xiaomi Mi 5S Plus (6.0.1)=Xiaomi/natrium/natrium:6.0.1/MXB48T/V8.5.2.0.MBGMIED:user/release-keys
|
||||
Xiaomi Mi 6 (7.1.1)=Xiaomi/sagit/sagit:7.1.1/NMF26X/V8.2.17.0.NCACNEC:user/release-keys
|
||||
Xiaomi Mi 6 (8.0.0)=Xiaomi/sagit/sagit:8.0.0/OPR1.170623.027/V9.2.3.0.OCAMIEK: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 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
|
||||
Xiaomi Redmi Note 4/4X (7.0)=xiaomi/mido/mido:7.0/NRD90M/V9.2.1.0.NCFMIEK:user/release-keys
|
||||
ZTE Axon 7 (7.1.1)=ZTE/P996A01_N/ailsa_ii:7.1.1/NMF26V/20171211.005949:user/release-keys
|
||||
|
|
|
@ -158,9 +158,9 @@ if [ -d "$MODPATH" ]; then
|
|||
if [ "$CUSTOMEDIT" == 1 ]; then
|
||||
log_handler "Writing custom props."
|
||||
for ITEM in $CUSTOMPROPS; do
|
||||
log_handler "Changing/writing $(get_eq_left $ITEM)."
|
||||
resetprop -v $(get_eq_left $ITEM) 2>> $LOGFILE
|
||||
resetprop -v $(get_eq_left $ITEM) $(get_eq_right $ITEM) 2>> $LOGFILE
|
||||
log_handler "Changing/writing $(get_eq_left "$ITEM")."
|
||||
resetprop -v $(get_eq_left "$ITEM") 2>> $LOGFILE
|
||||
resetprop -v $(get_eq_left "$ITEM") $(get_eq_right "$ITEM") 2>> $LOGFILE
|
||||
done
|
||||
fi
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ ro.vendor.build.fingerprint
|
|||
|
||||
# Finding file values
|
||||
get_file_value() {
|
||||
cat $1 | grep $2 | sed "s@.*${2}@@" | sed 's@\"@@g'
|
||||
cat $1 | grep $2 | sed "s|.*${2}||" | sed 's|\"||g'
|
||||
}
|
||||
|
||||
# Logs
|
||||
|
@ -109,32 +109,41 @@ menu_header() {
|
|||
|
||||
# Find prop type
|
||||
get_prop_type() {
|
||||
echo $1 | sed 's@.*\.@@'
|
||||
echo $1 | sed 's|.*\.||'
|
||||
}
|
||||
|
||||
# Get left side of =
|
||||
get_eq_left() {
|
||||
echo $1 | sed 's@=.*@@'
|
||||
echo $1 | sed 's|=.*||'
|
||||
}
|
||||
|
||||
# Get right side of =
|
||||
get_eq_right() {
|
||||
echo $1 | sed 's@.*=@@'
|
||||
echo $1 | sed 's|.*=||'
|
||||
}
|
||||
|
||||
# Get first word in string
|
||||
get_first() {
|
||||
case $1 in
|
||||
*\ *) echo $1 | sed 's@\ .*@@'
|
||||
*\ *) echo $1 | sed 's|\ .*||'
|
||||
;;
|
||||
*=*) get_eq_left $1
|
||||
*=*) get_eq_left "$1"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Get the device for current fingerprint
|
||||
get_device_used() {
|
||||
PRINTTMP=$(cat $MODPATH/prints.sh | grep "$1")
|
||||
if [ "$PRINTTMP" ]; then
|
||||
echo "${C}$(get_eq_left "$PRINTTMP" | sed "s| (.*||")${N}"
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
# Replace file values
|
||||
replace_fn() {
|
||||
sed -i "s@${1}=${2}@${1}=${3}@" $4
|
||||
sed -i "s|${1}=${2}|${1}=${3}|" $4
|
||||
}
|
||||
|
||||
# Updates placeholders
|
||||
|
@ -353,7 +362,7 @@ config_file() {
|
|||
reset_all_custprop "file"
|
||||
fi
|
||||
for ITEM in $CONFPROPS; do
|
||||
set_custprop "$(get_eq_left $ITEM)" "$(get_eq_right $ITEM)" "file"
|
||||
set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "file"
|
||||
done
|
||||
fi
|
||||
else
|
||||
|
@ -393,13 +402,16 @@ download_prints() {
|
|||
if [ -z "$LOGNAME" ]; then
|
||||
clear
|
||||
fi
|
||||
if [ "$1" == "dev" ]; then
|
||||
PRINTSWWW="https://www.didgeridoohan.com/MagiskHidePropsConfig/prints.sh"
|
||||
fi
|
||||
menu_header "Updating fingerprints list"
|
||||
echo ""
|
||||
log_print "Checking list version."
|
||||
wget -T 10 -O $PRINTSTMP $PRINTSWWW 2>> $LOGFILE
|
||||
if [ -f "$PRINTSTMP" ]; then
|
||||
LISTVERSION=$(get_file_value $PRINTSTMP "PRINTSV=")
|
||||
if [ "$LISTVERSION" -gt "$(get_file_value $PRINTSLOC "PRINTSV=")" ]; then
|
||||
if [ "$LISTVERSION" == "DEV" ] || [ "$LISTVERSION" -gt "$(get_file_value $PRINTSLOC "PRINTSV=")" ]; then
|
||||
if [ "$(get_file_value $PRINTSTMP "PRINTSTRANSF=")" -le "$(get_file_value $PRINTSLOC "PRINTSTRANSF=")" ]; then
|
||||
mv -f $PRINTSTMP $PRINTSLOC
|
||||
# Updates list version in module.prop
|
||||
|
@ -419,6 +431,9 @@ download_prints() {
|
|||
fi
|
||||
if [ "$1" == "manual" ]; then
|
||||
sleep 2
|
||||
elif [ "$1" == "dev" ]; then
|
||||
sleep 2
|
||||
exit_fn
|
||||
else
|
||||
sleep 0.5
|
||||
fi
|
||||
|
@ -575,8 +590,8 @@ change_prop_file() {
|
|||
SEDVAR="$(eval "echo \$$MODULEPROP")"
|
||||
else
|
||||
for P in $SAFELIST; do
|
||||
if [ "$(get_eq_left $P)" == "$ITEM" ]; then
|
||||
SEDVAR=$(get_eq_right $P)
|
||||
if [ "$(get_eq_left "$P")" == "$ITEM" ]; then
|
||||
SEDVAR=$(get_eq_right "$P")
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
@ -592,8 +607,8 @@ safe_props() {
|
|||
SAFE=""
|
||||
if [ "$2" ]; then
|
||||
for P in $SAFELIST; do
|
||||
if [ "$(get_eq_left $P)" == "$1" ]; then
|
||||
if [ "$2" == "$(get_eq_right $P)" ]; then
|
||||
if [ "$(get_eq_left "$P")" == "$1" ]; then
|
||||
if [ "$2" == "$(get_eq_right "$P")" ]; then
|
||||
SAFE=1
|
||||
else
|
||||
SAFE=0
|
||||
|
@ -710,7 +725,7 @@ reset_prop_all() {
|
|||
set_custprop() {
|
||||
if [ "$2" ]; then
|
||||
CURRCUSTPROPS=$(get_file_value $LATEFILE "CUSTOMPROPS=")
|
||||
TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${2}" | sed 's@^[ \t]*@@')
|
||||
TMPCUSTPROPS=$(echo "$CURRCUSTPROPS ${1}=${2}" | sed 's|^[ \t]*||')
|
||||
SORTCUSTPROPS=$(echo $(printf '%s\n' $TMPCUSTPROPS | sort -u))
|
||||
|
||||
log_handler "Setting custom prop $1."
|
||||
|
@ -742,7 +757,7 @@ reset_custprop() {
|
|||
CURRCUSTPROPS=$(get_file_value $LATEFILE "CUSTOMPROPS=")
|
||||
|
||||
log_handler "Resetting custom props $1."
|
||||
TMPCUSTPROPS=$(echo $CURRCUSTPROPS | sed "s@${1}=${2}@@" | tr -s " " | sed 's@^[ \t]*@@')
|
||||
TMPCUSTPROPS=$(echo $CURRCUSTPROPS | sed "s|${1}=${2}||" | tr -s " " | sed 's|^[ \t]*||')
|
||||
|
||||
# Removing all custom props
|
||||
replace_fn CUSTOMPROPS "\"$CURRCUSTPROPS\"" "\"$TMPCUSTPROPS\"" $LATEFILE
|
||||
|
|
10
config.sh
10
config.sh
|
@ -40,7 +40,7 @@ LATESTARTSERVICE=false
|
|||
# Set what you want to show when installing your mod
|
||||
|
||||
print_modname() {
|
||||
MODVERSION=$(echo $(get_file_value $INSTALLER/module.prop "version=") | sed 's@-.*@@')
|
||||
MODVERSION=$(echo $(get_file_value $INSTALLER/module.prop "version=") | sed 's|-.*||')
|
||||
ui_print "*******************************"
|
||||
ui_print " MagiskHide Props Config $MODVERSION"
|
||||
ui_print "*******************************"
|
||||
|
@ -103,7 +103,7 @@ set_permissions() {
|
|||
|
||||
# Finding file values
|
||||
get_file_value() {
|
||||
cat $1 | grep $2 | sed "s@.*$2@@" | sed 's@\"@@g'
|
||||
cat $1 | grep $2 | sed "s|.*$2||" | sed 's|\"||g'
|
||||
}
|
||||
|
||||
# Variables
|
||||
|
@ -203,7 +203,7 @@ script_placement() {
|
|||
SNEW=$(get_file_value $UPDATELATEFILE "${ITEM}=")
|
||||
if [ "$SOLD" ] && [ "$SOLD" != "$SNEW" ]; then
|
||||
log_handler "Setting ${ITEM} from ${SNEW} to ${SOLD}."
|
||||
sed -i "s@${ITEM}=${SNEW}@${ITEM}=${SOLD}@" $UPDATELATEFILE
|
||||
sed -i "s|${ITEM}=${SNEW}|${ITEM}=${SOLD}|" $UPDATELATEFILE
|
||||
fi
|
||||
done
|
||||
# Prop values
|
||||
|
@ -211,7 +211,7 @@ script_placement() {
|
|||
SOLD=$(get_file_value $LATEFILE "${ITEM}=")
|
||||
if [ "$SOLD" ]; then
|
||||
log_handler "Setting ${ITEM} to ${SOLD}."
|
||||
sed -i "s@${ITEM}=\"\"@${ITEM}=\"${SOLD}\"@" $UPDATELATEFILE
|
||||
sed -i "s|${ITEM}=\"\"|${ITEM}=\"${SOLD}\"|" $UPDATELATEFILE
|
||||
fi
|
||||
done
|
||||
# Prop and file edits
|
||||
|
@ -246,7 +246,7 @@ placeholder_update() {
|
|||
FILEVALUE=$(get_file_value $1 "$2=")
|
||||
log_handler "Checking for ${3} in ${1}. Current value is ${FILEVALUE}."
|
||||
case $FILEVALUE in
|
||||
*PLACEHOLDER*) sed -i "s@${2}=${3}@${2}=\"${4}\"@g" $1
|
||||
*PLACEHOLDER*) sed -i "s|${2}=${3}|${2}=\"${4}\"|g" $1
|
||||
log_handler "Placeholder ${3} updated to ${4} in ${1}."
|
||||
;;
|
||||
esac
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
id=MagiskHidePropsConf
|
||||
name=MagiskHide Props Config
|
||||
version=v2.1.4-v11
|
||||
versionCode=10
|
||||
version=v2.1.5-v12
|
||||
versionCode=11
|
||||
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
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user