Merge Mainline
This commit is contained in:
commit
499bf9fb8c
@ -65,7 +65,7 @@ menuconfig DEVEL
|
||||
|
||||
config CCACHE
|
||||
bool "Use ccache" if DEVEL
|
||||
default n
|
||||
default y
|
||||
help
|
||||
Compiler cache; see https://ccache.samba.org/
|
||||
|
||||
|
||||
@ -20,7 +20,6 @@ generate_static_network() {
|
||||
uci -q batch <<-EOF
|
||||
delete network.globals
|
||||
set network.globals='globals'
|
||||
set network.globals.ula_prefix='auto'
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
@ -7,12 +7,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=naiveproxy
|
||||
PKG_VERSION:=85.0.4183.83-3
|
||||
PKG_VERSION:=85.0.4183.83-4
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/klzgrad/naiveproxy/tar.gz/v$(PKG_VERSION)?
|
||||
PKG_HASH:=66a8f275a9aa0fa04649062fb141a10add9bd76855f32ee65e6ee60a7fc4649c
|
||||
PKG_HASH:=68b3ec22aba04a671ddb14a1f55dc7425c73adf781cbe87a95097c782f269a07
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
|
||||
PKG_LICENSE:=BSD 3-Clause
|
||||
@ -36,13 +36,17 @@ endif
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/naiveproxy/config
|
||||
depends on !(arc||armeb||mips||mips64||powerpc)
|
||||
endef
|
||||
|
||||
define Package/naiveproxy
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
SUBMENU:=Web Servers/Proxies
|
||||
URL:=https://github.com/klzgrad/naiveproxy
|
||||
TITLE:=Make a fortune quietly
|
||||
DEPENDS:=@!(arc||armeb||powerpc) +libatomic +libnss
|
||||
DEPENDS:=+libatomic +libnss
|
||||
endef
|
||||
|
||||
define Package/naiveproxy/description
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
From f1a49736010170a70123db07ca41256ba92c0002 Mon Sep 17 00:00:00 2001
|
||||
From: klzgrad <kizdiv@gmail.com>
|
||||
Date: Sat, 3 Oct 2020 08:54:59 +0800
|
||||
Subject: [PATCH] Remove concurrency limit
|
||||
|
||||
---
|
||||
src/net/tools/naive/naive_proxy.cc | 3 +--
|
||||
src/net/tools/naive/naive_proxy_bin.cc | 2 +-
|
||||
2 files changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/net/tools/naive/naive_proxy.cc b/src/net/tools/naive/naive_proxy.cc
|
||||
index b4d5feee6..a38f79124 100644
|
||||
--- a/src/net/tools/naive/naive_proxy.cc
|
||||
+++ b/src/net/tools/naive/naive_proxy.cc
|
||||
@@ -5,7 +5,6 @@
|
||||
|
||||
#include "net/tools/naive/naive_proxy.h"
|
||||
|
||||
-#include <algorithm>
|
||||
#include <utility>
|
||||
|
||||
#include "base/bind.h"
|
||||
@@ -35,7 +34,7 @@ NaiveProxy::NaiveProxy(std::unique_ptr<ServerSocket> listen_socket,
|
||||
const NetworkTrafficAnnotationTag& traffic_annotation)
|
||||
: listen_socket_(std::move(listen_socket)),
|
||||
protocol_(protocol),
|
||||
- concurrency_(std::min(4, std::max(1, concurrency))),
|
||||
+ concurrency_(concurrency),
|
||||
resolver_(resolver),
|
||||
session_(session),
|
||||
net_log_(
|
||||
diff --git a/src/net/tools/naive/naive_proxy_bin.cc b/src/net/tools/naive/naive_proxy_bin.cc
|
||||
index 4ba08712d..00acd7756 100644
|
||||
--- a/src/net/tools/naive/naive_proxy_bin.cc
|
||||
+++ b/src/net/tools/naive/naive_proxy_bin.cc
|
||||
@@ -289,7 +289,7 @@ bool ParseCommandLine(const CommandLine& cmdline, Params* params) {
|
||||
|
||||
if (!cmdline.concurrency.empty()) {
|
||||
if (!base::StringToInt(cmdline.concurrency, ¶ms->concurrency) ||
|
||||
- params->concurrency < 1 || params->concurrency > 4) {
|
||||
+ params->concurrency < 1) {
|
||||
std::cerr << "Invalid concurrency" << std::endl;
|
||||
return false;
|
||||
}
|
||||
@ -1,79 +0,0 @@
|
||||
From fd4f8c65ecbbdd15d71a04d213314de056107a31 Mon Sep 17 00:00:00 2001
|
||||
From: CN_SZTL <cnsztl@project-openwrt.eu.org>
|
||||
Date: Tue, 18 Aug 2020 20:47:40 +0000
|
||||
Subject: [PATCH 2/3] build: add mips & x86 OpenWrt toolchain definitions
|
||||
|
||||
---
|
||||
src/build/toolchain/linux/BUILD.gn | 42 ++++++++++++++++++++++++++++++
|
||||
1 file changed, 42 insertions(+)
|
||||
|
||||
diff --git a/src/build/toolchain/linux/BUILD.gn b/src/build/toolchain/linux/BUILD.gn
|
||||
index 2e7913a4f..cc8084eac 100644
|
||||
--- a/src/build/toolchain/linux/BUILD.gn
|
||||
+++ b/src/build/toolchain/linux/BUILD.gn
|
||||
@@ -95,6 +95,18 @@ clang_toolchain("clang_x86") {
|
||||
}
|
||||
}
|
||||
|
||||
+clang_toolchain("clang_x86_openwrt") {
|
||||
+ # Output linker map files for binary size analysis.
|
||||
+ enable_linker_map = true
|
||||
+ extra_cppflags = "--target=i386-openwrt-linux-musl -D_LIBCPP_HAS_MUSL_LIBC -D__UCLIBC__"
|
||||
+ extra_ldflags = "--target=i386-openwrt-linux-musl"
|
||||
+
|
||||
+ toolchain_args = {
|
||||
+ current_cpu = "x86"
|
||||
+ current_os = "linux"
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
clang_toolchain("clang_x86_v8_arm") {
|
||||
toolchain_args = {
|
||||
current_cpu = "x86"
|
||||
@@ -203,6 +215,26 @@ gcc_toolchain("x64") {
|
||||
}
|
||||
}
|
||||
|
||||
+clang_toolchain("clang_mips_openwrt") {
|
||||
+ extra_cppflags = "--target=mips-openwrt-linux-musl -D_LIBCPP_HAS_MUSL_LIBC -D__UCLIBC__"
|
||||
+ extra_ldflags = "--target=mips-openwrt-linux-musl"
|
||||
+
|
||||
+ toolchain_args = {
|
||||
+ current_cpu = "mips"
|
||||
+ current_os = "linux"
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+clang_toolchain("clang_mips64_openwrt") {
|
||||
+ extra_cppflags = "--target=mips64-openwrt-linux-musl -D_LIBCPP_HAS_MUSL_LIBC -D__UCLIBC__"
|
||||
+ extra_ldflags = "--target=mips64-openwrt-linux-musl"
|
||||
+
|
||||
+ toolchain_args = {
|
||||
+ current_cpu = "mips64"
|
||||
+ current_os = "linux"
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
clang_toolchain("clang_mipsel") {
|
||||
toolchain_args = {
|
||||
current_cpu = "mipsel"
|
||||
@@ -227,6 +259,16 @@ clang_toolchain("clang_mips64el") {
|
||||
}
|
||||
}
|
||||
|
||||
+clang_toolchain("clang_mips64el_openwrt") {
|
||||
+ extra_cppflags = "--target=mips64el-openwrt-linux-musl -D_LIBCPP_HAS_MUSL_LIBC -D__UCLIBC__"
|
||||
+ extra_ldflags = "--target=mips64el-openwrt-linux-musl"
|
||||
+
|
||||
+ toolchain_args = {
|
||||
+ current_cpu = "mips64el"
|
||||
+ current_os = "linux"
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
gcc_toolchain("mipsel") {
|
||||
toolprefix = "mipsel-linux-gnu-"
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
From 5b476d92f8dbee8b83061faa8cd18a46e5ab4aae Mon Sep 17 00:00:00 2001
|
||||
From: CN_SZTL <cnsztl@project-openwrt.eu.org>
|
||||
Date: Tue, 18 Aug 2020 20:36:39 +0000
|
||||
Subject: [PATCH 1/3] build: add OpenWrt staging libraries
|
||||
Subject: [PATCH] build: add OpenWrt staging libraries
|
||||
|
||||
---
|
||||
src/build/config/posix/BUILD.gn | 4 ++++
|
||||
@ -1,7 +1,7 @@
|
||||
From dd07b78f561914ccc6cbe076ae66c380304bf92c Mon Sep 17 00:00:00 2001
|
||||
From: CN_SZTL <cnsztl@project-openwrt.eu.org>
|
||||
Date: Wed, 19 Aug 2020 12:42:45 +0000
|
||||
Subject: [PATCH 3/3] build: drop useless deps simd_asm
|
||||
Subject: [PATCH] build: drop useless deps simd_asm
|
||||
|
||||
libjpeg_turbo itself has alreadly set the dependency "simd_asm",
|
||||
and this will cause cross-compile failed:
|
||||
@ -8,12 +8,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=linux-firmware
|
||||
PKG_VERSION:=20200817
|
||||
PKG_RELEASE:=2
|
||||
PKG_VERSION:=20200918
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_URL:=@KERNEL/linux/kernel/firmware
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_HASH:=76d05d5f1eff268d3b80675245fa596f557bd55ee2e16ddd54d18ffeae943887
|
||||
PKG_HASH:=e2787907e0892e0b1a3c06f1def6fd3cdc0eff850b0919c7f21b5bda7563d2d8
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
|
||||
@ -8,5 +8,5 @@
|
||||
[0;1;30;90m│[0m [0;1;34;94m#[0m [0;37m│[0m
|
||||
[0;1;34;94m│[0m [0;1;34;94m"[0m [0;1;34;94m│[0m
|
||||
[0;1;34;94m│───────────────[0;34m────────────────[0;37m────────────────[0;1;34;94m──│[0m
|
||||
[0;1;34;94m│[0m [0;1;34;94mOpenWrt[0m [0;1;34;94m18.06[0m [0;1;34;94mby[0m [0;1;34;94mLean[0m [0;37m|[0m [0;1;34;94mMod [0;1;34;94m20.09[0m [0;1;34;94mBy[0m [0;1;34;94mCTCGFW[0m [0;1;34;94m│[0m
|
||||
[0;1;34;94m│[0m [0;1;34;94mOpenWrt[0m [0;1;34;94m18.06[0m [0;1;34;94mby[0m [0;1;34;94mLean[0m [0;37m|[0m [0;1;34;94mMod [0;1;34;94m20.10[0m [0;1;34;94mBy[0m [0;1;34;94mCTCGFW[0m [0;1;34;94m│[0m
|
||||
[0;1;34;94m└───────[0;34m────────────────[0;37m────────────────[0;1;30;90m───────[0;1;34;94m───┘[0m
|
||||
|
||||
@ -41,7 +41,7 @@ sed -i '/option disabled/d' /etc/config/wireless
|
||||
sed -i '/set wireless.radio${devidx}.disabled/d' /lib/wifi/mac80211.sh
|
||||
|
||||
sed -i '/DISTRIB_REVISION/d' /etc/openwrt_release
|
||||
echo "DISTRIB_REVISION='| Mod20.09 by CTCGFW'" >> /etc/openwrt_release
|
||||
echo "DISTRIB_REVISION='| Mod20.10 by CTCGFW'" >> /etc/openwrt_release
|
||||
sed -i '/DISTRIB_DESCRIPTION/d' /etc/openwrt_release
|
||||
echo "DISTRIB_DESCRIPTION='OpenWrt 18.06 by Lean '" >> /etc/openwrt_release
|
||||
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=libtorrent-rasterbar
|
||||
PKG_VERSION:=1.2.7
|
||||
PKG_VERSION:=1.2.10
|
||||
PKG_RELEASE=1
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/arvidn/libtorrent.git
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_SOURCE_VERSION:=8e710151c80e655ee0513ca37c367f75a448c6bd
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE:=$(PKG_NAME)-libtorrent-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/arvidn/libtorrent/tar.gz/libtorrent-$(PKG_VERSION)?
|
||||
PKG_HASH:=e0fedb583f1e7bdcc0eb80a9df064a1e6fb0b825d8423e64bdb0f7a35879a09e
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(firstword $(subst -, ,$(PKG_NAME)))-libtorrent-$(PKG_VERSION)
|
||||
|
||||
PKG_LICENSE:=BSD
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
||||
@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-ssr-plus
|
||||
PKG_VERSION:=180
|
||||
PKG_RELEASE:=7
|
||||
PKG_RELEASE:=8
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
@ -21,6 +21,7 @@ config PACKAGE_$(PKG_NAME)_INCLUDE_Trojan
|
||||
|
||||
config PACKAGE_$(PKG_NAME)_INCLUDE_NaiveProxy
|
||||
bool "Include NaiveProxy"
|
||||
depends on !(arc||armeb||mips||mips64||powerpc)
|
||||
default y if i386||x86_64||arm||aarch64
|
||||
|
||||
config PACKAGE_$(PKG_NAME)_INCLUDE_Redsocks2
|
||||
@ -60,4 +61,4 @@ LUCI_DEPENDS:=+shadowsocksr-libev-alt +ipset +ip-full +iptables-mod-tproxy +dnsm
|
||||
|
||||
include $(TOPDIR)/feeds/luci/luci.mk
|
||||
|
||||
# call BuildPackage - OpenWrt buildroot signature
|
||||
# call BuildPackage - OpenWrt buildroot signature
|
||||
|
||||
@ -398,6 +398,12 @@ o = s:option(Value, "tls_host", translate("TLS Host"))
|
||||
o:depends("tls", "1")
|
||||
o.rmempty = true
|
||||
|
||||
-- XTLS
|
||||
o = s:option(Flag, "xtls", translate("XTLS"))
|
||||
o.rmempty = true
|
||||
o.default = "0"
|
||||
o:depends({type="vless", tls="1"})
|
||||
|
||||
-- [[ Mux ]]--
|
||||
o = s:option(Flag, "mux", translate("Mux"))
|
||||
o.rmempty = true
|
||||
|
||||
@ -204,7 +204,8 @@ gen_config_file() {
|
||||
cat <<-EOF >/var/etc/naive-ssr-$FILE_NAME.json
|
||||
{
|
||||
"listen": "$PROTO://0.0.0.0:$3",
|
||||
"proxy": "https://$(uci_get_by_name $1 username):$(uci_get_by_name $1 password)@$(uci_get_by_name $1 server):$(uci_get_by_name $1 server_port)"
|
||||
"proxy": "https://$(uci_get_by_name $1 username):$(uci_get_by_name $1 password)@$(uci_get_by_name $1 server):$(uci_get_by_name $1 server_port)",
|
||||
"concurrency": "${4:-1}"
|
||||
}
|
||||
EOF
|
||||
;;
|
||||
@ -342,12 +343,12 @@ start_redir_tcp() {
|
||||
-l :$server_port $password $kcp_param
|
||||
kcp_enable_flag=1
|
||||
fi
|
||||
gen_config_file $GLOBAL_SERVER 0 $(uci_get_by_name $GLOBAL_SERVER local_port 1234)
|
||||
if [ "$(uci_get_by_type global threads 0)" == "0" ]; then
|
||||
threads=$(cat /proc/cpuinfo | grep 'processor' | wc -l)
|
||||
else
|
||||
threads=$(uci_get_by_type global threads)
|
||||
fi
|
||||
gen_config_file $GLOBAL_SERVER 0 $(uci_get_by_name $GLOBAL_SERVER local_port 1234) $threads
|
||||
case "$type" in
|
||||
ss | ssr)
|
||||
local last_config_file=$CONFIG_FILE
|
||||
@ -370,7 +371,7 @@ start_redir_tcp() {
|
||||
;;
|
||||
naiveproxy)
|
||||
$bin /var/etc/naive-ssr-retcp.json >/dev/null 2>&1 &
|
||||
echo "$(date "+%Y-%m-%d %H:%M:%S") Main node:$($bin --version 2>&1 | head -1) Started!" >>/tmp/ssrplus.log
|
||||
echo "$(date "+%Y-%m-%d %H:%M:%S") Main node:$($bin --version 2>&1 | head -1) , $threads Threads Started!" >>/tmp/ssrplus.log
|
||||
;;
|
||||
socks5)
|
||||
/usr/share/shadowsocksr/genred2config.sh "/var/etc/redsocks-ssr-retcp.conf" socks5 tcp $(uci_get_by_name $GLOBAL_SERVER local_port) \
|
||||
|
||||
@ -5,6 +5,16 @@ local proto = arg[2]
|
||||
local local_port = arg[3] or "0"
|
||||
local socks_port = arg[4] or "0"
|
||||
local server = ucursor:get_all("shadowsocksr", server_section)
|
||||
local outbound_security = "none"
|
||||
|
||||
if (server.xtls == '1')
|
||||
then
|
||||
outbound_security = "xtls"
|
||||
elseif (server.tls == '1')
|
||||
then
|
||||
outbound_security = "tls"
|
||||
end
|
||||
|
||||
local vless = {
|
||||
log = {
|
||||
-- error = "/var/ssrplus.log",
|
||||
@ -45,6 +55,7 @@ outbound = {
|
||||
users = {
|
||||
{
|
||||
id = server.vmess_id,
|
||||
flow = (server.xtls == '1') and "xtls-rprx-origin" or nil,
|
||||
encryption = server.vless_encryption
|
||||
}
|
||||
}
|
||||
@ -54,8 +65,9 @@ outbound = {
|
||||
-- 底层传输配置
|
||||
streamSettings = {
|
||||
network = server.transport,
|
||||
security = (server.tls == '1') and "tls" or "none",
|
||||
tlsSettings = {allowInsecure = (server.insecure ~= "0") and true or false,serverName=server.tls_host,},
|
||||
security = outbound_security,
|
||||
tlsSettings = (outbound_security == "tls") and {allowInsecure = (server.insecure ~= "0") and true or false,serverName=server.tls_host,} or nil,
|
||||
xtlsSettings = (outbound_security == "xtls") and {allowInsecure = (server.insecure ~= "0") and true or false,serverName=server.tls_host,} or nil,
|
||||
tcpSettings = (server.transport == "tcp") and {
|
||||
header = {
|
||||
type = server.tcp_guise,
|
||||
|
||||
@ -1,14 +1,14 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=qBittorrent-Enhanced-Edition
|
||||
PKG_VERSION:=4.2.5.13
|
||||
PKG_VERSION:=4.2.5.16
|
||||
PKG_RELEASE=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-release-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/c0re100/qBittorrent-Enhanced-Edition/tar.gz/release-$(PKG_VERSION)?
|
||||
PKG_HASH:=e032ea5b7e8d974081c12201f20f06e47bc959a72d5898561736cdfdf46cafaf
|
||||
PKG_HASH:=ebae940c93bca2cdaf4fc353f1fe7177006e4ac25a921b42403b6296d4dc9d3e
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/qBittorrent-Enhanced-Edition-release-$(PKG_VERSION)
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION)
|
||||
|
||||
PKG_LICENSE:=GPL-2.0+
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
@ -54,8 +54,6 @@ define Build/Prepare
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)/install
|
||||
$(INSTALL_DIR) $(1)/usr/man/man1
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/man/man1/qbittorrent-nox.1 $(1)/usr/man/man1/qbittorrent-nox.1
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/qbittorrent-nox $(1)/usr/bin
|
||||
$(INSTALL_DIR) $(1)/etc/qBittorrent
|
||||
|
||||
@ -7,8 +7,8 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-passwall
|
||||
PKG_VERSION:=3.9
|
||||
PKG_RELEASE:=65
|
||||
PKG_DATE:=20201003
|
||||
PKG_RELEASE:=66
|
||||
PKG_DATE:=20201004
|
||||
|
||||
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
|
||||
|
||||
@ -4,8 +4,14 @@ local node_section = arg[1]
|
||||
local run_type = arg[2]
|
||||
local local_addr = arg[3]
|
||||
local local_port = arg[4]
|
||||
local relay_port = arg[5]
|
||||
local node = ucursor:get_all("passwall", node_section)
|
||||
|
||||
if relay_port and relay_port ~= "nil" then
|
||||
node.address = "127.0.0.1"
|
||||
node.port = tonumber(relay_port)
|
||||
end
|
||||
|
||||
local config = {
|
||||
listen = run_type .. "://" .. local_addr .. ":" .. local_port,
|
||||
proxy = node.protocol .. "://" .. node.username .. ":" .. node.password .. "@" .. node.address .. ":" .. node.port
|
||||
|
||||
@ -4,6 +4,7 @@ local node_section = arg[1]
|
||||
local run_type = arg[2]
|
||||
local local_addr = arg[3]
|
||||
local local_port = arg[4]
|
||||
local relay_port = arg[5]
|
||||
local node = ucursor:get_all("passwall", node_section)
|
||||
|
||||
local cipher = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA"
|
||||
@ -22,7 +23,7 @@ local trojan = {
|
||||
cert = node.trojan_cert_path,
|
||||
cipher = cipher,
|
||||
cipher_tls13 = cipher13,
|
||||
sni = node.tls_serverName,
|
||||
sni = node.tls_serverName or node.address,
|
||||
alpn = {"h2", "http/1.1"},
|
||||
reuse_session = true,
|
||||
session_ticket = (node.tls_sessionTicket and node.tls_sessionTicket == "1") and true or false,
|
||||
@ -67,4 +68,8 @@ if node.type == "Trojan-Go" then
|
||||
password = node.ss_aead_pwd or ""
|
||||
} or nil
|
||||
end
|
||||
if relay_port and relay_port ~= "nil" then
|
||||
trojan.remote_addr = "127.0.0.1"
|
||||
trojan.remote_port = tonumber(relay_port)
|
||||
end
|
||||
print(json.stringify(trojan, 1))
|
||||
|
||||
@ -11,8 +11,18 @@ local inbounds = {}
|
||||
local outbounds = {}
|
||||
local network = proto
|
||||
local routing = nil
|
||||
local new_port
|
||||
|
||||
local function gen_outbound(node, tag)
|
||||
local function get_new_port()
|
||||
if new_port then
|
||||
new_port = tonumber(sys.exec(string.format("echo -n $(/usr/share/%s/app.sh get_new_port %s tcp)", appname, new_port + 1)))
|
||||
else
|
||||
new_port = tonumber(sys.exec(string.format("echo -n $(/usr/share/%s/app.sh get_new_port auto tcp)", appname)))
|
||||
end
|
||||
return new_port
|
||||
end
|
||||
|
||||
local function gen_outbound(node, tag, relay_port)
|
||||
local result = nil
|
||||
if node then
|
||||
local node_id = node[".name"]
|
||||
@ -25,15 +35,17 @@ local function gen_outbound(node, tag)
|
||||
node.transport = "tcp"
|
||||
else
|
||||
local node_type = (proto and proto ~= "nil") and proto or "socks"
|
||||
local new_port = sys.exec(string.format("echo -n $(/usr/share/%s/app.sh get_new_port auto tcp)", appname))
|
||||
new_port = get_new_port()
|
||||
node.port = new_port
|
||||
sys.call(string.format("/usr/share/%s/app.sh run_socks %s %s %s %s %s > /dev/null",
|
||||
sys.call(string.format('/usr/share/%s/app.sh run_socks "%s" "%s" "%s" "%s" "%s" "%s"> /dev/null',
|
||||
appname,
|
||||
node_id,
|
||||
"127.0.0.1",
|
||||
new_port,
|
||||
string.format("/var/etc/%s/v2_%s_%s.json", appname, node_type, node_id),
|
||||
"4")
|
||||
"4",
|
||||
relay_port and tostring(relay_port) or ""
|
||||
)
|
||||
)
|
||||
node.protocol = "socks"
|
||||
node.transport = "tcp"
|
||||
@ -140,7 +152,7 @@ end
|
||||
if socks_proxy_port ~= "nil" then
|
||||
table.insert(inbounds, {
|
||||
listen = "0.0.0.0",
|
||||
port = socks_proxy_port,
|
||||
port = tonumber(socks_proxy_port),
|
||||
protocol = "socks",
|
||||
settings = {auth = "noauth", udp = true, ip = "127.0.0.1"}
|
||||
})
|
||||
@ -149,7 +161,7 @@ end
|
||||
|
||||
if redir_port ~= "nil" then
|
||||
table.insert(inbounds, {
|
||||
port = redir_port,
|
||||
port = tonumber(redir_port),
|
||||
protocol = "dokodemo-door",
|
||||
settings = {network = proto, followRedirect = true},
|
||||
sniffing = {enabled = true, destOverride = {"http", "tls"}}
|
||||
@ -175,14 +187,39 @@ end
|
||||
|
||||
if node.protocol == "_shunt" then
|
||||
local rules = {}
|
||||
|
||||
ucursor:foreach(appname, "shunt_rules", function(e)
|
||||
local _node_id = node[e[".name"]] or nil
|
||||
local name = e[".name"]
|
||||
local _node_id = node[name] or nil
|
||||
if _node_id and _node_id ~= "nil" then
|
||||
local _node = ucursor:get_all(appname, _node_id)
|
||||
local _outbound = gen_outbound(_node, e[".name"])
|
||||
local is_proxy = node[name .. "_proxy"]
|
||||
local relay_port
|
||||
if is_proxy and is_proxy == "1" then
|
||||
new_port = get_new_port()
|
||||
relay_port = new_port
|
||||
table.insert(inbounds, {
|
||||
tag = "proxy_" .. name,
|
||||
listen = "127.0.0.1",
|
||||
port = new_port,
|
||||
protocol = "dokodemo-door",
|
||||
settings = {network = "tcp,udp", address = _node.address, port = tonumber(_node.port)}
|
||||
})
|
||||
if _node.tls_serverName == nil then
|
||||
_node.tls_serverName = _node.address
|
||||
end
|
||||
_node.address = "127.0.0.1"
|
||||
_node.port = new_port
|
||||
end
|
||||
local _outbound = gen_outbound(_node, name, relay_port)
|
||||
if _outbound then
|
||||
table.insert(outbounds, _outbound)
|
||||
if is_proxy and is_proxy == "1" then
|
||||
table.insert(rules, {
|
||||
type = "field",
|
||||
inboundTag = {"proxy_" .. name},
|
||||
outboundTag = "default"
|
||||
})
|
||||
end
|
||||
if e.domain_list then
|
||||
local _domain = {}
|
||||
string.gsub(e.domain_list, '[^' .. "\r\n" .. ']+', function(w)
|
||||
@ -190,7 +227,7 @@ if node.protocol == "_shunt" then
|
||||
end)
|
||||
table.insert(rules, {
|
||||
type = "field",
|
||||
outboundTag = e[".name"],
|
||||
outboundTag = name,
|
||||
domain = _domain
|
||||
})
|
||||
end
|
||||
@ -201,7 +238,7 @@ if node.protocol == "_shunt" then
|
||||
end)
|
||||
table.insert(rules, {
|
||||
type = "field",
|
||||
outboundTag = e[".name"],
|
||||
outboundTag = name,
|
||||
ip = _ip
|
||||
})
|
||||
end
|
||||
|
||||
@ -80,14 +80,25 @@ gvt2.com'
|
||||
|
||||
config shunt_rules 'netflix'
|
||||
option remarks '奈飞'
|
||||
option domain_list 'netflix
|
||||
option domain_list 'fast.com
|
||||
netflix
|
||||
netflix.com
|
||||
netflix.net
|
||||
nflxso.net
|
||||
nflxext.com
|
||||
nflximg.com
|
||||
nflximg.net
|
||||
nflxvideo.net
|
||||
fast.com'
|
||||
netflixdnstest0.com
|
||||
netflixdnstest1.com
|
||||
netflixdnstest2.com
|
||||
netflixdnstest3.com
|
||||
netflixdnstest4.com
|
||||
netflixdnstest5.com
|
||||
netflixdnstest6.com
|
||||
netflixdnstest7.com
|
||||
netflixdnstest8.com
|
||||
netflixdnstest9.com'
|
||||
|
||||
config shunt_rules 'TVB'
|
||||
option remarks 'TVB'
|
||||
|
||||
@ -218,12 +218,12 @@ ln_start_bin() {
|
||||
shift 2;
|
||||
if [ "${file_func%%/*}" != "${file_func}" ]; then
|
||||
[ ! -L "${file_func}" ] && {
|
||||
ln -s "${file_func}" "${TMP_BIN_PATH}/${ln_name}"
|
||||
ln -s "${file_func}" "${TMP_BIN_PATH}/${ln_name}" >/dev/null 2>&1
|
||||
file_func="${TMP_BIN_PATH}/${ln_name}"
|
||||
}
|
||||
[ -x "${file_func}" ] || echolog " - $(readlink ${file_func}) 没有执行权限,无法启动:${file_func} $*"
|
||||
fi
|
||||
echo "${file_func} $*" >&2
|
||||
#echo "${file_func} $*" >&2
|
||||
[ -n "${file_func}" ] || echolog " - 找不到 ${ln_name},无法启动..."
|
||||
${file_func:-echolog " - ${ln_name}"} "$@" >/dev/null 2>&1 &
|
||||
}
|
||||
@ -310,10 +310,16 @@ run_socks() {
|
||||
local bind=$2
|
||||
local local_port=$3
|
||||
local config_file=$4
|
||||
local relay_port=$6
|
||||
local type=$(echo $(config_n_get $node type) | tr 'A-Z' 'a-z')
|
||||
local remarks=$(config_n_get $node remarks)
|
||||
local server_host=$(config_n_get $node address)
|
||||
local port=$(config_n_get $node port)
|
||||
[ -n "$relay_port" ] && {
|
||||
server_host="127.0.0.1"
|
||||
port=$relay_port
|
||||
echo $relay_port
|
||||
}
|
||||
local msg tmp
|
||||
|
||||
if [ -n "$server_host" ] && [ -n "$port" ]; then
|
||||
@ -347,15 +353,15 @@ run_socks() {
|
||||
ln_start_bin "$(first_type $(config_t_get global_app v2ray_file notset)/v2ray v2ray)" v2ray -config="$config_file"
|
||||
;;
|
||||
trojan-go)
|
||||
lua $API_GEN_TROJAN $node client $bind $local_port > $config_file
|
||||
lua $API_GEN_TROJAN $node client $bind $local_port $port > $config_file
|
||||
ln_start_bin "$(first_type $(config_t_get global_app trojan_go_file notset) trojan-go)" trojan-go -config "$config_file"
|
||||
;;
|
||||
trojan*)
|
||||
lua $API_GEN_TROJAN $node client $bind $local_port > $config_file
|
||||
lua $API_GEN_TROJAN $node client $bind $local_port $port > $config_file
|
||||
ln_start_bin "$(first_type ${type})" "${type}" -c "$config_file"
|
||||
;;
|
||||
naiveproxy)
|
||||
lua $API_GEN_NAIVE $node socks $bind $local_port > $config_file
|
||||
lua $API_GEN_NAIVE $node socks $bind $local_port $port > $config_file
|
||||
ln_start_bin "$(first_type naive)" naive "$config_file"
|
||||
;;
|
||||
brook)
|
||||
@ -367,7 +373,7 @@ run_socks() {
|
||||
ln_start_bin "$(first_type $(config_t_get global_app brook_file notset) brook)" "brook_SOCKS_$5" "$protocol" --socks5 "$bind:$local_port" -s "$server_host:$port" -p "$(config_n_get $node password)"
|
||||
;;
|
||||
ss|ssr)
|
||||
lua $API_GEN_SS $node $local_port > $config_file
|
||||
lua $API_GEN_SS $node $local_port $server_host $port > $config_file
|
||||
ln_start_bin "$(first_type ${type}-local)" "${type}-local" -c "$config_file" -b "$bind" -u
|
||||
;;
|
||||
esac
|
||||
@ -863,6 +869,16 @@ add_dnsmasq() {
|
||||
echolog " - [$?]中国域名表(chnroute):${fwd_dns:-默认}"
|
||||
}
|
||||
}
|
||||
|
||||
#分流规则
|
||||
fwd_dns="${TUN_DNS}"
|
||||
#如果使用chnlist直接使用默认DNS
|
||||
[ "${USE_CHNLIST}" = "1" ] && unset fwd_dns
|
||||
local shunt_ids=$(uci show $CONFIG | grep "=shunt_rules" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}')
|
||||
for shunt_id in $shunt_ids; do
|
||||
config_n_get $shunt_id domain_list | tr -s "\r\n" "\n" | gen_dnsmasq_items "shuntlist" "${fwd_dns}" "${TMP_DNSMASQ_PATH}/shunt_host.conf"
|
||||
echolog " - [$?]$shunt_id分流规则(shuntlist):${fwd_dns:-默认}"
|
||||
done
|
||||
|
||||
#始终使用远程DNS解析代理(黑名单)列表
|
||||
fwd_dns="${TUN_DNS}"
|
||||
@ -1184,21 +1200,23 @@ stop() {
|
||||
echolog "清空并关闭相关程序和缓存完成。"
|
||||
}
|
||||
|
||||
case $1 in
|
||||
arg1=$1
|
||||
shift
|
||||
case $arg1 in
|
||||
get_new_port)
|
||||
get_new_port $2 $3
|
||||
get_new_port $@
|
||||
;;
|
||||
run_socks)
|
||||
run_socks $2 $3 $4 $5 $6
|
||||
run_socks $@
|
||||
;;
|
||||
run_redir)
|
||||
run_redir $2 $3 $4 $5 $6 $7
|
||||
run_redir $@
|
||||
;;
|
||||
node_switch)
|
||||
node_switch $2 $3 $4 $5
|
||||
node_switch $@
|
||||
;;
|
||||
stop)
|
||||
[ "$2" = "force" ] && force_stop
|
||||
[ "$1" = "force" ] && force_stop
|
||||
stop
|
||||
;;
|
||||
start)
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
|
||||
IPSET_LANIPLIST="laniplist"
|
||||
IPSET_VPSIPLIST="vpsiplist"
|
||||
IPSET_SHUNTLIST="shuntlist"
|
||||
IPSET_GFW="gfwlist"
|
||||
#IPSET_GFW6="gfwlist6"
|
||||
IPSET_CHN="chnroute"
|
||||
@ -163,6 +164,7 @@ load_acl() {
|
||||
msg2="${msg2}[$?]除${tcp_no_redir_ports}外的"
|
||||
}
|
||||
msg2="${msg2}所有端口"
|
||||
$ipt_tmp -A PSW $(comment "$remarks") -p tcp $(factor $ip "-s") $(factor $mac "-m mac --mac-source") $(factor $tcp_redir_ports "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $tcp_port $is_tproxy)
|
||||
$ipt_tmp -A PSW $(comment "$remarks") -p tcp $(factor $ip "-s") $(factor $mac "-m mac --mac-source") $(factor $tcp_redir_ports "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $tcp_port $is_tproxy)
|
||||
$ipt_tmp -A PSW $(comment "$remarks") -p tcp $(factor $ip "-s") $(factor $mac "-m mac --mac-source") $(factor $tcp_redir_ports "-m multiport --dport") $(get_redirect_ipt $tcp_proxy_mode $tcp_port $is_tproxy)
|
||||
}
|
||||
@ -180,6 +182,7 @@ load_acl() {
|
||||
msg2="${msg2}[$?]除${udp_no_redir_ports}外的"
|
||||
}
|
||||
msg2="${msg2}所有端口"
|
||||
$ipt_m -A PSW $(comment "$remarks") -p udp $(factor $ip "-s") $(factor $mac "-m mac --mac-source") $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $udp_port TPROXY)
|
||||
$ipt_m -A PSW $(comment "$remarks") -p udp $(factor $ip "-s") $(factor $mac "-m mac --mac-source") $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $udp_port TPROXY)
|
||||
$ipt_m -A PSW $(comment "$remarks") -p udp $(factor $ip "-s") $(factor $mac "-m mac --mac-source") $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $udp_proxy_mode $udp_port TPROXY)
|
||||
}
|
||||
@ -247,6 +250,7 @@ load_acl() {
|
||||
fi
|
||||
[ "$TCP_NO_REDIR_PORTS" != "disable" ] && msg="${msg}除${TCP_NO_REDIR_PORTS}外的"
|
||||
msg="${msg}所有端口"
|
||||
$ipt_tmp -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $TCP_REDIR_PORT1 $is_tproxy)
|
||||
$ipt_tmp -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $TCP_REDIR_PORT1 $is_tproxy)
|
||||
$ipt_tmp -A PSW $(comment "默认") -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $TCP_PROXY_MODE $TCP_REDIR_PORT1 $is_tproxy)
|
||||
echolog "${msg}"
|
||||
@ -276,6 +280,7 @@ load_acl() {
|
||||
msg="UDP默认代理:使用UDP节点1 [$(get_action_chain_name $UDP_PROXY_MODE)](TPROXY:${UDP_REDIR_PORT1})代理"
|
||||
[ "$UDP_NO_REDIR_PORTS" != "disable" ] && msg="${msg}除${TCP_NO_REDIR_PORTS}外的"
|
||||
msg="${msg}所有端口"
|
||||
$ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT $UDP_REDIR_PORT1 TPROXY)
|
||||
$ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT $UDP_REDIR_PORT1 TPROXY)
|
||||
$ipt_m -A PSW $(comment "默认") -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $UDP_PROXY_MODE $UDP_REDIR_PORT1 TPROXY)
|
||||
echolog "${msg}"
|
||||
@ -353,10 +358,17 @@ filter_node() {
|
||||
local proxy_protocol=$(config_n_get $proxy_node protocol)
|
||||
local proxy_type=$(echo $(config_n_get $proxy_node type nil) | tr 'A-Z' 'a-z')
|
||||
[ "$proxy_type" == "nil" ] && echolog " - 节点配置不正常,略过!:${proxy_node}" && return 0
|
||||
if [ "$proxy_protocol" == "_shunt" ]; then
|
||||
if [ "$proxy_protocol" == "_balancing" ]; then
|
||||
#echolog " - 多节点负载均衡(${proxy_type})..."
|
||||
proxy_node=$(config_n_get $proxy_node balancing_node)
|
||||
for _node in $proxy_node; do
|
||||
filter_rules "$_node" "$stream"
|
||||
done
|
||||
elif [ "$proxy_protocol" == "_shunt" ]; then
|
||||
#echolog " - 按请求目的地址分流(${proxy_type})..."
|
||||
local default_node=$(config_n_get $proxy_node default_node nil)
|
||||
filter_rules $default_node $stream
|
||||
:<<!
|
||||
local default_node_address=$(get_host_ip ipv4 $(config_n_get $default_node address) 1)
|
||||
local default_node_port=$(config_n_get $default_node port)
|
||||
|
||||
@ -375,12 +387,7 @@ filter_node() {
|
||||
filter_rules "$(config_n_get $proxy_node $shunt_id)" "$stream" "$shunt_proxy" "$proxy_port"
|
||||
}
|
||||
done
|
||||
elif [ "$proxy_protocol" == "_balancing" ]; then
|
||||
#echolog " - 多节点负载均衡(${proxy_type})..."
|
||||
proxy_node=$(config_n_get $proxy_node balancing_node)
|
||||
for _node in $proxy_node; do
|
||||
filter_rules "$_node" "$stream"
|
||||
done
|
||||
!
|
||||
else
|
||||
#echolog " - 普通节点(${proxy_type})..."
|
||||
filter_rules "$proxy_node" "$stream"
|
||||
@ -396,6 +403,7 @@ add_firewall_rule() {
|
||||
echolog "开始加载防火墙规则..."
|
||||
ipset -! create $IPSET_LANIPLIST nethash
|
||||
ipset -! create $IPSET_VPSIPLIST nethash
|
||||
ipset -! create $IPSET_SHUNTLIST nethash
|
||||
ipset -! create $IPSET_GFW nethash
|
||||
#ipset -! create $IPSET_GFW6 nethash family inet6
|
||||
ipset -! create $IPSET_CHN nethash
|
||||
@ -405,6 +413,10 @@ add_firewall_rule() {
|
||||
ipset -! create $IPSET_BLACKLIST3 nethash
|
||||
ipset -! create $IPSET_WHITELIST nethash
|
||||
|
||||
local shunt_ids=$(uci show $CONFIG | grep "=shunt_rules" | awk -F '.' '{print $2}' | awk -F '=' '{print $1}')
|
||||
for shunt_id in $shunt_ids; do
|
||||
config_n_get $shunt_id ip_list | tr -s "\r\n" "\n" | sed -e "/^$/d" | sed -e "s/^/add $IPSET_SHUNTLIST &/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R
|
||||
done
|
||||
cat $RULES_PATH/chnroute | sed -e "/^$/d" | sed -e "s/^/add $IPSET_CHN &/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R
|
||||
cat $RULES_PATH/chnroute6 | sed -e "/^$/d" | sed -e "s/^/add $IPSET_CHN6 &/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R
|
||||
cat $RULES_PATH/proxy_ip | sed -e "/^$/d" | sed -e "s/^/add $IPSET_BLACKLIST &/g" | awk '{print $0} END{print "COMMIT"}' | ipset -! -R
|
||||
@ -499,6 +511,7 @@ add_firewall_rule() {
|
||||
$ipt_tmp -A PSW_OUTPUT -p tcp -m multiport --dport $TCP_NO_REDIR_PORTS -j RETURN
|
||||
echolog " - [$?]不代理TCP 端口:$TCP_NO_REDIR_PORTS"
|
||||
}
|
||||
$ipt_tmp -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $blist_r
|
||||
$ipt_tmp -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $blist_r
|
||||
$ipt_tmp -A PSW_OUTPUT -p tcp $(factor $TCP_REDIR_PORTS "-m multiport --dport") $p_r
|
||||
fi
|
||||
@ -606,6 +619,7 @@ add_firewall_rule() {
|
||||
$ipt_m -A PSW_OUTPUT -p udp -m multiport --dport $UDP_NO_REDIR_PORTS -j RETURN
|
||||
echolog " - [$?]不代理 UDP 端口:$UDP_NO_REDIR_PORTS"
|
||||
}
|
||||
$ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_SHUNTLIST) $(REDIRECT 1 MARK)
|
||||
$ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(dst $IPSET_BLACKLIST) $(REDIRECT 1 MARK)
|
||||
$ipt_m -A PSW_OUTPUT -p udp $(factor $UDP_REDIR_PORTS "-m multiport --dport") $(get_redirect_ipt $LOCALHOST_UDP_PROXY_MODE 1 MARK)
|
||||
fi
|
||||
@ -647,6 +661,7 @@ del_firewall_rule() {
|
||||
|
||||
ipset -F $IPSET_LANIPLIST >/dev/null 2>&1 && ipset -X $IPSET_LANIPLIST >/dev/null 2>&1 &
|
||||
ipset -F $IPSET_VPSIPLIST >/dev/null 2>&1 && ipset -X $IPSET_VPSIPLIST >/dev/null 2>&1 &
|
||||
#ipset -F $IPSET_SHUNTLIST >/dev/null 2>&1 && ipset -X $IPSET_SHUNTLIST >/dev/null 2>&1 &
|
||||
#ipset -F $IPSET_GFW >/dev/null 2>&1 && ipset -X $IPSET_GFW >/dev/null 2>&1 &
|
||||
#ipset -F $IPSET_GFW6 >/dev/null 2>&1 && ipset -X $IPSET_GFW6 >/dev/null 2>&1 &
|
||||
#ipset -F $IPSET_CHN >/dev/null 2>&1 && ipset -X $IPSET_CHN >/dev/null 2>&1 &
|
||||
@ -661,6 +676,7 @@ del_firewall_rule() {
|
||||
flush_ipset() {
|
||||
ipset -F $IPSET_LANIPLIST >/dev/null 2>&1 && ipset -X $IPSET_LANIPLIST >/dev/null 2>&1 &
|
||||
ipset -F $IPSET_VPSIPLIST >/dev/null 2>&1 && ipset -X $IPSET_VPSIPLIST >/dev/null 2>&1 &
|
||||
ipset -F $IPSET_SHUNTLIST >/dev/null 2>&1 && ipset -X $IPSET_SHUNTLIST >/dev/null 2>&1 &
|
||||
ipset -F $IPSET_GFW >/dev/null 2>&1 && ipset -X $IPSET_GFW >/dev/null 2>&1 &
|
||||
#ipset -F $IPSET_GFW6 >/dev/null 2>&1 && ipset -X $IPSET_GFW6 >/dev/null 2>&1 &
|
||||
ipset -F $IPSET_CHN >/dev/null 2>&1 && ipset -X $IPSET_CHN >/dev/null 2>&1 &
|
||||
|
||||
@ -56,7 +56,7 @@ menu "Advanced configuration options (for developers)"
|
||||
|
||||
config CCACHE
|
||||
bool "Use ccache"
|
||||
default n
|
||||
default y
|
||||
help
|
||||
Compiler cache; see https://ccache.samba.org/
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user