summaryrefslogtreecommitdiff
path: root/sbin/e2guardian-update-shallalists
diff options
context:
space:
mode:
Diffstat (limited to 'sbin/e2guardian-update-shallalists')
-rwxr-xr-xsbin/e2guardian-update-shallalists50
1 files changed, 50 insertions, 0 deletions
diff --git a/sbin/e2guardian-update-shallalists b/sbin/e2guardian-update-shallalists
new file mode 100755
index 0000000..038167b
--- /dev/null
+++ b/sbin/e2guardian-update-shallalists
@@ -0,0 +1,50 @@
+#!/bin/bash
+
+set -e
+
+SHALLA_BLACKLIST_URL="http://www.shallalist.de/Downloads/shallalist.tar.gz"
+
+curl "$SHALLA_BLACKLIST_URL" 1> /var/lib/e2guardian/blacklists.tar.gz 2>/dev/null
+
+if [ -e /var/lib/e2guardian/.blacklists.new ]; then
+ rm -Rf /var/lib/e2guardian/.blacklists.new
+fi
+
+mkdir -p /var/lib/e2guardian/.blacklists.new
+
+cd /var/lib/e2guardian/.blacklists.new
+tar xzf /var/lib/e2guardian/blacklists.tar.gz
+
+mv BL/* .
+rmdir BL/
+
+cd - 1>/dev/null
+
+if [ -e /var/lib/e2guardian/blacklists.old ]; then
+ rm -Rf /var/lib/e2guardian/blacklists.old
+fi
+
+if [ -d /var/lib/e2guardian/blacklists ]; then
+ mv /var/lib/e2guardian/blacklists /var/lib/e2guardian/blacklists.old
+fi
+
+if [ ! -e /var/lib/e2guardian/blacklists ]; then
+ mv /var/lib/e2guardian/.blacklists.new /var/lib/e2guardian/blacklists
+
+ LANG=C date 1> /var/lib/e2guardian/last-updated.txt
+
+ chown root:root -Rf /var/lib/e2guardian/blacklists
+ chmod -Rf a+r /var/lib/e2guardian/blacklists
+ cd /var/lib/e2guardian/blacklists
+ find * -type d | while read dir; do
+ chmod a+x "${dir}"
+ done
+ cd - 1> /dev/null
+
+ invoke-rc.d e2guardian restart 1>/dev/null 2>/dev/null
+fi
+
+if [ -e /var/lib/e2guardian/blacklists.tar.gz ]; then
+ rm -f /var/lib/e2guardian/blacklists.tar.gz
+fi
+