This script started a fresh download every time it was called,
which is unnecessary.
The check to skip the download did not work because it was
looking for the old data format.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
#!/bin/bash
-# Get the GeoIP database if no one exists yet.
+# Get the GeoIP database if no one exists yet
-DIR="/usr/share/xt_geoip/*"
+database_exists() {
+ local file
+ for file in /usr/share/xt_geoip/*.iv4; do
+ [ -e "${file}" ] && return 0
+ done
-found=false
-
-# Check if the directory contains any data.
-for i in $DIR; do
- # Ignore "." and ".."
- if [ -d "$i" ]; then
- found=true
- break
- fi
-done
+ # Does not exist
+ return 1
+}
# Download ruleset if none has been found.
-if ! ${found}; then
+if ! database_exists; then
/usr/local/bin/xt_geoip_update >/dev/null 2>&1 &
fi