Sync 2026-05-20 00:34:17

This commit is contained in:
github-actions[bot] 2026-05-20 00:34:17 +08:00
parent 9a2ef6ebbc
commit 75dd89aac0
10 changed files with 135 additions and 126 deletions

View File

@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-passwall
PKG_VERSION:=26.5.11
PKG_RELEASE:=128
PKG_RELEASE:=129
PKG_PO_VERSION:=$(PKG_VERSION)
PKG_CONFIG_DEPENDS:= \

View File

@ -194,8 +194,8 @@ if not is_file_nonzero(file_vpslist) then
end
if is_file_nonzero(file_vpslist) then
local sets = {
setflag .. "passwall_vps",
setflag .. "passwall_vps6"
setflag .. "psw_vps",
setflag .. "psw_vps6"
}
tmp_lines = {
"group vpslist",
@ -240,8 +240,8 @@ if USE_DIRECT_LIST == "1" and not fs.access(file_direct_host) then
end
if USE_DIRECT_LIST == "1" and is_file_nonzero(file_direct_host) then
local sets = {
setflag .. "passwall_white",
setflag .. "passwall_white6"
setflag .. "psw_white",
setflag .. "psw_white6"
}
tmp_lines = {
"group directlist",
@ -286,13 +286,13 @@ if USE_PROXY_LIST == "1" and not fs.access(file_proxy_host) then
end
if USE_PROXY_LIST == "1" and is_file_nonzero(file_proxy_host) then
local sets = {
setflag .. "passwall_black",
setflag .. "passwall_black6"
setflag .. "psw_black",
setflag .. "psw_black6"
}
if FLAG ~= "default" then
sets = {
setflag .. "passwall_" .. FLAG .. "_black",
setflag .. "passwall_" .. FLAG .. "_black6"
setflag .. "psw_" .. FLAG .. "_black",
setflag .. "psw_" .. FLAG .. "_black6"
}
end
tmp_lines = {
@ -310,13 +310,13 @@ end
--GFW列表
if GFWLIST == "1" and is_file_nonzero(RULES_PATH .. "/gfwlist") then
local sets = {
setflag .. "passwall_gfw",
setflag .. "passwall_gfw6"
setflag .. "psw_gfw",
setflag .. "psw_gfw6"
}
if FLAG ~= "default" then
sets = {
setflag .. "passwall_" .. FLAG .. "_gfw",
setflag .. "passwall_" .. FLAG .. "_gfw6"
setflag .. "psw_" .. FLAG .. "_gfw",
setflag .. "psw_" .. FLAG .. "_gfw6"
}
end
tmp_lines = {
@ -333,8 +333,8 @@ if CHNLIST ~= "0" and is_file_nonzero(RULES_PATH .. "/chnlist") then
if CHNLIST == "direct" then
tmp_lines = {
"chnlist-file " .. RULES_PATH .. "/chnlist",
"ipset-name4 " .. setflag .. "passwall_chn",
"ipset-name6 " .. setflag .. "passwall_chn6",
"ipset-name4 " .. setflag .. "psw_chn",
"ipset-name6 " .. setflag .. "psw_chn6",
"add-tagchn-ip",
"chnlist-first"
}
@ -345,8 +345,8 @@ if CHNLIST ~= "0" and is_file_nonzero(RULES_PATH .. "/chnlist") then
--回中国模式
if CHNLIST == "proxy" then
local sets = {
setflag .. "passwall_chn",
setflag .. "passwall_chn6"
setflag .. "psw_chn",
setflag .. "psw_chn6"
}
tmp_lines = {
"group chn_proxy",
@ -445,13 +445,13 @@ if IS_SHUNT_NODE then
end
local sets = {
setflag .. "passwall_shunt",
setflag .. "passwall_shunt6"
setflag .. "psw_shunt",
setflag .. "psw_shunt6"
}
if FLAG ~= "default" then
sets = {
setflag .. "passwall_" .. FLAG .. "_shunt",
setflag .. "passwall_" .. FLAG .. "_shunt6"
setflag .. "psw_" .. FLAG .. "_shunt",
setflag .. "psw_" .. FLAG .. "_shunt6"
}
end

View File

@ -372,8 +372,8 @@ function add_rule(var)
fwd_dns = nil
else
local sets = {
setflag_4 .. "passwall_vps",
setflag_6 .. "passwall_vps6"
setflag_4 .. "psw_vps",
setflag_6 .. "psw_vps6"
}
local function process_address(address)
address = (address or ""):lower()
@ -406,8 +406,8 @@ function add_rule(var)
end
if fwd_dns then
local sets = {
setflag_4 .. "passwall_white",
setflag_6 .. "passwall_white6"
setflag_4 .. "psw_white",
setflag_6 .. "psw_white6"
}
--始终用国内DNS解析直连白名单列表
for line in io.lines("/usr/share/passwall/rules/direct_host") do
@ -431,11 +431,11 @@ function add_rule(var)
fwd_dns = nil
end
if fwd_dns then
local set_name = "passwall_black"
local set6_name = "passwall_black6"
local set_name = "psw_black"
local set6_name = "psw_black6"
if FLAG ~= "default" then
set_name = "passwall_" .. FLAG .. "_black"
set6_name = "passwall_" .. FLAG .. "_black6"
set_name = "psw_" .. FLAG .. "_black"
set6_name = "psw_" .. FLAG .. "_black6"
end
local sets = {
setflag_4 .. set_name
@ -471,11 +471,11 @@ function add_rule(var)
fwd_dns = nil
end
if fwd_dns then
local set_name = "passwall_gfw"
local set6_name = "passwall_gfw6"
local set_name = "psw_gfw"
local set6_name = "psw_gfw6"
if FLAG ~= "default" then
set_name = "passwall_" .. FLAG .. "_gfw"
set6_name = "passwall_" .. FLAG .. "_gfw6"
set_name = "psw_" .. FLAG .. "_gfw"
set6_name = "psw_" .. FLAG .. "_gfw6"
end
local sets = {
setflag_4 .. set_name
@ -519,13 +519,13 @@ function add_rule(var)
end
if fwd_dns then
local sets = {
setflag_4 .. "passwall_chn",
setflag_6 .. "passwall_chn6"
setflag_4 .. "psw_chn",
setflag_6 .. "psw_chn6"
}
if CHN_LIST == "proxy" then
if NO_PROXY_IPV6 == "1" then
sets = {
setflag_4 .. "passwall_chn"
setflag_4 .. "psw_chn"
}
end
if REMOTE_FAKEDNS == "1" then
@ -569,24 +569,24 @@ function add_rule(var)
if _node_id == "_direct" then
fwd_dns = LOCAL_DNS
if USE_DIRECT_LIST == "1" then
table.insert(sets, setflag_4 .. "passwall_white")
table.insert(sets, setflag_6 .. "passwall_white6")
table.insert(sets, setflag_4 .. "psw_white")
table.insert(sets, setflag_6 .. "psw_white6")
else
local set_name = "passwall_shunt"
local set6_name = "passwall_shunt6"
local set_name = "psw_shunt"
local set6_name = "psw_shunt6"
if FLAG ~= "default" then
set_name = "passwall_" .. FLAG .. "_shunt"
set6_name = "passwall_" .. FLAG .. "_shunt6"
set_name = "psw_" .. FLAG .. "_shunt"
set6_name = "psw_" .. FLAG .. "_shunt6"
end
table.insert(sets, setflag_4 .. set_name)
table.insert(sets, setflag_6 .. set6_name)
end
else
local set_name = "passwall_shunt"
local set6_name = "passwall_shunt6"
local set_name = "psw_shunt"
local set6_name = "psw_shunt6"
if FLAG ~= "default" then
set_name = "passwall_" .. FLAG .. "_shunt"
set6_name = "passwall_" .. FLAG .. "_shunt6"
set_name = "psw_" .. FLAG .. "_shunt"
set6_name = "psw_" .. FLAG .. "_shunt6"
end
fwd_dns = TUN_DNS
table.insert(sets, setflag_4 .. set_name)

View File

@ -358,8 +358,8 @@ if is_file_nonzero(file_vpslist) then
string.format("domain-set -name %s -file %s", domain_set_name, file_vpslist)
}
local sets = {
"#4:" .. setflag .. "passwall_vps",
"#6:" .. setflag .. "passwall_vps6"
"#4:" .. setflag .. "psw_vps",
"#6:" .. setflag .. "psw_vps6"
}
local domain_rules_str = string.format('domain-rules /domain-set:%s/ %s', domain_set_name, LOCAL_GROUP and "-nameserver " .. LOCAL_GROUP or "")
domain_rules_str = domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")
@ -406,8 +406,8 @@ if USE_DIRECT_LIST == "1" and is_file_nonzero(file_direct_host) then
string.format("domain-set -name %s -file %s", domain_set_name, file_direct_host)
}
local sets = {
"#4:" .. setflag .. "passwall_white",
"#6:" .. setflag .. "passwall_white6"
"#4:" .. setflag .. "psw_white",
"#6:" .. setflag .. "psw_white6"
}
local domain_rules_str = string.format('domain-rules /domain-set:%s/ %s', domain_set_name, LOCAL_GROUP and "-nameserver " .. LOCAL_GROUP or "")
domain_rules_str = domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")
@ -457,14 +457,14 @@ if USE_PROXY_LIST == "1" and is_file_nonzero(file_proxy_host) then
domain_rules_str = domain_rules_str .. " -speed-check-mode none"
domain_rules_str = domain_rules_str .. " -no-serve-expired"
local sets = {
"#4:" .. setflag .. "passwall_black"
"#4:" .. setflag .. "psw_black"
}
if NO_PROXY_IPV6 == "1" then
domain_rules_str = domain_rules_str .. " -address #6"
domain_rules_str = REMOTE_FAKEDNS ~= "1" and (domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")) or domain_rules_str
else
domain_rules_str = domain_rules_str .. " -address -6"
table.insert(sets, "#6:" .. setflag .. "passwall_black6")
table.insert(sets, "#6:" .. setflag .. "psw_black6")
domain_rules_str = REMOTE_FAKEDNS ~= "1" and (domain_rules_str .. " -d no " .. set_type .. " " .. table.concat(sets, ",")) or domain_rules_str
end
table.insert(tmp_lines, domain_rules_str)
@ -482,14 +482,14 @@ if USE_GFW_LIST == "1" and is_file_nonzero(RULES_PATH .. "/gfwlist") then
domain_rules_str = domain_rules_str .. " -speed-check-mode none"
domain_rules_str = domain_rules_str .. " -no-serve-expired"
local sets = {
"#4:" .. setflag .. "passwall_gfw"
"#4:" .. setflag .. "psw_gfw"
}
if NO_PROXY_IPV6 == "1" then
domain_rules_str = domain_rules_str .. " -address #6"
domain_rules_str = REMOTE_FAKEDNS ~= "1" and (domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")) or domain_rules_str
else
domain_rules_str = domain_rules_str .. " -address -6"
table.insert(sets, "#6:" .. setflag .. "passwall_gfw6")
table.insert(sets, "#6:" .. setflag .. "psw_gfw6")
domain_rules_str = REMOTE_FAKEDNS ~= "1" and (domain_rules_str .. " -d no " .. set_type .. " " .. table.concat(sets, ",")) or domain_rules_str
end
table.insert(tmp_lines, domain_rules_str)
@ -506,8 +506,8 @@ if CHN_LIST ~= "0" and is_file_nonzero(RULES_PATH .. "/chnlist") then
if CHN_LIST == "direct" then
local sets = {
"#4:" .. setflag .. "passwall_chn",
"#6:" .. setflag .. "passwall_chn6"
"#4:" .. setflag .. "psw_chn",
"#6:" .. setflag .. "psw_chn6"
}
local domain_rules_str = string.format('domain-rules /domain-set:%s/ %s', domain_set_name, LOCAL_GROUP and "-nameserver " .. LOCAL_GROUP or "")
domain_rules_str = domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")
@ -523,14 +523,14 @@ if CHN_LIST ~= "0" and is_file_nonzero(RULES_PATH .. "/chnlist") then
domain_rules_str = domain_rules_str .. " -speed-check-mode none"
domain_rules_str = domain_rules_str .. " -no-serve-expired"
local sets = {
"#4:" .. setflag .. "passwall_chn"
"#4:" .. setflag .. "psw_chn"
}
if NO_PROXY_IPV6 == "1" then
domain_rules_str = domain_rules_str .. " -address #6"
domain_rules_str = REMOTE_FAKEDNS ~= "1" and (domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")) or domain_rules_str
else
domain_rules_str = domain_rules_str .. " -address -6"
table.insert(sets, "#6:" .. setflag .. "passwall_chn6")
table.insert(sets, "#6:" .. setflag .. "psw_chn6")
domain_rules_str = REMOTE_FAKEDNS ~= "1" and (domain_rules_str .. " -d no " .. set_type .. " " .. table.concat(sets, ",")) or domain_rules_str
end
table.insert(tmp_lines, domain_rules_str)
@ -631,14 +631,14 @@ if IS_SHUNT_NODE then
local domain_rules_str = string.format('domain-rules /domain-set:%s/ %s', domain_set_name, LOCAL_GROUP and "-nameserver " .. LOCAL_GROUP or "")
if USE_DIRECT_LIST == "1" then
local sets = {
"#4:" .. setflag .. "passwall_white",
"#6:" .. setflag .. "passwall_white6"
"#4:" .. setflag .. "psw_white",
"#6:" .. setflag .. "psw_white6"
}
domain_rules_str = domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")
else
local sets = {
"#4:" .. setflag .. "passwall_shunt",
"#6:" .. setflag .. "passwall_shunt6"
"#4:" .. setflag .. "psw_shunt",
"#6:" .. setflag .. "psw_shunt6"
}
domain_rules_str = domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ",")
end
@ -656,7 +656,7 @@ if IS_SHUNT_NODE then
domain_rules_str = domain_rules_str .. " -speed-check-mode none"
domain_rules_str = domain_rules_str .. " -no-serve-expired"
local sets = {
"#4:" .. setflag .. "passwall_shunt"
"#4:" .. setflag .. "psw_shunt"
}
if NO_PROXY_IPV6 == "1" then
domain_rules_str = domain_rules_str .. " -address #6"
@ -665,7 +665,7 @@ if IS_SHUNT_NODE then
or (domain_rules_str .. " " .. set_type .. " " .. table.concat(sets, ","))
else
domain_rules_str = domain_rules_str .. " -address -6"
table.insert(sets, "#6:" .. setflag .. "passwall_shunt6")
table.insert(sets, "#6:" .. setflag .. "psw_shunt6")
domain_rules_str = (not only_global and REMOTE_FAKEDNS == "1")
and domain_rules_str
or (domain_rules_str .. " -d no " .. set_type .. " " .. table.concat(sets, ","))

View File

@ -3,27 +3,27 @@
DIR="$(cd "$(dirname "$0")" && pwd)"
MY_PATH=$DIR/iptables.sh
UTILS_PATH=$DIR/utils.sh
IPSET_LOCAL="passwall_local"
IPSET_WAN="passwall_wan"
IPSET_LAN="passwall_lan"
IPSET_VPS="passwall_vps"
IPSET_SHUNT="passwall_shunt"
IPSET_GFW="passwall_gfw"
IPSET_CHN="passwall_chn"
IPSET_BLACK="passwall_black"
IPSET_WHITE="passwall_white"
IPSET_BLOCK="passwall_block"
IPSET_LOCAL="psw_local"
IPSET_WAN="psw_wan"
IPSET_LAN="psw_lan"
IPSET_VPS="psw_vps"
IPSET_SHUNT="psw_shunt"
IPSET_GFW="psw_gfw"
IPSET_CHN="psw_chn"
IPSET_BLACK="psw_black"
IPSET_WHITE="psw_white"
IPSET_BLOCK="psw_block"
IPSET_LOCAL6="passwall_local6"
IPSET_WAN6="passwall_wan6"
IPSET_LAN6="passwall_lan6"
IPSET_VPS6="passwall_vps6"
IPSET_SHUNT6="passwall_shunt6"
IPSET_GFW6="passwall_gfw6"
IPSET_CHN6="passwall_chn6"
IPSET_BLACK6="passwall_black6"
IPSET_WHITE6="passwall_white6"
IPSET_BLOCK6="passwall_block6"
IPSET_LOCAL6="psw_local6"
IPSET_WAN6="psw_wan6"
IPSET_LAN6="psw_lan6"
IPSET_VPS6="psw_vps6"
IPSET_SHUNT6="psw_shunt6"
IPSET_GFW6="psw_gfw6"
IPSET_CHN6="psw_chn6"
IPSET_BLACK6="psw_black6"
IPSET_WHITE6="psw_white6"
IPSET_BLOCK6="psw_block6"
USE_SHUNT_TCP=0
USE_SHUNT_UDP=0
@ -365,24 +365,24 @@ load_acl() {
if ([ -n "$tcp_port" ] && [ -n "${tcp_proxy_mode}" ]) || ([ -n "$udp_port" ] && [ -n "${udp_proxy_mode}" ]); then
[ "${use_proxy_list}" = "1" ] && {
[ "${use_global_config}" = "0" ] && {
black_set_name="passwall_${sid}_black"
black6_set_name="passwall_${sid}_black6"
black_set_name="psw_${sid}_black"
black6_set_name="psw_${sid}_black6"
ipset -! create $black_set_name nethash maxelem 1048576 timeout 172800
ipset -! create $black6_set_name nethash family inet6 maxelem 1048576 timeout 172800
}
}
[ "${use_gfw_list}" = "1" ] && {
[ "${use_global_config}" = "0" ] && {
gfw_set_name="passwall_${sid}_gfw"
gfw6_set_name="passwall_${sid}_gfw6"
gfw_set_name="psw_${sid}_gfw"
gfw6_set_name="psw_${sid}_gfw6"
ipset -! create $gfw_set_name nethash maxelem 1048576 timeout 172800
ipset -! create $gfw6_set_name nethash family inet6 maxelem 1048576 timeout 172800
}
}
[ "${use_shunt_tcp}" = "1" -o "${use_shunt_udp}" = "1" ] && {
[ "${use_global_config}" = "0" ] && {
shunt_set_name="passwall_${sid}_shunt"
shunt6_set_name="passwall_${sid}_shunt6"
shunt_set_name="psw_${sid}_shunt"
shunt6_set_name="psw_${sid}_shunt6"
ipset -! create $shunt_set_name nethash maxelem 1048576 timeout 172800
ipset -! create $shunt6_set_name nethash family inet6 maxelem 1048576 timeout 172800
}
@ -1400,7 +1400,7 @@ del_firewall_rule() {
flush_ipset() {
echolog "清空 IPSet。"
for _name in $(ipset list | grep "Name: " | grep "passwall_" | awk '{print $2}'); do
for _name in $(ipset list | grep "Name: " | grep "psw_" | awk '{print $2}'); do
destroy_ipset ${_name}
done
}

View File

@ -4,27 +4,27 @@ DIR="$(cd "$(dirname "$0")" && pwd)"
MY_PATH=$DIR/nftables.sh
UTILS_PATH=$DIR/utils.sh
NFTABLE_NAME="inet passwall"
NFTSET_LOCAL="passwall_local"
NFTSET_WAN="passwall_wan"
NFTSET_LAN="passwall_lan"
NFTSET_VPS="passwall_vps"
NFTSET_SHUNT="passwall_shunt"
NFTSET_GFW="passwall_gfw"
NFTSET_CHN="passwall_chn"
NFTSET_BLACK="passwall_black"
NFTSET_WHITE="passwall_white"
NFTSET_BLOCK="passwall_block"
NFTSET_LOCAL="psw_local"
NFTSET_WAN="psw_wan"
NFTSET_LAN="psw_lan"
NFTSET_VPS="psw_vps"
NFTSET_SHUNT="psw_shunt"
NFTSET_GFW="psw_gfw"
NFTSET_CHN="psw_chn"
NFTSET_BLACK="psw_black"
NFTSET_WHITE="psw_white"
NFTSET_BLOCK="psw_block"
NFTSET_LOCAL6="passwall_local6"
NFTSET_WAN6="passwall_wan6"
NFTSET_LAN6="passwall_lan6"
NFTSET_VPS6="passwall_vps6"
NFTSET_SHUNT6="passwall_shunt6"
NFTSET_GFW6="passwall_gfw6"
NFTSET_CHN6="passwall_chn6"
NFTSET_BLACK6="passwall_black6"
NFTSET_WHITE6="passwall_white6"
NFTSET_BLOCK6="passwall_block6"
NFTSET_LOCAL6="psw_local6"
NFTSET_WAN6="psw_wan6"
NFTSET_LAN6="psw_lan6"
NFTSET_VPS6="psw_vps6"
NFTSET_SHUNT6="psw_shunt6"
NFTSET_GFW6="psw_gfw6"
NFTSET_CHN6="psw_chn6"
NFTSET_BLACK6="psw_black6"
NFTSET_WHITE6="psw_white6"
NFTSET_BLOCK6="psw_block6"
USE_SHUNT_TCP=0
USE_SHUNT_UDP=0
@ -395,24 +395,24 @@ load_acl() {
if ([ -n "$tcp_port" ] && [ -n "${tcp_proxy_mode}" ]) || ([ -n "$udp_port" ] && [ -n "${udp_proxy_mode}" ]); then
[ "${use_proxy_list}" = "1" ] && {
[ "${use_global_config}" = "0" ] && {
black_set_name="passwall_${sid}_black"
black6_set_name="passwall_${sid}_black6"
black_set_name="psw_${sid}_black"
black6_set_name="psw_${sid}_black6"
gen_nftset $black_set_name ipv4_addr "2d" 0
gen_nftset $black6_set_name ipv6_addr "2d" 0
}
}
[ "${use_gfw_list}" = "1" ] && {
[ "${use_global_config}" = "0" ] && {
gfw_set_name="passwall_${sid}_gfw"
gfw6_set_name="passwall_${sid}_gfw6"
gfw_set_name="psw_${sid}_gfw"
gfw6_set_name="psw_${sid}_gfw6"
gen_nftset $gfw_set_name ipv4_addr "2d" 0
gen_nftset $gfw6_set_name ipv6_addr "2d" 0
}
}
[ "${use_shunt_tcp}" = "1" -o "${use_shunt_udp}" = "1" ] && {
[ "${use_global_config}" = "0" ] && {
shunt_set_name="passwall_${sid}_shunt"
shunt6_set_name="passwall_${sid}_shunt6"
shunt_set_name="psw_${sid}_shunt"
shunt6_set_name="psw_${sid}_shunt6"
gen_nftset $shunt_set_name ipv4_addr "2d" 0
gen_nftset $shunt6_set_name ipv6_addr "2d" 0
}
@ -1462,7 +1462,7 @@ del_firewall_rule() {
flush_nftset() {
echolog "清空 NFTSet。"
for _name in $(nft -a list sets | grep -E "passwall_" | awk -F 'set ' '{print $2}' | awk '{print $1}'); do
for _name in $(nft -a list sets | grep -E "psw_" | awk -F 'set ' '{print $2}' | awk '{print $1}'); do
destroy_nftset ${_name}
done
}

View File

@ -506,9 +506,9 @@ local function fetch_rule(rule_name, rule_type, url, exclude_domain, max_retries
if old_md5 ~= new_md5 then
if api.is_finded("fw4") and (rule_type == "ip4" or rule_type == "ip6") then
local nft_file = file_tmp .. ".nft"
local set_name = "passwall_" .. rule_name
if rule_name == "chnroute" then set_name = "passwall_chn"
elseif rule_name == "chnroute6" then set_name = "passwall_chn6" end
local set_name = "psw_" .. rule_name
if rule_name == "chnroute" then set_name = "psw_chn"
elseif rule_name == "chnroute6" then set_name = "psw_chn6" end
local addr_type = (rule_type == "ip4") and "ipv4_addr" or "ipv6_addr"
gen_cache(set_name, addr_type, file_tmp, nft_file)

View File

@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=shadowsocksr-libev
PKG_VERSION:=2.5.6
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/shadowsocksrr/shadowsocksr-libev

View File

@ -175,7 +175,7 @@ stat_update_cb(EV_P_ ev_timer *watcher, int revents)
memset(&svaddr, 0, sizeof(struct sockaddr_un));
svaddr.sun_family = AF_UNIX;
strncpy(svaddr.sun_path, manager_address, sizeof(svaddr.sun_path) - 1);
snprintf(svaddr.sun_path, sizeof(svaddr.sun_path), "%s", manager_address);
if (sendto(sfd, resp, strlen(resp) + 1, 0, (struct sockaddr *)&svaddr,
sizeof(struct sockaddr_un)) != msgLen) {
@ -684,6 +684,11 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
if(obfs_compatible == 1)
{
char *back_buf = (char*)malloc(sizeof(buffer_t));
if (back_buf == NULL) {
close_and_free_remote(EV_A_ remote);
close_and_free_server(EV_A_ server);
return;
}
memcpy(back_buf, buf, sizeof(buffer_t));
buf->len = obfs_plugin->server_decode(server->obfs, &buf->array, buf->len, &buf->capacity, &needsendback);
@ -792,7 +797,11 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
if (server->stage == STAGE_HANDSHAKE) {
size_t header_len = server->header_buf->len;
brealloc(server->header_buf, server->buf->len + header_len, BUF_SIZE);
if (brealloc(server->header_buf, server->buf->len + header_len, BUF_SIZE) != 0) {
close_and_free_remote(EV_A_ remote);
close_and_free_server(EV_A_ server);
return;
}
memcpy(server->header_buf->array + header_len,
server->buf->array, server->buf->len);
server->header_buf->len = server->buf->len + header_len;

View File

@ -5,8 +5,8 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=tuic-client
PKG_VERSION:=1.8.2
PKG_RELEASE:=5
PKG_VERSION:=1.8.3
PKG_RELEASE:=6
PKG_LICENSE_FILES:=LICENSE
PKG_MAINTAINER:=Tianling Shen <cnsztl@immortalwrt.org>