mirror of
https://github.com/pi-hole/pi-hole.git
synced 2024-11-15 02:42:58 +00:00
On modification of lists, we should send real-time signal 0 instead of SIGHUP. This also preserves the DNS cache of not-blocked domains.
Signed-off-by: DL6ER <dl6er@dl6er.de>
This commit is contained in:
parent
3231e5c3ba
commit
69a909fc4c
2 changed files with 12 additions and 4 deletions
|
@ -257,5 +257,5 @@ echo "DONE"
|
|||
fi
|
||||
|
||||
if [[ "${reload}" != false ]]; then
|
||||
pihole restartdns reload
|
||||
pihole restartdns reload-lists
|
||||
fi
|
||||
|
|
14
pihole
14
pihole
|
@ -105,17 +105,25 @@ restartDNS() {
|
|||
svcOption="${1:-restart}"
|
||||
|
||||
# Determine if we should reload or restart
|
||||
if [[ "${svcOption}" =~ "reload" ]]; then
|
||||
# Reload has been requested
|
||||
if [[ "${svcOption}" =~ "reload-lists" ]]; then
|
||||
# Reloading of the lists has been requested
|
||||
# Note: This will NOT re-read any *.conf files
|
||||
# Note 2: We cannot use killall here as it does
|
||||
# not know about real-time signals
|
||||
svc="kill -SIGRTMIN $(pidof ${resolver})"
|
||||
str="Reloading DNS lists"
|
||||
elif [[ "${svcOption}" =~ "reload" ]]; then
|
||||
# Reloading of the DNS cache has been requested
|
||||
# Note: This will NOT re-read any *.conf files
|
||||
svc="killall -s SIGHUP ${resolver}"
|
||||
str="Flushing DNS cache"
|
||||
else
|
||||
# A full restart has been requested
|
||||
svc="service ${resolver} restart"
|
||||
str="Restarting DNS server"
|
||||
fi
|
||||
|
||||
# Print output to Terminal, but not to Web Admin
|
||||
str="${svcOption^}ing DNS service"
|
||||
[[ -t 1 ]] && echo -ne " ${INFO} ${str}..."
|
||||
|
||||
output=$( { ${svc}; } 2>&1 )
|
||||
|
|
Loading…
Reference in a new issue