updated option.sh

updated option.sh
This commit is contained in:
George Daniel 2019-06-13 08:43:35 +00:00 committed by GitHub
parent 098dcc51d0
commit cf72bf0e6c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 13 additions and 76 deletions

View File

@ -1,85 +1,22 @@
keytest() {
ui_print " - Vol Key Test -"
ui_print " Press Vol Up:"
(/system/bin/getevent -lc 1 2>&1 | /system/bin/grep VOLUME | /system/bin/grep " DOWN" > $TMPDIR/events) || return 1
return 0
}
chooseport() {
#note from chainfire @xda-developers: getevent behaves weird when piped, and busybox grep likes that even less than toolbox/toybox grep
while (true); do
/system/bin/getevent -lc 1 2>&1 | /system/bin/grep VOLUME | /system/bin/grep " DOWN" > $TMPDIR/events
if (`cat $TMPDIR/events 2>/dev/null | /system/bin/grep VOLUME >/dev/null`); then
break
fi
done
if (`cat $TMPDIR/events 2>/dev/null | /system/bin/grep VOLUMEUP >/dev/null`); then
return 0
else
return 1
fi
}
chooseportold() {
# Calling it first time detects previous input. Calling it second time will do what we want
$KEYCHECK
$KEYCHECK
SEL=$?
if [ "$1" == "UP" ]; then
UP=$SEL
elif [ "$1" == "DOWN" ]; then
DOWN=$SEL
elif [ $SEL -eq $UP ]; then
return 0
elif [ $SEL -eq $DOWN ]; then
return 1
else
ui_print " Vol key not detected!"
abort " Use name change method in TWRP"
fi
}
# Keycheck binary by someone755 @Github, idea for code below by Zappo @xda-developers
KEYCHECK=$TMPDIR/keycheck
chmod 755 $KEYCHECK
if keytest; then
FUNCTION=chooseport
else
FUNCTION=chooseportold
ui_print " ! Legacy device detected! Using old keycheck method"
ui_print " "
ui_print "- Vol Key Programming -"
ui_print " Press Vol Up Again:"
$FUNCTION "UP"
ui_print " Press Vol Down"
$FUNCTION "DOWN"
fi
ui_print " "
ui_print " Vol+ = Replace previous config (mandatory for first install)"
ui_print " "
ui_print " Vol- = Use previous config"
ui_print " "
CONFIG_FILE=/data/media/0/dnscrypt-proxy/dnscrypt-proxy.toml CONFIG_FILE=/data/media/0/dnscrypt-proxy/dnscrypt-proxy.toml
if $FUNCTION; then if [ -f "$CONFIG_FILE" ]; then
ui_print "Replace old config"
ui_print " " # ui_print "* Backing up config file"
cp -af /data/media/0/dnscrypt-proxy/example-dnscrypt-proxy.toml $CONFIG_FILE # cp -afv $CONFIG_FILE $TMPDIR
# ui_print "* Restoring config files"
# cp -af $TMPDIR/dnscrypt-proxy.toml $CONFIG_FILE
else
cp -afv /data/media/0/dnscrypt-proxy/example-dnscrypt-proxy.toml $CONFIG_FILE
sed -i -e 's/127.0.0.1:53/127.0.0.1:5354/g' $CONFIG_FILE sed -i -e 's/127.0.0.1:53/127.0.0.1:5354/g' $CONFIG_FILE
sed -i -e 's/\[::1\]:53/\[::1\]:5354/g' $CONFIG_FILE sed -i -e 's/\[::1\]:53/\[::1\]:5354/g' $CONFIG_FILE
else
if [ -f "$CONFIG_FILE" ]; then
ui_print "* Backing up config file"
cp -af $CONFIG_FILE $TMPDIR
ui_print "* Restoring config files"
cp -af $TMPDIR/dnscrypt-proxy.toml $CONFIG_FILE
else
abort "First install have to choose replace mode"
fi fi
fi
# let dnscrypt-proxy do its job only. Let Auto-redirection be done by some other application. # let dnscrypt-proxy do its job only. Let Auto-redirection be done by some other application.
# ui_print " " # ui_print " "
# ui_print " Vol+ = Auto redirect DNS request with iptables" # ui_print " Vol+ = Auto redirect DNS request with iptables"