mirror of
https://github.com/pi-hole/pi-hole.git
synced 2025-07-31 01:24:17 +02:00
Use 'true'/'false' strings instead of 0/1 integers for boolean root user check in pihole command (#6351)
This commit is contained in:
commit
a9680db218
65
pihole
65
pihole
@ -157,6 +157,7 @@ uninstallFunc() {
|
|||||||
|
|
||||||
versionFunc() {
|
versionFunc() {
|
||||||
exec "${PI_HOLE_SCRIPT_DIR}"/version.sh
|
exec "${PI_HOLE_SCRIPT_DIR}"/version.sh
|
||||||
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
reloadDNS() {
|
reloadDNS() {
|
||||||
@ -277,6 +278,7 @@ Time:
|
|||||||
LogoutAPI
|
LogoutAPI
|
||||||
|
|
||||||
echo -e "${OVER} ${TICK} ${str}"
|
echo -e "${OVER} ${TICK} ${str}"
|
||||||
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
piholeLogging() {
|
piholeLogging() {
|
||||||
@ -542,7 +544,7 @@ if [[ $# = 0 ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# functions that do not require sudo power
|
# functions that do not require sudo power
|
||||||
need_root=1
|
need_root=
|
||||||
case "${1}" in
|
case "${1}" in
|
||||||
"-h" | "help" | "--help" ) helpFunc;;
|
"-h" | "help" | "--help" ) helpFunc;;
|
||||||
"-v" | "version" ) versionFunc;;
|
"-v" | "version" ) versionFunc;;
|
||||||
@ -550,32 +552,32 @@ case "${1}" in
|
|||||||
"-q" | "query" ) queryFunc "$@";;
|
"-q" | "query" ) queryFunc "$@";;
|
||||||
"status" ) statusFunc "$2";;
|
"status" ) statusFunc "$2";;
|
||||||
"tricorder" ) tricorderFunc;;
|
"tricorder" ) tricorderFunc;;
|
||||||
|
"allow" | "allowlist" ) listFunc "$@";;
|
||||||
|
"deny" | "denylist" ) listFunc "$@";;
|
||||||
|
"--wild" | "wildcard" ) listFunc "$@";;
|
||||||
|
"--regex" | "regex" ) listFunc "$@";;
|
||||||
|
"--allow-regex" | "allow-regex" ) listFunc "$@";;
|
||||||
|
"--allow-wild" | "allow-wild" ) listFunc "$@";;
|
||||||
|
"enable" ) piholeEnable true "$2";;
|
||||||
|
"disable" ) piholeEnable false "$2";;
|
||||||
|
"api" ) shift; apiFunc "$@"; exit 0;;
|
||||||
|
|
||||||
# we need to add all arguments that require sudo power to not trigger the * argument
|
# we need to add all arguments that require sudo power to not trigger the * argument
|
||||||
"allow" | "allowlist" ) need_root=0;;
|
"-f" | "flush" ) need_root=true;;
|
||||||
"deny" | "denylist" ) need_root=0;;
|
"-up" | "updatePihole" ) need_root=true;;
|
||||||
"--wild" | "wildcard" ) need_root=0;;
|
"-r" | "repair" ) need_root=true;;
|
||||||
"--regex" | "regex" ) need_root=0;;
|
"-l" | "logging" ) need_root=true;;
|
||||||
"--allow-regex" | "allow-regex" ) need_root=0;;
|
"uninstall" ) need_root=true;;
|
||||||
"--allow-wild" | "allow-wild" ) need_root=0;;
|
"-d" | "debug" ) need_root=true;;
|
||||||
"-f" | "flush" ) ;;
|
"-g" | "updateGravity" ) need_root=true;;
|
||||||
"-up" | "updatePihole" ) ;;
|
"reloaddns" ) need_root=true;;
|
||||||
"-r" | "repair" ) ;;
|
"reloadlists" ) need_root=true;;
|
||||||
"-l" | "logging" ) ;;
|
"setpassword" ) need_root=true;;
|
||||||
"uninstall" ) ;;
|
"checkout" ) need_root=true;;
|
||||||
"enable" ) need_root=0;;
|
"updatechecker" ) need_root=true;;
|
||||||
"disable" ) need_root=0;;
|
"arpflush" ) need_root=true;; # Deprecated, use networkflush instead
|
||||||
"-d" | "debug" ) ;;
|
"networkflush" ) need_root=true;;
|
||||||
"-g" | "updateGravity" ) ;;
|
"-t" | "tail" ) need_root=true;;
|
||||||
"reloaddns" ) ;;
|
|
||||||
"reloadlists" ) ;;
|
|
||||||
"setpassword" ) ;;
|
|
||||||
"checkout" ) ;;
|
|
||||||
"updatechecker" ) ;;
|
|
||||||
"arpflush" ) ;; # Deprecated, use networkflush instead
|
|
||||||
"networkflush" ) ;;
|
|
||||||
"-t" | "tail" ) ;;
|
|
||||||
"api" ) need_root=0;;
|
|
||||||
* ) helpFunc;;
|
* ) helpFunc;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
@ -588,20 +590,14 @@ fi
|
|||||||
# Check if the current user is not root and if the command
|
# Check if the current user is not root and if the command
|
||||||
# requires root. If so, exit with an error message.
|
# requires root. If so, exit with an error message.
|
||||||
# Add an exception for the user "pihole" to allow the webserver running gravity
|
# Add an exception for the user "pihole" to allow the webserver running gravity
|
||||||
if [[ ( $EUID -ne 0 && ${USER} != "pihole" ) && need_root -eq 1 ]]; then
|
if [[ ( $EUID -ne 0 && ${USER} != "pihole" ) && -n "${need_root}" ]]; then
|
||||||
echo -e " ${CROSS} The Pi-hole command requires root privileges, try:"
|
echo -e " ${CROSS} This Pi-hole command requires root privileges, try:"
|
||||||
echo -e " ${COL_GREEN}sudo pihole $*${COL_NC}"
|
echo -e " ${COL_GREEN}sudo pihole $*${COL_NC}"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Handle redirecting to specific functions based on arguments
|
# Handle redirecting to specific functions based on arguments
|
||||||
case "${1}" in
|
case "${1}" in
|
||||||
"allow" | "allowlist" ) listFunc "$@";;
|
|
||||||
"deny" | "denylist" ) listFunc "$@";;
|
|
||||||
"--wild" | "wildcard" ) listFunc "$@";;
|
|
||||||
"--regex" | "regex" ) listFunc "$@";;
|
|
||||||
"--allow-regex" | "allow-regex" ) listFunc "$@";;
|
|
||||||
"--allow-wild" | "allow-wild" ) listFunc "$@";;
|
|
||||||
"-d" | "debug" ) debugFunc "$@";;
|
"-d" | "debug" ) debugFunc "$@";;
|
||||||
"-f" | "flush" ) flushFunc "$@";;
|
"-f" | "flush" ) flushFunc "$@";;
|
||||||
"-up" | "updatePihole" ) updatePiholeFunc "$@";;
|
"-up" | "updatePihole" ) updatePiholeFunc "$@";;
|
||||||
@ -609,8 +605,6 @@ case "${1}" in
|
|||||||
"-g" | "updateGravity" ) updateGravityFunc "$@";;
|
"-g" | "updateGravity" ) updateGravityFunc "$@";;
|
||||||
"-l" | "logging" ) piholeLogging "$@";;
|
"-l" | "logging" ) piholeLogging "$@";;
|
||||||
"uninstall" ) uninstallFunc;;
|
"uninstall" ) uninstallFunc;;
|
||||||
"enable" ) piholeEnable true "$2";;
|
|
||||||
"disable" ) piholeEnable false "$2";;
|
|
||||||
"reloaddns" ) reloadDNS "reload";;
|
"reloaddns" ) reloadDNS "reload";;
|
||||||
"reloadlists" ) reloadDNS "reload-lists";;
|
"reloadlists" ) reloadDNS "reload-lists";;
|
||||||
"setpassword" ) SetWebPassword "$@";;
|
"setpassword" ) SetWebPassword "$@";;
|
||||||
@ -619,6 +613,5 @@ case "${1}" in
|
|||||||
"arpflush" ) arpFunc "$@";; # Deprecated, use networkflush instead
|
"arpflush" ) arpFunc "$@";; # Deprecated, use networkflush instead
|
||||||
"networkflush" ) networkFlush "$@";;
|
"networkflush" ) networkFlush "$@";;
|
||||||
"-t" | "tail" ) tailFunc "$2";;
|
"-t" | "tail" ) tailFunc "$2";;
|
||||||
"api" ) shift; apiFunc "$@";;
|
|
||||||
* ) helpFunc;;
|
* ) helpFunc;;
|
||||||
esac
|
esac
|
||||||
|
Loading…
x
Reference in New Issue
Block a user