Skip to content

Commit

Permalink
add list of domains serving advertising
Browse files Browse the repository at this point in the history
Add a script to download a list of domains which serves ads.
This list can be used to block these servers in the DNS server.
  • Loading branch information
teknoraver committed Jul 3, 2015
1 parent b59187d commit 5b8d596
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 0 deletions.
40 changes: 40 additions & 0 deletions utils/banhosts/Makefile
@@ -0,0 +1,40 @@
#
# Copyright (C) 2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=banhostlist
PKG_VERSION:=1
PKG_RELEASE:=1

PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_MAINTAINER:=Matteo Croce <matteo@openwrt.org>
PKG_LICENCE:=GPL-2.0

include $(INCLUDE_DIR)/package.mk

define Package/banhostlist
SECTION:=utils
CATEGORY:=Utilities
TITLE:=List of advertising domains
URL:=http://winhelp2002.mvps.org/
endef

define Package/banhostlist/description
List of domains serving advertising and malicious content to easily block them
endef


define Build/Compile/Default
endef

define Package/banhostlist/install
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
$(INSTALL_BIN) ./files/updatebanhost $(1)/etc/hotplug.d/iface/80-banhosts
endef

$(eval $(call BuildPackage,banhostlist))
19 changes: 19 additions & 0 deletions utils/banhosts/files/updatebanhost
@@ -0,0 +1,19 @@
#!/bin/sh

file=/tmp/banhost

gethosts() {
logger -t "banhost[$$]" "Update $file"
wget -qO- http://winhelp2002.mvps.org/hosts.txt |awk 'BEGIN{printf "0.0.0.0"}/^0\.0\.0\.0/{printf " "$2}END{exit(!FNR)}' >$file || exit 1
echo -n $time >$file.time
exec killall -HUP dnsmasq
}

if [ "$ACTION" = ifup -a "$INTERFACE" = wan ]; then
read time </proc/uptime
time=${time%%.*}

[ -f $file -a -f $file.time ] || gethosts
read oldtime <$file.time
[ $((time - oldtime)) -lt 604800 ] || gethosts
fi

0 comments on commit 5b8d596

Please sign in to comment.