From bcc5e80d21e8998c9f8f45a6163b67a4b18fc1b6 Mon Sep 17 00:00:00 2001
From: Bob Mottram <bob@freedombone.net>
Date: Mon, 26 Jun 2017 12:18:29 +0100
Subject: [PATCH] Refresh blocklist firewall after restore

---
 src/freedombone-restore-local  |  4 +++-
 src/freedombone-restore-remote |  4 +++-
 src/freedombone-utils-firewall | 10 ++++++++++
 3 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/src/freedombone-restore-local b/src/freedombone-restore-local
index 78c0132a8..bf69b77ca 100755
--- a/src/freedombone-restore-local
+++ b/src/freedombone-restore-local
@@ -13,7 +13,7 @@
 # License
 # =======
 #
-# Copyright (C) 2015-2016 Bob Mottram <bob@freedombone.net>
+# Copyright (C) 2015-2017 Bob Mottram <bob@freedombone.net>
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU Affero General Public License as published by
@@ -128,6 +128,8 @@ function restore_blocklist {
         fi
 
         rm -rf $temp_restore_dir
+
+        firewall_refresh_blocklist
     fi
 }
 
diff --git a/src/freedombone-restore-remote b/src/freedombone-restore-remote
index 1bf97979d..e48ef79c0 100755
--- a/src/freedombone-restore-remote
+++ b/src/freedombone-restore-remote
@@ -13,7 +13,7 @@
 # License
 # =======
 #
-# Copyright (C) 2015-2016 Bob Mottram <bob@freedombone.net>
+# Copyright (C) 2015-2017 Bob Mottram <bob@freedombone.net>
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU Affero General Public License as published by
@@ -120,6 +120,8 @@ function restore_blocklist {
         fi
 
         rm -rf $temp_restore_dir
+
+        firewall_refresh_blocklist
     fi
 }
 
diff --git a/src/freedombone-utils-firewall b/src/freedombone-utils-firewall
index 6b8b1b5e7..64c395ad3 100755
--- a/src/freedombone-utils-firewall
+++ b/src/freedombone-utils-firewall
@@ -491,6 +491,16 @@ function firewall_block_domain {
     fi
 }
 
+function firewall_refresh_blocklist {
+    if [ ! -f /root/${PROJECT_NAME}-firewall-domains.cfg ]; then
+        return
+    fi
+
+    while read blocked_domain; do
+        firewall_block_domain $blocked_domain
+    done </root/${PROJECT_NAME}-firewall-domains.cfg
+}
+
 function firewall_unblock_domain {
     unblocked_domain="$1"
     if grep "${unblocked_domain}" $FIREWALL_DOMAINS; then
-- 
GitLab