update 2023-03-10 16:24:41

This commit is contained in:
github-actions[bot] 2023-03-10 16:24:41 +08:00
parent 3f2c095904
commit 2c90937f2c
15 changed files with 180 additions and 212 deletions

View File

@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-passwall
PKG_VERSION:=4.60
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_CONFIG_DEPENDS:= \
CONFIG_PACKAGE_$(PKG_NAME)_Iptables_Transparent_Proxy \

View File

@ -531,7 +531,13 @@ tlsflow.default = ""
tlsflow:value("", translate("Disable"))
tlsflow:value("xtls-rprx-vision")
tlsflow:value("xtls-rprx-vision-udp443")
tlsflow:depends({ type = "Xray", protocol = "vless", tls = true })
tlsflow:depends({ type = "Xray", protocol = "vless", tls = true, transport = "tcp" })
reality = s:option(Flag, "reality", translate("REALITY"), translate("Only recommend to use with VLESS-TCP-XTLS-Vision."))
reality.default = 0
reality:depends({ type = "Xray", tls = true, transport = "tcp" })
reality:depends({ type = "Xray", tls = true, transport = "h2" })
reality:depends({ type = "Xray", tls = true, transport = "grpc" })
alpn = s:option(ListValue, "alpn", translate("alpn"))
alpn.default = "default"
@ -540,7 +546,7 @@ alpn:value("h2,http/1.1")
alpn:value("h2")
alpn:value("http/1.1")
alpn:depends({ type = "V2ray", tls = true })
alpn:depends({ type = "Xray", tls = true })
alpn:depends({ type = "Xray", tls = true, reality = false })
-- minversion = s:option(Value, "minversion", translate("minversion"))
-- minversion.default = "1.3"
@ -574,10 +580,10 @@ tls_serverName:depends("type", "Hysteria")
tls_allowInsecure = s:option(Flag, "tls_allowInsecure", translate("allowInsecure"), translate("Whether unsafe connections are allowed. When checked, Certificate validation will be skipped."))
tls_allowInsecure.default = "0"
tls_allowInsecure:depends("tls", true)
tls_allowInsecure:depends({ tls = true, reality = false })
tls_allowInsecure:depends("type", "Hysteria")
xray_fingerprint = s:option(Value, "xray_fingerprint", translate("Finger Print"))
xray_fingerprint = s:option(Value, "xray_fingerprint", translate("Finger Print"), translate("Avoid using randomized, unless you have to."))
xray_fingerprint:value("", translate("Disable"))
xray_fingerprint:value("chrome")
xray_fingerprint:value("firefox")
@ -590,7 +596,7 @@ xray_fingerprint:value("qq")
xray_fingerprint:value("random")
xray_fingerprint:value("randomized")
xray_fingerprint.default = ""
xray_fingerprint:depends({ type = "Xray", tls = true })
xray_fingerprint:depends({ type = "Xray", tls = true, reality = false })
function xray_fingerprint.cfgvalue(self, section)
return m:get(section, "fingerprint")
end
@ -601,6 +607,37 @@ function xray_fingerprint.remove(self, section)
m:del(section, "fingerprint")
end
-- [[ REALITY部分 ]] --
reality_publicKey = s:option(Value, "reality_publicKey", translate("Public Key"))
reality_publicKey:depends({ type = "Xray", tls = true, reality = true })
reality_shortId = s:option(Value, "reality_shortId", translate("Short Id"))
reality_shortId:depends({ type = "Xray", tls = true, reality = true })
reality_spiderX = s:option(Value, "reality_spiderX", translate("Spider X"))
reality_spiderX.placeholder = "/"
reality_spiderX:depends({ type = "Xray", tls = true, reality = true })
reality_fingerprint = s:option(Value, "reality_fingerprint", translate("Finger Print"), translate("Avoid using randomized, unless you have to."))
reality_fingerprint:value("chrome")
reality_fingerprint:value("firefox")
reality_fingerprint:value("safari")
reality_fingerprint:value("ios")
reality_fingerprint:value("android")
reality_fingerprint:value("edge")
reality_fingerprint:value("360")
reality_fingerprint:value("qq")
reality_fingerprint:value("random")
reality_fingerprint:value("randomized")
reality_fingerprint.default = "chrome"
reality_fingerprint:depends({ type = "Xray", tls = true, reality = true })
function reality_fingerprint.cfgvalue(self, section)
return m:get(section, "fingerprint")
end
function reality_fingerprint.write(self, section, value)
m:set(section, "fingerprint", value)
end
trojan_transport = s:option(ListValue, "trojan_transport", translate("Transport"))
trojan_transport:value("original", translate("Original"))
trojan_transport:value("ws", "WebSocket")
@ -691,6 +728,7 @@ tcp_guise_http_host:depends("tcp_guise", "http")
-- HTTP路径
tcp_guise_http_path = s:option(DynamicList, "tcp_guise_http_path", translate("HTTP Path"))
tcp_guise_http_path.placeholder = "/"
tcp_guise_http_path:depends("tcp_guise", "http")
-- [[ mKCP部分 ]]--
@ -736,6 +774,7 @@ ws_host:depends("ss_transport", "ws")
ws_host:depends("trojan_transport", "ws")
ws_path = s:option(Value, "ws_path", translate("WebSocket Path"))
ws_path.placeholder = "/"
ws_path:depends("transport", "ws")
ws_path:depends("ss_transport", "ws")
ws_path:depends("trojan_transport", "ws")
@ -757,6 +796,7 @@ h2_host:depends("transport", "h2")
h2_host:depends("ss_transport", "h2")
h2_path = s:option(Value, "h2_path", translate("HTTP/2 Path"))
h2_path.placeholder = "/"
h2_path:depends("transport", "h2")
h2_path:depends("ss_transport", "h2")
@ -844,7 +884,7 @@ mux:depends({ type = "V2ray", protocol = "socks" })
mux:depends({ type = "V2ray", protocol = "shadowsocks" })
mux:depends({ type = "V2ray", protocol = "trojan" })
mux:depends({ type = "Xray", protocol = "vmess" })
mux:depends({ type = "Xray", protocol = "vless" })
mux:depends({ type = "Xray", protocol = "vless", tlsflow = "" })
mux:depends({ type = "Xray", protocol = "http" })
mux:depends({ type = "Xray", protocol = "socks" })
mux:depends({ type = "Xray", protocol = "shadowsocks" })

View File

@ -99,6 +99,9 @@ function gen_outbound(flag, node, tag, proxy_table)
else
if node.tls and node.tls == "1" then
node.stream_security = "tls"
if node.type == "Xray" and node.reality and node.reality == "1" then
node.stream_security = "reality"
end
end
end
@ -126,6 +129,13 @@ function gen_outbound(flag, node, tag, proxy_table)
allowInsecure = (node.tls_allowInsecure == "1") and true or false,
fingerprint = (node.type == "Xray" and node.fingerprint and node.fingerprint ~= "") and node.fingerprint or nil
} or nil,
realitySettings = (node.stream_security == "reality") and {
serverName = node.tls_serverName,
publicKey = node.reality_publicKey,
shortId = node.reality_shortId or "",
spiderX = node.reality_spiderX or "/",
fingerprint = (node.type == "Xray" and node.fingerprint and node.fingerprint ~= "") and node.fingerprint or "chrome"
} or nil,
tcpSettings = (node.transport == "tcp" and node.protocol ~= "socks") and {
header = {
type = node.tcp_guise or "none",
@ -149,14 +159,14 @@ function gen_outbound(flag, node, tag, proxy_table)
header = {type = node.mkcp_guise}
} or nil,
wsSettings = (node.transport == "ws") and {
path = node.ws_path or "",
path = node.ws_path or "/",
headers = (node.ws_host ~= nil) and
{Host = node.ws_host} or nil,
maxEarlyData = tonumber(node.ws_maxEarlyData) or nil,
earlyDataHeaderName = (node.ws_earlyDataHeaderName) and node.ws_earlyDataHeaderName or nil
} or nil,
httpSettings = (node.transport == "h2") and {
path = node.h2_path,
path = node.h2_path or "/",
host = node.h2_host,
read_idle_timeout = tonumber(node.h2_read_idle_timeout) or nil,
health_check_timeout = tonumber(node.h2_health_check_timeout) or nil

View File

@ -115,6 +115,9 @@ msgstr "过滤模式"
msgid "TCP node must be '%s' type to use FakeDNS."
msgstr "TCP 节点必须是 '%s' 类型才能使用 FakeDNS。"
msgid "Direct DNS"
msgstr "直连 DNS"
msgid "Remote DNS"
msgstr "远程 DNS"
@ -439,6 +442,9 @@ msgstr "证书路径"
msgid "Finger Print"
msgstr "指纹伪造"
msgid "Avoid using randomized, unless you have to."
msgstr "避免使用 randomized , 除非你必须要。"
msgid "Original"
msgstr "原版"
@ -979,8 +985,8 @@ msgstr "从文件中加载 IP: 形如'ext:file:tag'必须以ext:(小写)
msgid "Clear logs"
msgstr "清空日志"
msgid "Need node support required"
msgstr "需要节点支持"
msgid "Only recommend to use with VLESS-TCP-XTLS-Vision."
msgstr "只推荐与 VLESS-TCP-XTLS-Vision 搭配使用。"
msgid "Password"
msgstr "密码"

View File

@ -3,7 +3,21 @@
[[ "$ACTION" == "ifup" && $(uci get "passwall.@global[0].enabled") == "1" ]] && {
default_device=$(ip route | grep default | awk -F 'dev ' '{print $2}' | awk '{print $1}')
[ "$default_device" == "$DEVICE" ] && {
LOCK_FILE_DIR=/var/lock
[ ! -d ${LOCK_FILE_DIR} ] && mkdir -p ${LOCK_FILE_DIR}
LOCK_FILE="${LOCK_FILE_DIR}/passwall_ifup.lock"
if [ -s ${LOCK_FILE} ]; then
SPID=$(cat ${LOCK_FILE})
if [ -e /proc/${SPID}/status ]; then
exit 1
fi
cat /dev/null > ${LOCK_FILE}
fi
echo $$ > ${LOCK_FILE}
/etc/init.d/passwall restart
echo "passwall: restart when $INTERFACE ifup" > /dev/kmsg
rm -rf ${LOCK_FILE}
}
}

View File

@ -33,7 +33,12 @@ unlock() {
}
boot() {
$APP_FILE boot
local delay=$(uci -q get ${CONFIG}.@global_delay[0].start_delay || echo 1)
if [ "$delay" -gt 0 ]; then
echolog "执行启动延时 $delay 秒后再启动!"
sleep $delay
fi
restart
}
start() {

View File

@ -1553,16 +1553,6 @@ acl_app() {
}
}
boot() {
local delay=$(config_t_get global_delay start_delay 1)
if [ "$delay" -gt 0 ]; then
echolog "执行启动延时 $delay 秒后再启动!"
sleep $delay && start >/dev/null 2>&1 &
else
start
fi
}
start() {
ulimit -n 65535
start_haproxy
@ -1703,7 +1693,4 @@ stop)
start)
start
;;
boot)
boot
;;
esac

File diff suppressed because it is too large Load Diff

View File

@ -384,6 +384,7 @@
2400:e0c0::/32
2400:e5c0::/32
2400:e680::/32
2400:e7e0::/32
2400:e880::/32
2400:ebc0::/32
2400:edc0::/32
@ -407,7 +408,6 @@
2401:12c0::/32
2401:140::/32
2401:15c0::/32
2401:1740::/32
2401:18c0::/32
2401:1940::/32
2401:19c0::/32

View File

@ -7,8 +7,8 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Design Theme
LUCI_DEPENDS:=
PKG_VERSION:=5.4.2
PKG_RELEASE:=20230309
PKG_VERSION:=5.4.3
PKG_RELEASE:=20230310
include $(TOPDIR)/feeds/luci/luci.mk

View File

@ -120,8 +120,8 @@
}
@font-face{
font-family: 'Cocon-Regular-Font';
src : url('../fonts/Cocon-Regular-Font.otf') format('opentype');
font-family: 'GenJyuuGothic-Medium';
src : url('../fonts/GenJyuuGothic-Medium.otf') format('opentype');
}
::-webkit-scrollbar {
@ -1013,7 +1013,7 @@ padding:0;
header > .container > .brand {
font-size: 25px;
font-family: "Cocon-Regular-Font";
font-family: "GenJyuuGothic-Medium";
/*font-weight:bold;*/
line-height:60px;
/*color: white;*/

File diff suppressed because one or more lines are too long

View File

@ -6,12 +6,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=sing-box
PKG_VERSION:=1.2-beta7
PKG_VERSION:=1.2-beta8
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/SagerNet/sing-box/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=f0c6d438fff54ac5dc0ff8ef01a2a016dc9dc8a6dd7e428fe7546d38daaa6e63
PKG_HASH:=dd2e843cbb9698f32ececd946d5f0a414977bc92f605f50b60f424bf7a5bee56
PKG_LICENSE:=GPL-3.0
PKG_LICENSE_FILE:=LICENSE