diff --git a/adbyby/Makefile b/adbyby/Makefile new file mode 100644 index 000000000..831dcb5b6 --- /dev/null +++ b/adbyby/Makefile @@ -0,0 +1,76 @@ +# +# Copyright (C) 2015-2016 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v3. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=adbyby +PKG_VERSION:=2.7 +PKG_RELEASE:=20200315 + +include $(INCLUDE_DIR)/package.mk + +define Package/$(PKG_NAME) + SECTION:=net + CATEGORY:=Network + TITLE:=Powerful adblock module to block ad. + DEPENDS:=@(i386||x86_64||arm||mipsel||mips||aarch64) + URL:=http://www.adbyby.com/ +endef + +define Package/$(PKG_NAME)/description +Adbyby is a powerful adblock module to block ad,just like adblock. +endef + +ifeq ($(ARCH),x86_64) + ADBYBY_DIR:=amd64 +endif +ifeq ($(ARCH),mipsel) + ADBYBY_DIR:=mipsle +endif +ifeq ($(ARCH),mips) + ADBYBY_DIR:=mips +endif +ifeq ($(ARCH),i386) + ADBYBY_DIR:=x86 +endif +ifeq ($(ARCH),arm) + ADBYBY_DIR:=armv7 + ifeq ($(BOARD),bcm53xx) + ADBYBY_DIR:=arm + endif + ifeq ($(BOARD),kirkwood) + ADBYBY_DIR:=arm + endif +endif +ifeq ($(ARCH),aarch64) + ADBYBY_DIR:=armv7 +endif + +define Build/Prepare +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Package/$(PKG_NAME)/install + $(INSTALL_DIR) $(1)/usr/share/adbyby + $(INSTALL_BIN) ./files/adbyby.sh $(1)/usr/share/adbyby/ + $(INSTALL_CONF) ./files/adhook.ini $(1)/usr/share/adbyby/ + $(INSTALL_CONF) ./files/user.action $(1)/usr/share/adbyby/ + + $(INSTALL_DIR) $(1)/usr/share/adbyby/data + $(INSTALL_DATA) ./files/data/* $(1)/usr/share/adbyby/data/ + + $(INSTALL_DIR) $(1)/usr/share/adbyby/doc + $(INSTALL_DATA) ./files/doc/* $(1)/usr/share/adbyby/doc/ + + $(INSTALL_BIN) ./files/$(ADBYBY_DIR)/adbyby $(1)/usr/share/adbyby/adbyby +endef + +$(eval $(call BuildPackage,$(PKG_NAME))) diff --git a/adbyby/files/adbyby.sh b/adbyby/files/adbyby.sh new file mode 100755 index 000000000..146a070d1 --- /dev/null +++ b/adbyby/files/adbyby.sh @@ -0,0 +1,16 @@ +#!/bin/sh +PROG_PATH=/usr/share/adbyby +err=0 +until [ $err -ge 5 ]; do + if [ -n "$(pgrep $PROG_PATH/adbyby)" ]; then + iptables-save | grep ADBYBY >/dev/null || \ + /etc/init.d/adbyby add_rule + sleep 10 + err=0 + else + $PROG_PATH/adbyby --no-daemon &>/dev/null & + sleep 1 + err=$((err+1)) + fi +done +/etc/init.d/adbyby del_rule diff --git a/adbyby/files/adhook.ini b/adbyby/files/adhook.ini new file mode 100644 index 000000000..6a7613ea8 --- /dev/null +++ b/adbyby/files/adhook.ini @@ -0,0 +1,14 @@ +[cfg] +### 2.1 ### +listen-address=0.0.0.0:8118 +buffer-limit=1024 +keep-alive-timeout=30 +socket-timeout=60 +### 2.5 ### +max_client_connections=0 +### 2.6 ### +stack_size=200 +auto_restart=0 +### 2.7 ### +debug=0 +ipset=0 diff --git a/adbyby/files/amd64/adbyby b/adbyby/files/amd64/adbyby new file mode 100755 index 000000000..76c8fa084 Binary files /dev/null and b/adbyby/files/amd64/adbyby differ diff --git a/adbyby/files/arm/adbyby b/adbyby/files/arm/adbyby new file mode 100755 index 000000000..a7da1900d Binary files /dev/null and b/adbyby/files/arm/adbyby differ diff --git a/adbyby/files/armv7/adbyby b/adbyby/files/armv7/adbyby new file mode 100755 index 000000000..98dbfbe54 Binary files /dev/null and b/adbyby/files/armv7/adbyby differ diff --git a/adbyby/files/data/lazy.bin b/adbyby/files/data/lazy.bin new file mode 100644 index 000000000..23e6a8d70 Binary files /dev/null and b/adbyby/files/data/lazy.bin differ diff --git a/adbyby/files/data/lazy.txt b/adbyby/files/data/lazy.txt new file mode 100644 index 000000000..5d383c711 --- /dev/null +++ b/adbyby/files/data/lazy.txt @@ -0,0 +1,25 @@ +! -----ʱ: 2018-10-08 23:07:52 by:xwhyc----- +.php?ad= +/99rejs/js +/agetsou.js^ +/c@*!25.js|$script +/cococ-66/$script +/defaultts.tc.qq.com/*.ts?index=0&start=0& +/defaultts.tc.qq.com/*.ts?index=0&start=0&end=*&ver=4 +/gg_js/ +/imgs.js?t= +/js/adtop.js| +/js/guanggao_gg.js?d= +/js/sss/ad.js +/static/js/aall.js +/unionjs/$script +/variety.tc.qq.com/*.mp4^*fmt=hd +/variety.tc.qq.com/*.mp4^*fmt=shd +/video.dispatch.tc.qq.com/*.mp4^*sdtfrom= +/view/image/QT_HY.jpg?t= +/view/js/slade.js|$script +/vlive.qqvideo.tc.qq.com/*.mp4^*fmt=hd +/vlive.qqvideo.tc.qq.com/*.mp4^*fmt=shd +/vmind.qqvideo.tc.qq.com/*.mp4^*sdtfrom= +/vmindhls.tc.qq.com/*ugc=0&ga=0&gv=0&start= +/zzhzgg.js \ No newline at end of file diff --git a/adbyby/files/data/rules.txt b/adbyby/files/data/rules.txt new file mode 100644 index 000000000..5c44b0e8c --- /dev/null +++ b/adbyby/files/data/rules.txt @@ -0,0 +1,15 @@ +! ------------------------------ ADByby 自定义过滤语法简表--------------------------------- +! -------------- 规则基于abp规则,并进行了字符替换部分的扩展----------------------------- +! ABP规则请参考https://adblockplus.org/zh_CN/filters,下面为大致摘要 +! "!" 为行注释符,注释行以该符号起始作为一行注释语义,用于规则描述 +! "*" 为字符通配符,能够匹配0长度或任意长度的字符串,该通配符不能与正则语法混用。 +! "^" 为分隔符,可以是除了字母、数字或者 _ - . % 之外的任何字符。 +! "|" 为管线符号,来表示地址的最前端或最末端 +! "||" 为子域通配符,方便匹配主域名下的所有子域。 +! "~" 为排除标识符,通配符能过滤大多数广告,但同时存在误杀, 可以通过排除标识符修正误杀链接。 +! "##" 为元素选择器标识符,后面跟需要隐藏元素的CSS样式例如 #ad_id .ad_class +!! 元素隐藏暂不支持全局规则和排除规则 +!! 字符替换扩展 +! 文本替换选择器标识符,后面跟需要替换的文本数据,格式:$s@模式字符串@替换后的文本@ +! 支持通配符*和? +! ------------------------------------------------------------------------------------------- diff --git a/adbyby/files/data/user.txt b/adbyby/files/data/user.txt new file mode 100644 index 000000000..e69de29bb diff --git a/adbyby/files/data/video.txt b/adbyby/files/data/video.txt new file mode 100644 index 000000000..3991c48fc --- /dev/null +++ b/adbyby/files/data/video.txt @@ -0,0 +1,30 @@ +! -----ʱ: 2018-10-08 23:06:11 by:xwhyc----------------------------------------------- +! -----淴:http://www.adbyby.com/help.htm QQȺ: 79547134(), 364066294()470705224()534897434,438394572-------------- + + +!------------------------------------------- +/showadv/ +3199.cn###ad640,[id^="ad0"] +76fengyun.com###down_box{display:block!important;}.gggg,.ggao +9553.com##[class="zm"] +962.net##.show_ad,.g-962-ad +amazon.cn##.adv-float-div +downsx.rocks##.adbox,.Left-ad3_fixed,.google-ad2_fixed +edu-acc.cn###doyoo_monitor +fx678.com##[class^="adv-"] +||76fengyun.com/body22233.js +||76fengyun.com/file/$s@onclick="window.open('*');startWait();"@onclick="window.open(document.getElementById('downpage_link').href);startWait();"@ +||atanx.alicdn.com/t/tanxssp.js?_v= +||biquguan.com/guan/$script +||djv99sxoqpv11.cloudfront.net +||jmxlaser.com +||jump2.bdimg.com/p/$s@