Merge Mainline

This commit is contained in:
CN_SZTL 2020-09-20 13:06:22 +08:00
commit 44aa252fad
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
18 changed files with 73 additions and 78 deletions

View File

@ -52,12 +52,6 @@ config dns_servers
option ip '223.5.5.5'
option enabled '1'
config dns_servers
option enabled '1'
option group 'nameserver'
option ip 'doh.rixcloud.dev/dns-query'
option type 'https'
config dns_servers
option type 'https'
option group 'fallback'

View File

@ -122,6 +122,7 @@ kill_clash()
yml_merge()
{
#合并文件
sed -i "s/^ \{0,\}Proxy:/proxies:/g" "$PROXY_FILE" 2>/dev/null
cat "$CHANGE_FILE" "$DNS_FILE" "$PROXY_PROVIDER_FILE" "$PROXY_FILE" "$GROUP_FILE" "$RULE_PROVIDER_FILE" "$SCRIPT_FILE" "$RULE_FILE" > "$CONFIG_FILE" 2>/dev/null
}
@ -277,7 +278,6 @@ yml_dns_check()
cat >> "$DNS_FILE" <<-EOF
- 114.114.114.114
- 119.29.29.29
- https://doh.rixcloud.dev/dns-query
fallback:
- https://cloudflare-dns.com/dns-query
- https://dns.google/dns-query
@ -1446,7 +1446,6 @@ if [ "$enable" -eq 1 ] && [ -f "$CONFIG_FILE" ]; then
nohup /usr/share/openclash/openclash_core.sh "$core_type" &
exit 0
}
sed -i "s/^ \{0,\}Proxy:/proxies:/g" "$CONFIG_FILE" 2>/dev/null
ulimit -SHn 65535 2>/dev/null
config_reload=$(uci get openclash.config.config_reload 2>/dev/null)
if [ -n "$(pidof clash)" ] && [ "$core_type" != "Tun" ] && [ "$config_reload" != "0" ]; then

View File

@ -21,10 +21,5 @@
dnscaching_state.innerHTML = status.dnscaching_state ? '<em><b><font color=green><%:RUNNING%></font></b></em>' : '<em><b><font color=red><%:NOT RUNNING%></font></b></em>';
}
});
function openwebui() {
var url = window.location.host+":3001";
window.open('http://'+url,'target','');
};
//]]>
//]]></script>

View File

@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=naiveproxy
PKG_VERSION:=85.0.4183.83-3
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/klzgrad/naiveproxy/tar.gz/v$(PKG_VERSION)?

View File

@ -4,6 +4,9 @@
# --------------------------------------------------------
# Init build dependencies for naiveproxy
# Exit immediately with any error
set -e
# Read args from shell
target_arch="$1"
target_board="$2"
@ -21,6 +24,7 @@ ldso_path="/lib/$(find "${toolchain_dir}/" | grep -Eo "ld-musl-[a-z0-9_-]+\\.so\
# OS detection
[ "$(uname)" != "Linux" -o "$(uname -m)" != "x86_64" ] && { echo -e "Support Linux AMD64 only."; exit 1; }
[ "$(free | grep "Mem" | awk -F ' ' '{print $2}')" -lt "4000000" ] && { echo -e "Memory too low."; exit 1; }
cd "$PWD/src"

View File

@ -7,13 +7,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=subconverter
PKG_VERSION:=0.6.3-2abbd90
PKG_VERSION:=0.6.4
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/tindy2013/subconverter.git
PKG_SOURCE_VERSION:=2abbd901e4211a771704aaed336cfb1a80b26cf0
PKG_MIRROR_HASH:=de349763b748e80b076c1ebed87c5df80e3aa0fcead472bde768d205be5084b1
PKG_SOURCE_VERSION:=ab4d7543cec46cd9e45680f3b43d82de16f38a3d
PKG_MIRROR_HASH:=c5dc3c224d9229df09428a28a1306bba28790b328f8d644ae41e929bee58426c
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
@ -23,7 +23,6 @@ PKG_LICENSE:=GPLv3
PKG_LICENSE_FILES:=LICENSE
PKG_MAINTAINER:=[CTCGFW]Project OpenWrt
PKG_INSTALL:=1
PKG_USE_MIPS16:=0
PKG_BUILD_PARALLEL:=1
PKG_BUILD_DEPENDS:=duktape jpcre2 rapidjson
@ -36,7 +35,7 @@ define Package/$(PKG_NAME)
CATEGORY:=Utilities
TITLE:=Utility to convert between various subscription format.
URL:=https://github.com/tindy2013/subconverter
DEPENDS:=+libpthread +libstdcpp +libevent2 +libyaml-cpp +libpcre2 +libcurl +libopenssl +zlib
DEPENDS:=+libpthread +libstdcpp +libevent2 +libyaml-cpp +libpcre2 +libcurl +zlib
endef
define Package/$(PKG_NAME)/description

View File

@ -0,0 +1,12 @@
diff --git a/src/misc.h b/src/misc.h
index b98cdc9..484c1e1 100644
--- a/src/misc.h
+++ b/src/misc.h
@@ -7,6 +7,7 @@
#include <algorithm>
#include <sys/types.h>
#include <dirent.h>
+#include <string.h>
#include <yaml-cpp/yaml.h>

View File

@ -7,8 +7,8 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-passwall
PKG_VERSION:=3.9
PKG_RELEASE:=60
PKG_DATE:=20200917
PKG_RELEASE:=61
PKG_DATE:=20200919
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)

View File

@ -73,7 +73,7 @@ o:value("default", translate("Default"))
o:value("disable", translate("No Proxy"))
o:value("global", translate("Global Proxy"))
o:value("gfwlist", translate("GFW List"))
o:value("chnroute", translate("Game Mode") .. "" .. translate("Not China List") .. "")
o:value("chnroute", translate("Game Mode"))
o:value("returnhome", translate("China List"))
---- TCP No Redir Ports

View File

@ -249,26 +249,28 @@ o.rmempty = false
o:value("disable", translate("No Proxy"))
o:value("global", translate("Global Proxy"))
o:value("gfwlist", translate("GFW List"))
o:value("chnroute", translate("Game Mode") .. "" .. translate("Not China List") .. "")
o:value("chnroute", translate("Game Mode"))
o:value("returnhome", translate("China List"))
---- Localhost TCP Proxy Mode
o = s:taboption("Proxy", ListValue, "localhost_tcp_proxy_mode", translate("Router Localhost") .. "TCP" .. translate("Proxy Mode"))
-- o.description = translate("The server client can also use this rule to scientifically surf the Internet.")
o:value("default", translate("Default"))
o:value("global", translate("Global Proxy"))
o:value("gfwlist", translate("GFW List"))
o:value("chnroute", translate("Not China List"))
o:value("global", translate("Global Proxy"))
o:value("returnhome", translate("China List"))
o.default = "default"
o.rmempty = false
---- Localhost UDP Proxy Mode
o = s:taboption("Proxy", ListValue, "localhost_udp_proxy_mode", translate("Router Localhost") .. "UDP" .. translate("Proxy Mode"))
o:value("disable", translate("No Proxy"))
o:value("default", translate("Default"))
o:value("gfwlist", translate("GFW List"))
o:value("chnroute", translate("Game Mode") .. "" .. translate("Not China List") .. "")
o:value("global", translate("Global Proxy"))
o:value("gfwlist", translate("GFW List"))
o:value("chnroute", translate("Game Mode"))
o:value("returnhome", translate("China List"))
o:value("disable", translate("No Proxy"))
o.default = "default"
o.rmempty = false
@ -287,7 +289,10 @@ function s.create(e, t)
end
o = s:option(DummyValue, "status", translate("Status"))
o.template = appname .. "/global/socks_status"
o.rawhtml = true
o.cfgvalue = function(t, n)
return string.format('<font class="_status" socks_id="%s"></font>', n)
end
---- Enable
o = s:option(Flag, "enabled", translate("Enable"))
@ -306,9 +311,6 @@ o.default = 9050
o.datatype = "port"
o.rmempty = false
---- Tips
--m:append(Template(appname .. "/global/tips"))
m:append(Template(appname .. "/global/footer"))
--[[

View File

@ -133,10 +133,15 @@ end
---- Ping
o = s:option(DummyValue, "ping", translate("Latency"))
o.width = "8%"
if not nodes_ping:find("auto_ping") then
o.template = appname .. "/node_list/ping"
else
o.template = appname .. "/node_list/auto_ping"
o.rawhtml = true
o.cfgvalue = function(t, n)
local result = "---"
if not nodes_ping:find("auto_ping") then
result = string.format('<span class="ping"><a href="javascript:void(0)" onclick="javascript:ping_node(\'%s\',this)">Ping</a></span>', n)
else
result = string.format('<span class="ping_value" cbiid="%s">---</span>', n)
end
return result
end
m:append(Template(appname .. "/node_list/node_list"))

View File

@ -34,8 +34,10 @@ e.width = "5%"
e.rmempty = false
e = t:option(DummyValue, "status", translate("Status"))
e.template = "passwall/server/users_status"
e.value = translate("Collecting data...")
e.rawhtml = true
e.cfgvalue = function(t, n)
return string.format('<font class="_users_status">%s</font>', translate("Collecting data..."))
end
e = t:option(DummyValue, "remarks", translate("Remarks"))
e.width = "15%"

View File

@ -1,3 +0,0 @@
<%+cbi/valueheader%>
<font class="_status" socks_id="<%=section%>"></font>
<%+cbi/valuefooter%>

View File

@ -1,3 +0,0 @@
<%+cbi/valueheader%>
<span class="auto_ping_value" cbiid="<%=section%>">---</span>
<%+cbi/valuefooter%>

View File

@ -34,6 +34,9 @@ table td, .table .td {
._select {
background: #dad8d8;
}
.ping a:hover{
text-decoration : underline;
}
</style>
<script type="text/javascript">
@ -239,9 +242,9 @@ table td, .table .td {
/* 自动Ping */
var nodes = [];
const auto_ping_value = document.getElementsByClassName('auto_ping_value');
for (var i = 0; i < auto_ping_value.length; i++) {
var cbi_id = auto_ping_value[i].getAttribute("cbiid");
const ping_value = document.getElementsByClassName('ping_value');
for (var i = 0; i < ping_value.length; i++) {
var cbi_id = ping_value[i].getAttribute("cbiid");
var full = get_address_full(cbi_id);
if (full != null) {
var flag = false;
@ -277,15 +280,15 @@ table td, .table .td {
var strs = dom.indexs.split(",");
for (var i = 0; i < strs.length; i++) {
if (result.ping == null || result.ping.trim() == "") {
auto_ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
} else {
var ping = parseInt(result.ping);
if (ping < 100)
auto_ping_value[strs[i]].innerHTML = "<font style='color:green'>" + result.ping + " ms" + "</font>";
ping_value[strs[i]].innerHTML = "<font style='color:green'>" + result.ping + " ms" + "</font>";
else if (ping < 200)
auto_ping_value[strs[i]].innerHTML = "<font style='color:#fb9a05'>" + result.ping + " ms" + "</font>";
ping_value[strs[i]].innerHTML = "<font style='color:#fb9a05'>" + result.ping + " ms" + "</font>";
else if (ping >= 200)
auto_ping_value[strs[i]].innerHTML = "<font style='color:red'>" + result.ping + " ms" + "</font>";
ping_value[strs[i]].innerHTML = "<font style='color:red'>" + result.ping + " ms" + "</font>";
}
}
}
@ -295,7 +298,7 @@ table td, .table .td {
function(x) {
var strs = dom.indexs.split(",");
for (var i = 0; i < strs.length; i++) {
auto_ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
}
res();
}
@ -333,15 +336,15 @@ table td, .table .td {
var strs = indexs.split(",");
for (var i = 0; i < strs.length; i++) {
if (result.ping == null || result.ping.trim() == "") {
auto_ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
} else {
var ping = parseInt(result.ping);
if (ping < 100)
auto_ping_value[strs[i]].innerHTML = "<font style='color:green'>" + result.ping + " ms" + "</font>";
ping_value[strs[i]].innerHTML = "<font style='color:green'>" + result.ping + " ms" + "</font>";
else if (ping < 200)
auto_ping_value[strs[i]].innerHTML = "<font style='color:#fb9a05'>" + result.ping + " ms" + "</font>";
ping_value[strs[i]].innerHTML = "<font style='color:#fb9a05'>" + result.ping + " ms" + "</font>";
else if (ping >= 200)
auto_ping_value[strs[i]].innerHTML = "<font style='color:red'>" + result.ping + " ms" + "</font>";
ping_value[strs[i]].innerHTML = "<font style='color:red'>" + result.ping + " ms" + "</font>";
}
}
}
@ -351,7 +354,7 @@ table td, .table .td {
function(x) {
var strs = indexs.split(",");
for (var i = 0; i < strs.length; i++) {
auto_ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
ping_value[strs[i]].innerHTML = "<font style='color:red'><%:Timeout%></font>";
}
index++;
return auto_ping();

View File

@ -1,11 +0,0 @@
<style>
.ping a:hover{
text-decoration : underline;
}
</style>
<%+cbi/valueheader%>
<span class="ping">
<a href="javascript:void(0)" onclick="javascript:ping_node('<%=section%>',this)">Ping</a>
</span>
<%+cbi/valuefooter%>

View File

@ -1,3 +0,0 @@
<%+cbi/valueheader%>
<font class="_users_status" hint="<%=self:cfgvalue(section)%>">--</font>
<%+cbi/valuefooter%>

View File

@ -844,9 +844,9 @@ add_dnsmasq() {
hosts_foreach "servers" host_from_url | grep -v "google.c" | grep '[a-zA-Z]$' | sort -u | gen_dnsmasq_items "vpsiplist" "${fwd_dns}" "${TMP_DNSMASQ_PATH}/01-vpsiplist_host.conf"
echolog " - [$?]节点列表中的域名(vpsiplist)${fwd_dns:-默认}"
#始终用国内DNS解析直连白名单列表
#始终用国内DNS解析直连白名单列表
fwd_dns="${LOCAL_DNS}"
#如果使用Chinadns-NG直接交给Chinadns-NG处理
#如果使用ChinaDNS-NG则直接交给它处理
[ "$CHINADNS_NG" = "1" ] && unset fwd_dns
#如果没使用chnlist直接使用默认DNS
[ "${USE_CHNLIST}" = "0" ] && unset fwd_dns
@ -858,9 +858,9 @@ add_dnsmasq() {
fwd_dns="${LOCAL_DNS}"
[ -n "${returnhome}" ] || [ -n "${chnlist}" ] && {
[ -n "${global}" ] && unset fwd_dns
#如果使用Chinadns-NG直接交给Chinadns-NG处理
#如果使用Chinadns-NG直接交给处理
[ "$CHINADNS_NG" = "1" ] && unset fwd_dns
#如果使用回国模式,设置dns为远程DNS。
#如果使用回国模式,设置DNS为远程DNS。
[ -n "${returnhome}" ] && fwd_dns="${TUN_DNS}"
sort -u "${RULES_PATH}/chnlist" | gen_dnsmasq_items "chnroute" "${fwd_dns}" "${TMP_DNSMASQ_PATH}/chinalist_host.conf"
echolog " - [$?]中国域名表(chnroute)${fwd_dns:-默认}"
@ -869,7 +869,7 @@ add_dnsmasq() {
#始终使用远程DNS解析代理黑名单列表
fwd_dns="${TUN_DNS}"
#如果使用Chinadns-NG直接交给Chinadns-NG处理
#如果使用Chinadns-NG直接交给处理
[ "$CHINADNS_NG" = "1" ] && unset fwd_dns
#如果使用chnlist直接使用默认DNS
[ "${USE_CHNLIST}" = "1" ] && unset fwd_dns
@ -881,7 +881,7 @@ add_dnsmasq() {
#如果没有使用回国模式
[ -z "${returnhome}" ] && {
fwd_dns="${TUN_DNS}"
#如果使用Chinadns-NG直接交给Chinadns-NG处理
#如果使用Chinadns-NG直接交给处理
[ "$CHINADNS_NG" = "1" ] && unset fwd_dns
#如果使用chnlist直接使用默认DNS
[ "${USE_CHNLIST}" = "1" ] && unset fwd_dns
@ -893,7 +893,7 @@ add_dnsmasq() {
#如果开启了通过代理订阅
[ "$(config_t_get global_subscribe subscribe_proxy 0)" = "1" ] && {
fwd_dns="${TUN_DNS}"
#如果使用Chinadns-NG直接交给Chinadns-NG处理
#如果使用Chinadns-NG直接交给处理
[ "$CHINADNS_NG" = "1" ] && unset fwd_dns
#如果使用chnlist直接使用默认DNS
[ "${USE_CHNLIST}" = "1" ] && unset fwd_dns
@ -912,7 +912,7 @@ add_dnsmasq() {
#兼容旧版dnsmasq
echo "conf-dir=${TMP_DNSMASQ_PATH}" > "${DNSMASQ_PATH}/dnsmasq-${CONFIG}.conf"
[ "${USE_CHNLIST}" = "1" ] && servers="${TUN_DNS}"
[ "${USE_CHNLIST}" = "1" ] && [ -z "${returnhome}" ] && [ -n "${chnlist}" ] && servers="${TUN_DNS}"
[ -n "${chnlist}" ] && msg="中国列表以外"
[ -n "${returnhome}" ] && msg="中国列表"
[ -n "${global}" ] && msg="全局"