mirror of
https://github.com/pi-hole/pi-hole.git
synced 2024-11-15 02:42:58 +00:00
Check for compression onyl once and print result
Signed-off-by: Christian König <ckoenig@posteo.de>
This commit is contained in:
parent
79ff21a2fe
commit
27399a762a
1 changed files with 14 additions and 13 deletions
27
gravity.sh
27
gravity.sh
|
@ -336,7 +336,7 @@ gravity_DownloadBlocklists() {
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local url domain agent cmd_ext str target
|
local url domain agent cmd_ext str target compression
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Prepare new gravity database
|
# Prepare new gravity database
|
||||||
|
@ -355,6 +355,16 @@ gravity_DownloadBlocklists() {
|
||||||
|
|
||||||
target="$(mktemp -p "/tmp" --suffix=".gravity")"
|
target="$(mktemp -p "/tmp" --suffix=".gravity")"
|
||||||
|
|
||||||
|
# Use compression to reduce the amount of data that is transfered
|
||||||
|
# between the Pi-hole and the ad list provider. Use this feature
|
||||||
|
# only if it is supported by the locally available version of curl
|
||||||
|
if curl -V | grep -q "Features:.* libz"; then
|
||||||
|
compression="--compressed"
|
||||||
|
echo -e " ${INFO} Using libz compression\n"
|
||||||
|
else
|
||||||
|
compression=""
|
||||||
|
echo -e " ${INFO} Libz compression not available\n"
|
||||||
|
fi
|
||||||
# Loop through $sources and download each one
|
# Loop through $sources and download each one
|
||||||
for ((i = 0; i < "${#sources[@]}"; i++)); do
|
for ((i = 0; i < "${#sources[@]}"; i++)); do
|
||||||
url="${sources[$i]}"
|
url="${sources[$i]}"
|
||||||
|
@ -381,7 +391,7 @@ gravity_DownloadBlocklists() {
|
||||||
if [[ "${url}" =~ ${regex} ]]; then
|
if [[ "${url}" =~ ${regex} ]]; then
|
||||||
echo -e " ${CROSS} Invalid Target"
|
echo -e " ${CROSS} Invalid Target"
|
||||||
else
|
else
|
||||||
gravity_DownloadBlocklistFromUrl "${url}" "${cmd_ext}" "${agent}" "${sourceIDs[$i]}" "${saveLocation}" "${target}"
|
gravity_DownloadBlocklistFromUrl "${url}" "${cmd_ext}" "${agent}" "${sourceIDs[$i]}" "${saveLocation}" "${target}" "${compression}"
|
||||||
fi
|
fi
|
||||||
echo ""
|
echo ""
|
||||||
done
|
done
|
||||||
|
@ -456,8 +466,8 @@ parseList() {
|
||||||
|
|
||||||
# Download specified URL and perform checks on HTTP status and file content
|
# Download specified URL and perform checks on HTTP status and file content
|
||||||
gravity_DownloadBlocklistFromUrl() {
|
gravity_DownloadBlocklistFromUrl() {
|
||||||
local url="${1}" cmd_ext="${2}" agent="${3}" adlistID="${4}" saveLocation="${5}" target="${6}"
|
local url="${1}" cmd_ext="${2}" agent="${3}" adlistID="${4}" saveLocation="${5}" target="${6}" compression="${7}"
|
||||||
local heisenbergCompensator="" patternBuffer str httpCode success="" compression
|
local heisenbergCompensator="" patternBuffer str httpCode success=""
|
||||||
|
|
||||||
# Create temp file to store content on disk instead of RAM
|
# Create temp file to store content on disk instead of RAM
|
||||||
patternBuffer=$(mktemp -p "/tmp" --suffix=".phgpb")
|
patternBuffer=$(mktemp -p "/tmp" --suffix=".phgpb")
|
||||||
|
@ -506,15 +516,6 @@ gravity_DownloadBlocklistFromUrl() {
|
||||||
cmd_ext="--resolve $domain:$port:$ip $cmd_ext"
|
cmd_ext="--resolve $domain:$port:$ip $cmd_ext"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Use compression to reduce the amount of data that is transfered
|
|
||||||
# between the Pi-hole and the ad list provider. Use this feature
|
|
||||||
# only if it is supported by the locally available version of curl
|
|
||||||
if curl -V | grep -q "Features:.* libz"; then
|
|
||||||
compression="--compressed"
|
|
||||||
else
|
|
||||||
compression=""
|
|
||||||
fi
|
|
||||||
|
|
||||||
# shellcheck disable=SC2086
|
# shellcheck disable=SC2086
|
||||||
httpCode=$(curl -s -L ${compression} ${cmd_ext} ${heisenbergCompensator} -w "%{http_code}" -A "${agent}" "${url}" -o "${patternBuffer}" 2> /dev/null)
|
httpCode=$(curl -s -L ${compression} ${cmd_ext} ${heisenbergCompensator} -w "%{http_code}" -A "${agent}" "${url}" -o "${patternBuffer}" 2> /dev/null)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue