#!/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin

while IFS= read -r list 
do
  curl "$list" 2>/dev/null |
    tr '[:upper:]' '[:lower:]' |
    grep -o '^[^#]*' |
    grep -E -o '([a-z0-9_-]+\.)+[a-z0-9]{2,4}' |
  while IFS= read -r domain
  do
    echo "local-zone: \"$domain\" static"
  done
done < /etc/blocklist |
  sort -r | uniq |
  grep -Ev `tr '\n' '|' < /etc/whitelist | sed 's/||*/|/g' | sed 's/^|*//g' | sed 's/ *//g' | sed 's/|*$//g' | sed 's/\./\\\\./g'` |
  cat > /var/unbound/unbound_blocklist.conf

pfSsh.php playback svc stop unbound
sleep 10
pfSsh.php playback svc start unbound
