From f87679a869ae0526a14fb0c5b9110c2fcbcb7fbd Mon Sep 17 00:00:00 2001 From: CN_SZTL Date: Tue, 10 Mar 2020 22:37:40 +0800 Subject: [PATCH] luci-app-vssr: sync with upstream source --- package/ctcgfw/luci-app-vssr/Makefile | 4 +- .../luci-app-vssr/luasrc/controller/vssr.lua | 11 +- .../luasrc/model/cbi/vssr/status.lua | 2 +- .../luasrc/model/cbi/vssr/subscription.lua | 3 +- .../luasrc/view/vssr/status2.htm | 24 +- package/ctcgfw/luci-app-vssr/po/zh-cn/vssr.po | 2 +- .../root/usr/share/vssr/subscribe.sh | 437 +++++++++--------- .../root/usr/share/vssr/update.lua | 20 +- .../root/www/luci-static/vssr/css/vssr.css | 6 +- .../luci-static/vssr/img/site_icon1_01.jpg | Bin 6262 -> 0 bytes .../luci-static/vssr/img/site_icon1_01.png | Bin 0 -> 7830 bytes .../luci-static/vssr/img/site_icon1_02.jpg | Bin 5206 -> 0 bytes .../luci-static/vssr/img/site_icon1_02.png | Bin 0 -> 6825 bytes .../luci-static/vssr/img/site_icon1_03.jpg | Bin 4207 -> 0 bytes .../luci-static/vssr/img/site_icon1_03.png | Bin 0 -> 5225 bytes .../luci-static/vssr/img/site_icon1_04.jpg | Bin 4327 -> 0 bytes .../luci-static/vssr/img/site_icon1_04.png | Bin 0 -> 5250 bytes .../www/luci-static/vssr/img/site_icon_01.jpg | Bin 8985 -> 0 bytes .../www/luci-static/vssr/img/site_icon_01.png | Bin 0 -> 18385 bytes .../www/luci-static/vssr/img/site_icon_02.jpg | Bin 8602 -> 0 bytes .../www/luci-static/vssr/img/site_icon_02.png | Bin 0 -> 16059 bytes .../www/luci-static/vssr/img/site_icon_03.jpg | Bin 6612 -> 0 bytes .../www/luci-static/vssr/img/site_icon_03.png | Bin 0 -> 11846 bytes .../www/luci-static/vssr/img/site_icon_04.jpg | Bin 7559 -> 0 bytes .../www/luci-static/vssr/img/site_icon_04.png | Bin 0 -> 10996 bytes 25 files changed, 256 insertions(+), 253 deletions(-) delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_01.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_01.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_02.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_02.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_03.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_03.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_04.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_04.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_01.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_01.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_02.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_02.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_03.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_03.png delete mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_04.jpg create mode 100644 package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_04.png diff --git a/package/ctcgfw/luci-app-vssr/Makefile b/package/ctcgfw/luci-app-vssr/Makefile index 39d38c3c91..21cfa21681 100644 --- a/package/ctcgfw/luci-app-vssr/Makefile +++ b/package/ctcgfw/luci-app-vssr/Makefile @@ -1,8 +1,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-vssr -PKG_VERSION:=1.21 -PKG_RELEASE:=20200309-4 +PKG_VERSION:=1.22 +PKG_RELEASE:=20200310-4 PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_Shadowsocks \ CONFIG_PACKAGE_$(PKG_NAME)_INCLUDE_V2ray \ diff --git a/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua b/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua index 3876140dbb..976b77b13a 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/controller/vssr.lua @@ -322,7 +322,7 @@ if set == "gfw_data" then oldcount=luci.sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l") if tonumber(icount) ~= tonumber(oldcount) then luci.sys.exec("cp -f /tmp/gfwnew.txt /etc/dnsmasq.ssr/gfw_list.conf") - luci.sys.exec("cp -f /etc/dnsmasq.ssr/gfw_list.conf /tmp/dnsmasq.ssr/gfw_list.conf") + luci.sys.exec("cp -f /tmp/gfwnew.txt /tmp/dnsmasq.ssr/gfw_list.conf") luci.sys.call("/etc/init.d/dnsmasq restart") retstring=tostring(math.ceil(tonumber(icount)/2)) else @@ -337,7 +337,7 @@ else end elseif set == "ip_data" then if (luci.model.uci.cursor():get_first('vssr', 'global', 'chnroute', '0') == '1') then - refresh_cmd="wget-ssl --no-check-certificate -O - " .. luci.model.uci.cursor():get_first('vssr', 'global', 'chnroute_url', 'https://pexcn.me/daily/chnroute/chnroute.txt') .. ' > /tmp/china_ssr.txt 2>/dev/null' + refresh_cmd="wget-ssl --no-check-certificate -O - " .. luci.model.uci.cursor():get_first('vssr', 'global', 'chnroute_url', 'https://ispip.clang.cn/all_cn.txt') .. ' > /tmp/china_ssr.txt 2>/dev/null' else refresh_cmd="wget -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' 2>/dev/null| awk -F\\| '/CN\\|ipv4/ { printf(\"%s/%d\\n\", $4, 32-log($5)/log(2)) }' > /tmp/china_ssr.txt" end @@ -371,11 +371,9 @@ if sret== 0 then end if tonumber(icount) ~= tonumber(oldcount) then luci.sys.exec("cp -f /tmp/ad.conf /etc/dnsmasq.ssr/ad.conf") + luci.sys.exec("cp -f /tmp/ad.conf /tmp/dnsmasq.ssr/ad.conf") + luci.sys.call("/etc/init.d/dnsmasq restart") retstring=tostring(math.ceil(tonumber(icount))) - if oldcount==0 then - luci.sys.exec("cp -f /etc/dnsmasq.ssr/ad.conf /tmp/dnsmasq.ssr/ad.conf") - luci.sys.call("/etc/init.d/dnsmasq restart") - end else retstring ="0" end @@ -392,6 +390,7 @@ luci.http.write_json({ ret=retstring ,retcount=icount}) end + -- 检测所有服务器 function check_ports() local set = "" diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua index dcd262be1d..c36f9cd9d8 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/status.lua @@ -1,7 +1,7 @@ -- Copyright (C) 2017 yushi studio -- Licensed to the public under the GNU General Public License v3. -local IPK_Version="20200307.1.19" +local IPK_Version="20200310.1.22" local m, s, o local redir_run=0 local reudp_run=0 diff --git a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua index be946b7078..8f10af47db 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua +++ b/package/ctcgfw/luci-app-vssr/luasrc/model/cbi/vssr/subscription.lua @@ -58,7 +58,8 @@ o = s:option(DummyValue, "", "") o.rawhtml = true o.template = "vssr/update_subscribe" -o = s:option(Button,"update",translate("Update All Subscribe Severs"),translate("No special needs, please click here to subscribe to update")) + +o = s:option(Button,"update",translate("Update All Subscribe Severs"), "" .. translate("No special needs, please click here to subscribe to update") .."") o.inputstyle = "reload" o.write = function() luci.sys.call("bash /usr/share/vssr/subscribe.sh >>/tmp/vssr.log 2>&1") diff --git a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm index 42bf17e8e8..c2fa88c297 100644 --- a/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm +++ b/package/ctcgfw/luci-app-vssr/luasrc/view/vssr/status2.htm @@ -13,10 +13,10 @@ math.randomseed(os.time())
- - - - + + + +
@@ -61,27 +61,27 @@ math.randomseed(os.time()) $(".status-info").html(data.outboard+"
"+country); } if(data.baidu){ - $(".i1").attr("src","/luci-static/vssr/img/site_icon_01.jpg"); + $(".i1").attr("src","/luci-static/vssr/img/site_icon_01.png"); }else{ - $(".i1").attr("src","/luci-static/vssr/img/site_icon1_01.jpg"); + $(".i1").attr("src","/luci-static/vssr/img/site_icon1_01.png"); } if(data.taobao){ - $(".i2").attr("src","/luci-static/vssr/img/site_icon_02.jpg"); + $(".i2").attr("src","/luci-static/vssr/img/site_icon_02.png"); }else{ - $(".i2").attr("src","/luci-static/vssr/img/site_icon1_02.jpg"); + $(".i2").attr("src","/luci-static/vssr/img/site_icon1_02.png"); } if(data.google){ - $(".i3").attr("src","/luci-static/vssr/img/site_icon_03.jpg"); + $(".i3").attr("src","/luci-static/vssr/img/site_icon_03.png"); }else{ - $(".i3").attr("src","/luci-static/vssr/img/site_icon1_03.jpg"); + $(".i3").attr("src","/luci-static/vssr/img/site_icon1_03.png"); } if(data.youtube){ - $(".i4").attr("src","/luci-static/vssr/img/site_icon_04.jpg"); + $(".i4").attr("src","/luci-static/vssr/img/site_icon_04.png"); }else{ - $(".i4").attr("src","/luci-static/vssr/img/site_icon1_04.jpg"); + $(".i4").attr("src","/luci-static/vssr/img/site_icon1_04.png"); } diff --git a/package/ctcgfw/luci-app-vssr/po/zh-cn/vssr.po b/package/ctcgfw/luci-app-vssr/po/zh-cn/vssr.po index 5394864a74..985a9a14f3 100644 --- a/package/ctcgfw/luci-app-vssr/po/zh-cn/vssr.po +++ b/package/ctcgfw/luci-app-vssr/po/zh-cn/vssr.po @@ -707,7 +707,7 @@ msgid "Using acceleration center DNS" msgstr "使用加速中心DNS" msgid "Appoint dns List" -msgstr "指定DNS解析列表" +msgstr "DNS解析列表" msgid "Use https_dns_proxy query and cache" msgstr "使用https_dns_proxy TCP查询并缓存" diff --git a/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/subscribe.sh b/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/subscribe.sh index a67fb69615..318bfbfc0c 100644 --- a/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/subscribe.sh +++ b/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/subscribe.sh @@ -4,59 +4,75 @@ . /usr/share/libubox/jshn.sh urlsafe_b64decode() { - local d="====" data=$(echo $1 | sed 's/_/\//g; s/-/+/g') - local mod4=$((${#data}%4)) - [ $mod4 -gt 0 ] && data=${data}${d:mod4} - echo $data | base64 -d + local d="====" data=$(echo $1 | sed 's/_/\//g; s/-/+/g') + local mod4=$((${#data} % 4)) + [ $mod4 -gt 0 ] && data=${data}${d:mod4} + echo $data | base64 -d } -urldecode() { : "${*//+/ }"; echo -e "${_//%/\\x}"; } +urldecode() { + : "${*//+/ }" + echo -e "${_//%/\\x}" +} -echo_date(){ +echo_date() { echo $(TZ=UTC-8 date -R +%Y-%m-%d\ %X):$1 } + Server_Update() { - local uci_set="uci -q set $name.$1." - ${uci_set}grouphashkey="$ssr_grouphashkey" - ${uci_set}hashkey="$ssr_hashkey" - ${uci_set}alias="[$ssr_group] $ssr_remarks" - ${uci_set}auth_enable="0" - ${uci_set}switch_enable="1" - ${uci_set}type="$ssr_type" - ${uci_set}server="$ssr_host" - ${uci_set}server_port="$ssr_port" - ${uci_set}local_port="1234" - uci -q get $name.@servers[$1].timeout >/dev/null || ${uci_set}timeout="60" - ${uci_set}password="$ssr_passwd" - ${uci_set}encrypt_method="$ssr_method" - ${uci_set}protocol="$ssr_protocol" - ${uci_set}protocol_param="$ssr_protoparam" - ${uci_set}obfs="$ssr_obfs" - ${uci_set}obfs_param="$ssr_obfsparam" - ${uci_set}fast_open="0" - ${uci_set}kcp_enable="0" - ${uci_set}kcp_port="0" - ${uci_set}kcp_param="--nocomp" - + local uci_set="uci -q set $name.$1." + local flag=$(/usr/share/$name/getflag.sh "$ssr_remarks" $ssr_host) + ${uci_set}grouphashkey="$ssr_grouphashkey" + ${uci_set}hashkey="$ssr_hashkey" + ${uci_set}alias="[$ssr_group] $ssr_remarks" + ${uci_set}auth_enable="0" + ${uci_set}switch_enable="1" + ${uci_set}type="$ssr_type" + ${uci_set}flag="$flag" + ${uci_set}server="$ssr_host" + ${uci_set}server_port="$ssr_port" + ${uci_set}local_port="1234" + uci -q get $name.@servers[$1].timeout >/dev/null || ${uci_set}timeout="60" + ${uci_set}password="$ssr_passwd" + ${uci_set}encrypt_method="$ssr_method" + ${uci_set}protocol="$ssr_protocol" + ${uci_set}protocol_param="$ssr_protoparam" + ${uci_set}obfs="$ssr_obfs" + ${uci_set}obfs_param="$ssr_obfsparam" + ${uci_set}fast_open="0" + ${uci_set}kcp_enable="0" + ${uci_set}kcp_port="0" + ${uci_set}kcp_param="--nocomp" + if [ "$ssr_type" = "v2ray" ]; then - #v2ray - ${uci_set}alter_id="$ssr_alter_id" - ${uci_set}vmess_id="$ssr_vmess_id" - ${uci_set}transport="$ssr_transport" - ${uci_set}tcp_guise="$ssr_tcp_guise" - ${uci_set}ws_host="$ssr_ws_host" - ${uci_set}ws_path="$ssr_ws_path" - ${uci_set}h2_host="$ssr_h2_host" - ${uci_set}h2_path="$ssr_h2_path" - ${uci_set}tls="$ssr_tls" - ${uci_set}security=$ssr_security - ${uci_set}alias="$ssr_remarks" + #v2ray + ${uci_set}alter_id="$ssr_alter_id" + ${uci_set}vmess_id="$ssr_vmess_id" + ${uci_set}transport="$ssr_transport" + if [ "$ssr_transport" = "tcp" ]; then + ${uci_set}tcp_guise="$ssr_tcp_guise" + fi + + if [ "$ssr_transport" = "ws" ]; then + ${uci_set}ws_host="$ssr_ws_host" + ${uci_set}ws_path="$ssr_ws_path" + fi + + if [ "$ssr_transport" = "h2" ]; then + ${uci_set}h2_host="$ssr_ws_host" + ${uci_set}h2_path="$ssr_ws_path" + fi + + ${uci_set}tls="$ssr_tls" + ${uci_set}insecure="$ssr_insecure" + ${uci_set}security="auto" + ${uci_set}alias="$ssr_remarks" fi - + if [ "$ssr_type" = "ss" ]; then - ${uci_set}encrypt_method_ss="$ss_method" - ${uci_set}alias="$ssr_remarks" + ${uci_set}encrypt_method_ss="$ss_method" + ${uci_set}alias="$ssr_remarks" fi } @@ -66,194 +82,187 @@ subscribe_url=($(uci get $name.@server_subscribe[0].subscribe_url)) #订阅服 [ ${#subscribe_url[@]} -eq 0 ] && exit 1 [ $(uci -q get $name.@server_subscribe[0].proxy || echo 0) -eq 0 ] && /etc/init.d/$name stop >/dev/null 2>&1 log_name=${name}_subscribe -for ((o=0;o<${#subscribe_url[@]};o++)) -do +for ((o = 0; o < ${#subscribe_url[@]}; o++)); do echo_date "从 ${subscribe_url[o]} 获取订阅" echo_date "开始更新在线订阅列表..." - echo_date "尝试下载订阅链接到本地临时文件,请稍等..." - subscribe_data=$(wget-ssl --no-check-certificate -t 3 -T 30 -O- ${subscribe_url[o]}) + echo_date "开始下载订阅链接到本地临时文件,请稍等..." + subscribe_data=$(wget-ssl --user-agent="User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" --no-check-certificate -t 10 -T 10 -O- ${subscribe_url[o]}) curl_code=$? # 计算group的hashkey ssr_grouphashkey=$(echo "${subscribe_url[o]}" | md5sum | cut -d ' ' -f1) - if [ ! $curl_code -eq 0 ];then - echo_date "下载订阅失败,自动重试中..." - subscribe_data=$(wget-ssl --user-agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36" --no-check-certificate -t 3 -T 30 -O- ${subscribe_url[o]}) + if [ ! $curl_code -eq 0 ]; then + + subscribe_data=$(wget-ssl --no-check-certificate -t 10 -T 10 -O- ${subscribe_url[o]}) curl_code=$? fi - if [ $curl_code -eq 0 ];then - echo_date "下载订阅成功,开始解析节点信息..." + if [ $curl_code -eq 0 ]; then + echo_date "下载订阅成功..." + echo_date "开始解析节点信息..." ssr_url=($(echo $subscribe_data | base64 -d | sed 's/\r//g')) # 解码数据并删除 \r 换行符 subscribe_max=$(echo ${ssr_url[0]} | grep -i MAX= | awk -F = '{print $2}') subscribe_max_x=() - if [ -n "$subscribe_max" ]; then - while [ ${#subscribe_max_x[@]} -ne $subscribe_max ] - do - if [ ${#ssr_url[@]} -ge 10 ]; then - if [ $((${RANDOM:0:2}%2)) -eq 0 ]; then - temp_x=${RANDOM:0:1} - else - temp_x=${RANDOM:0:2} - fi - else + if [ -n "$subscribe_max" ]; then + while [ ${#subscribe_max_x[@]} -ne $subscribe_max ]; do + if [ ${#ssr_url[@]} -ge 10 ]; then + if [ $((${RANDOM:0:2} % 2)) -eq 0 ]; then temp_x=${RANDOM:0:1} + else + temp_x=${RANDOM:0:2} fi - [ $temp_x -lt ${#ssr_url[@]} -a -z "$(echo "${subscribe_max_x[*]}" | grep -w $temp_x)" ] && subscribe_max_x[${#subscribe_max_x[@]}]="$temp_x" - done - else - subscribe_max=${#ssr_url[@]} - fi - echo_date "共计$subscribe_max个节点" + else + temp_x=${RANDOM:0:1} + fi + [ $temp_x -lt ${#ssr_url[@]} -a -z "$(echo "${subscribe_max_x[*]}" | grep -w $temp_x)" ] && subscribe_max_x[${#subscribe_max_x[@]}]="$temp_x" + done + else + subscribe_max=${#ssr_url[@]} + fi + echo_date "共计$subscribe_max个节点" - ssr_group=$(urlsafe_b64decode $(urlsafe_b64decode ${ssr_url[$((${#ssr_url[@]} - 1))]//ssr:\/\//} | sed 's/&/\n/g' | grep group= | awk -F = '{print $2}')) - if [ -z "$ssr_group" ]; then - ssr_group="default" - fi - if [ -n "$ssr_group" ]; then - subscribe_i=0 - subscribe_n=0 - subscribe_o=0 - subscribe_x="" - temp_host_o=() - curr_ssr=$(uci show $name | grep @servers | grep -c server=) - for ((x=0;x<$curr_ssr;x++)) # 循环已有服务器信息,匹配当前订阅群组 - do - temp_alias=$(uci -q get $name.@servers[$x].grouphashkey | grep "$ssr_grouphashkey") - [ -n "$temp_alias" ] && temp_host_o[${#temp_host_o[@]}]=$(uci get $name.@servers[$x].hashkey) - done + ssr_group=$(urlsafe_b64decode $(urlsafe_b64decode ${ssr_url[$((${#ssr_url[@]} - 1))]//ssr:\/\//} | sed 's/&/\n/g' | grep group= | awk -F = '{print $2}')) + if [ -z "$ssr_group" ]; then + ssr_group="default" + fi + if [ -n "$ssr_group" ]; then + subscribe_i=0 + subscribe_n=0 + subscribe_o=0 + subscribe_x="" + temp_host_o=() + curr_ssr=$(uci show $name | grep @servers | grep -c server=) + for ((x = 0; x < $curr_ssr; x++)); do # 循环已有服务器信息,匹配当前订阅群组 + temp_alias=$(uci -q get $name.@servers[$x].grouphashkey | grep "$ssr_grouphashkey") + [ -n "$temp_alias" ] && temp_host_o[${#temp_host_o[@]}]=$(uci get $name.@servers[$x].hashkey) + done - for ((x=0;x<$subscribe_max;x++)) # 循环链接 - do - [ ${#subscribe_max_x[@]} -eq 0 ] && temp_x=$x || temp_x=${subscribe_max_x[x]} - result=$(echo ${ssr_url[temp_x]} | grep "ss") - subscribe_url_type=$(echo "$ssr_url" | awk -F ':' '{print $1}') - - if [ "$subscribe_url_type" = "ss" ]; then - temp_info=${ssr_url[temp_x]//ss:\/\//} # 解码 SS 链接 - # 计算hashkey - ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) + for ((x = 0; x < $subscribe_max; x++)); do # 循环链接 + [ ${#subscribe_max_x[@]} -eq 0 ] && temp_x=$x || temp_x=${subscribe_max_x[x]} + result=$(echo ${ssr_url[temp_x]} | grep "ss") + subscribe_url_type=$(echo "$ssr_url" | awk -F ':' '{print $1}') - info=$(urlsafe_b64decode $(echo "$temp_info" | awk -F '@' '{print $1}')) - temp_info_array=(${info//:/ }) - ssr_type="ss" - ss_method=${temp_info_array[0]} - ssr_passwd=${temp_info_array[1]} - info=$(echo "$temp_info" | awk -F '@' '{print $2}' | awk -F '#' '{print $1}') - temp_info_array=(${info//:/ }) - ssr_host=${temp_info_array[0]} - ssr_port=${temp_info_array[1]} - ssr_remarks=$(urldecode $(echo "$temp_info" | awk -F '#' '{print $2}')) - fi - - if [ "$subscribe_url_type" = "ssr" ]; then - temp_info=$(urlsafe_b64decode ${ssr_url[temp_x]//ssr:\/\//}) # 解码 SSR 链接 - # 计算hashkey - ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) + if [ "$subscribe_url_type" = "ss" ]; then + temp_info=${ssr_url[temp_x]//ss:\/\//} # 解码 SS 链接 + # 计算hashkey + ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) - info=${temp_info///?*/} - temp_info_array=(${info//:/ }) - ssr_type="ssr" - ssr_host=${temp_info_array[0]} - ssr_port=${temp_info_array[1]} - ssr_protocol=${temp_info_array[2]} - ssr_method=${temp_info_array[3]} - ssr_obfs=${temp_info_array[4]} - ssr_passwd=$(urlsafe_b64decode ${temp_info_array[5]}) - info=${temp_info:$((${#info} + 2))} - info=(${info//&/ }) - ssr_protoparam="" - ssr_obfsparam="" - ssr_remarks="$temp_x" - for ((i=0;i<${#info[@]};i++)) # 循环扩展信息 - do - temp_info=($(echo ${info[i]} | sed 's/=/ /g')) - case "${temp_info[0]}" in - protoparam) - ssr_protoparam=$(urlsafe_b64decode ${temp_info[1]});; - obfsparam) - ssr_obfsparam=$(urlsafe_b64decode ${temp_info[1]});; - remarks) - ssr_remarks=$(urlsafe_b64decode ${temp_info[1]});; - esac - done - fi - - if [ "$subscribe_url_type" = "vmess" ]; then - temp_info=$(urlsafe_b64decode ${ssr_url[temp_x]//vmess:\/\//}) # 解码 Vmess 链接 - # 计算hashkey - ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) - - ssr_type="v2ray" - json_load "$temp_info" - json_get_var ssr_host add - json_get_var ssr_port port - json_get_var ssr_alter_id aid - json_get_var ssr_vmess_id id - json_get_var ssr_security security - if [ "$ssr_security" == "" ]; then - ssr_security="auto" - fi - json_get_var ssr_transport net - json_get_var ssr_remarks ps - ssr_tcp_guise="none" - json_get_var ssr_ws_host host - json_get_var ssr_ws_path path - json_get_var ssr_h2_host host - json_get_var ssr_h2_path path - json_get_var ssr_tls tls - if [ "$ssr_tls" == "tls" -o "$ssr_tls" == "1" ]; then - ssr_tls="1" - else - ssr_tls="0" - fi - fi - - if [ -z "ssr_remarks" ]; then # 没有备注的话则生成一个 - ssr_remarks="$ssr_host:$ssr_port"; - fi + info=$(urlsafe_b64decode $(echo "$temp_info" | awk -F '@' '{print $1}')) + temp_info_array=(${info//:/ }) + ssr_type="ss" + ss_method=${temp_info_array[0]} + ssr_passwd=${temp_info_array[1]} + info=$(echo "$temp_info" | awk -F '@' '{print $2}' | awk -F '#' '{print $1}') + temp_info_array=(${info//:/ }) + ssr_host=${temp_info_array[0]} + ssr_port=${temp_info_array[1]} + ssr_remarks=$(urldecode $(echo "$temp_info" | awk -F '#' '{print $2}')) + fi - uci_name_tmp=$(uci show $name | grep -w "$ssr_hashkey" | awk -F . '{print $2}') - if [ -z "$uci_name_tmp" ]; then # 判断当前服务器信息是否存在 - uci_name_tmp=$(uci add $name servers) - subscribe_n=$(($subscribe_n + 1)) - fi - Server_Update $uci_name_tmp - subscribe_x=$subscribe_x$ssr_hashkey" " - ssrtype=$(echo $ssr_type | tr '[a-z]' '[A-Z]') - echo_date "$ssrtype节点:【$ssr_remarks】" - - # SSR - # echo "服务器地址: $ssr_host" - # echo "服务器端口 $ssr_port" - # echo "密码: $ssr_passwd" - # echo "SS加密: $ss_method" - # echo "加密: $ssr_method" - # echo "协议: $ssr_protocol" - # echo "协议参数: $ssr_protoparam" - # echo "混淆: $ssr_obfs" - # echo "混淆参数: $ssr_obfsparam" - # echo "备注: $ssr_remarks" - - done - for ((x=0;x<${#temp_host_o[@]};x++)) # 新旧服务器信息匹配,如果旧服务器信息不存在于新服务器信息则删除 - do - if [ -z "$(echo "$subscribe_x" | grep -w ${temp_host_o[x]})" ]; then - uci_name_tmp=$(uci show $name | grep ${temp_host_o[x]} | awk -F . '{print $2}') - uci delete $name.$uci_name_tmp - subscribe_o=$(($subscribe_o + 1)) - fi - done - echo_date "本次更新订阅来源 【$ssr_group】 服务器数量: ${#ssr_url[@]} 新增服务器: $subscribe_n 删除服务器: $subscribe_o" - echo_date "在线订阅列表更新完成!请等待网页自动刷新!" - subscribe_log="$ssr_group 服务器订阅更新成功 服务器数量: ${#ssr_url[@]} 新增服务器: $subscribe_n 删除服务器: $subscribe_o" - logger -st $log_name[$$] -p6 "$subscribe_log" - uci commit $name - else - echo_date "${subscribe_url[$o]} 订阅数据解析失败 无法获取 Group" - logger -st $log_name[$$] -p3 "${subscribe_url[$o]} 订阅数据解析失败 无法获取 Group" - fi - else - echo_date "${subscribe_url[$o]} 订阅数据获取失败 错误代码: $curl_code" - logger -st $log_name[$$] -p3 "${subscribe_url[$o]} 订阅数据获取失败 错误代码: $curl_code" + if [ "$subscribe_url_type" = "ssr" ]; then + temp_info=$(urlsafe_b64decode ${ssr_url[temp_x]//ssr:\/\//}) # 解码 SSR 链接 + # 计算hashkey + ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) + + info=${temp_info///?*/} + temp_info_array=(${info//:/ }) + ssr_type="ssr" + ssr_host=${temp_info_array[0]} + ssr_port=${temp_info_array[1]} + ssr_protocol=${temp_info_array[2]} + ssr_method=${temp_info_array[3]} + ssr_obfs=${temp_info_array[4]} + ssr_passwd=$(urlsafe_b64decode ${temp_info_array[5]}) + info=${temp_info:$((${#info} + 2))} + info=(${info//&/ }) + ssr_protoparam="" + ssr_obfsparam="" + ssr_remarks="$temp_x" + for ((i = 0; i < ${#info[@]}; i++)); do # 循环扩展信息 + temp_info=($(echo ${info[i]} | sed 's/=/ /g')) + case "${temp_info[0]}" in + protoparam) + ssr_protoparam=$(urlsafe_b64decode ${temp_info[1]}) + ;; + obfsparam) + ssr_obfsparam=$(urlsafe_b64decode ${temp_info[1]}) + ;; + remarks) + ssr_remarks=$(urlsafe_b64decode ${temp_info[1]}) + ;; + esac + done + fi + + if [ "$subscribe_url_type" = "vmess" ]; then + temp_info=$(urlsafe_b64decode ${ssr_url[temp_x]//vmess:\/\//}) # 解码 Vmess 链接 + # 计算hashkey + ssr_hashkey=$(echo "$temp_info" | md5sum | cut -d ' ' -f1) + + ssr_type="v2ray" + json_load "$temp_info" + json_get_var ssr_host add + json_get_var ssr_port port + json_get_var ssr_alter_id aid + json_get_var ssr_vmess_id id + json_get_var ssr_transport net + json_get_var ssr_remarks ps + ssr_tcp_guise="none" + json_get_var ssr_ws_host host + json_get_var ssr_ws_path path + json_get_var ssr_tls tls + if [ "$ssr_tls" == "tls" -o "$ssr_tls" == "1" ]; then + ssr_tls="1" + ssr_insecure="1" + else + ssr_tls="0" + fi + fi + + if [ -z "ssr_remarks" ]; then # 没有备注的话则生成一个 + ssr_remarks="$ssr_host:$ssr_port" + fi + + uci_name_tmp=$(uci show $name | grep -w "$ssr_hashkey" | awk -F . '{print $2}') + if [ -z "$uci_name_tmp" ]; then # 判断当前服务器信息是否存在 + uci_name_tmp=$(uci add $name servers) + subscribe_n=$(($subscribe_n + 1)) + fi + Server_Update $uci_name_tmp + subscribe_x=$subscribe_x$ssr_hashkey" " + ssrtype=$(echo $ssr_type | tr '[a-z]' '[A-Z]') + echo_date "$ssrtype节点:【$ssr_remarks】" + + # SSR + # echo "服务器地址: $ssr_host" + # echo "服务器端口 $ssr_port" + # echo "密码: $ssr_passwd" + # echo "SS加密: $ss_method" + # echo "加密: $ssr_method" + # echo "协议: $ssr_protocol" + # echo "协议参数: $ssr_protoparam" + # echo "混淆: $ssr_obfs" + # echo "混淆参数: $ssr_obfsparam" + # echo "备注: $ssr_remarks" + + done + for ((x = 0; x < ${#temp_host_o[@]}; x++)); do # 新旧服务器信息匹配,如果旧服务器信息不存在于新服务器信息则删除 + if [ -z "$(echo "$subscribe_x" | grep -w ${temp_host_o[x]})" ]; then + uci_name_tmp=$(uci show $name | grep ${temp_host_o[x]} | awk -F . '{print $2}') + uci delete $name.$uci_name_tmp + subscribe_o=$(($subscribe_o + 1)) + fi + done + echo_date "本次更新订阅来源 【$ssr_group】 服务器数量: ${#ssr_url[@]} 新增服务器: $subscribe_n 删除服务器: $subscribe_o" + echo_date "在线订阅列表更新完成!请等待网页自动刷新!" + subscribe_log="$ssr_group 服务器订阅更新成功 服务器数量: ${#ssr_url[@]} 新增服务器: $subscribe_n 删除服务器: $subscribe_o" + logger -st $log_name[$$] -p6 "$subscribe_log" + uci commit $name + else + echo_date "${subscribe_url[$o]} 订阅数据解析失败 无法获取 Group" + logger -st $log_name[$$] -p3 "${subscribe_url[$o]} 订阅数据解析失败 无法获取 Group" + fi + else + echo_date "${subscribe_url[$o]} 订阅数据获取失败 错误代码: $curl_code" + logger -st $log_name[$$] -p3 "${subscribe_url[$o]} 订阅数据获取失败 错误代码: $curl_code" fi done echo "END SUBSCRIBE" diff --git a/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/update.lua b/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/update.lua index 02645963bb..fc3c837652 100644 --- a/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/update.lua +++ b/package/ctcgfw/luci-app-vssr/root/usr/share/vssr/update.lua @@ -15,11 +15,7 @@ local log = function(...) end log('正在更新【GFW列表】数据库') -if nixio.fs.access("/usr/bin/wget-ssl") then refresh_cmd="wget-ssl --no-check-certificate https://cdn.jsdelivr.net/gh/gfwlist/gfwlist/gfwlist.txt -O /tmp/gfw.b64" - else - refresh_cmd="wget -O /tmp/gfw.b64 http://iytc.net/tools/list.b64" - end sret=luci.sys.call(refresh_cmd .. " 2>/dev/null") if sret== 0 then luci.sys.call("/usr/bin/vssr-gfw") @@ -28,7 +24,7 @@ if nixio.fs.access("/usr/bin/wget-ssl") then oldcount=luci.sys.exec("cat /etc/dnsmasq.ssr/gfw_list.conf | wc -l") if tonumber(icount) ~= tonumber(oldcount) then luci.sys.exec("cp -f /tmp/gfwnew.txt /etc/dnsmasq.ssr/gfw_list.conf") --- retstring=tostring(math.ceil(tonumber(icount)/2)) + luci.sys.exec("cp -f /tmp/gfwnew.txt /tmp/dnsmasq.ssr/gfw_list.conf") log('更新成功! 新的总纪录数:'.. icount) else log('你已经是最新数据,无需更新!') @@ -43,7 +39,7 @@ end log('正在更新【国内IP段】数据库') if (ucic:get_first('vssr', 'global', 'chnroute','0') == '1' ) then - refresh_cmd="wget-ssl --no-check-certificate -O - ".. ucic:get_first('vssr', 'global', 'chnroute_url','https://cdn.jsdelivr.net/gh/17mon/china_ip_list/china_ip_list.txt') .." > /tmp/china_ssr.txt 2>/dev/null" + refresh_cmd="wget-ssl --no-check-certificate -O - ".. ucic:get_first('vssr', 'global', 'chnroute_url','https://ispip.clang.cn/all_cn.txt') .." > /tmp/china_ssr.txt 2>/dev/null" else refresh_cmd="wget -O- 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' 2>/dev/null| awk -F\\| '/CN\\|ipv4/ { printf(\"%s/%d\\n\", $4, 32-log($5)/log(2)) }' > /tmp/china_ssr.txt" end @@ -55,7 +51,6 @@ if sret== 0 then oldcount=luci.sys.exec("cat /etc/china_ssr.txt | wc -l") if tonumber(icount) ~= tonumber(oldcount) then luci.sys.exec("cp -f /tmp/china_ssr.txt /etc/china_ssr.txt") --- retstring=tostring(math.ceil(tonumber(icount)/2)) log('更新成功! 新的总纪录数:'.. icount) else log('你已经是最新数据,无需更新!') @@ -71,7 +66,7 @@ end if ucic:get_first('vssr', 'global', 'adblock','0') == "1" then log('正在更新【广告屏蔽】数据库') if nixio.fs.access("/usr/bin/wget-ssl") then - refresh_cmd="wget-ssl --no-check-certificate -O - ".. ucic:get_first('shadowsocksr', 'global', 'adblock_url','https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt') .." > /tmp/adnew.conf" + refresh_cmd="wget-ssl --no-check-certificate -O - ".. ucic:get_first('vssr', 'global', 'adblock_url','https://easylist-downloads.adblockplus.org/easylistchina+easylist.txt') .." > /tmp/adnew.conf" end sret=luci.sys.call(refresh_cmd .. " 2>/dev/null") if sret== 0 then @@ -85,10 +80,7 @@ if sret== 0 then end if tonumber(icount) ~= tonumber(oldcount) then luci.sys.exec("cp -f /tmp/ad.conf /etc/dnsmasq.ssr/ad.conf") --- retstring=tostring(math.ceil(tonumber(icount))) - if oldcount==0 then - luci.sys.call("/etc/init.d/dnsmasq restart") - end + luci.sys.exec("cp -f /tmp/ad.conf /tmp/dnsmasq.ssr/ad.conf") log('更新成功! 新的总纪录数:'.. icount) else log('你已经是最新数据,无需更新!') @@ -100,4 +92,6 @@ if sret== 0 then else log('更新失败!') end -end \ No newline at end of file +end + +luci.sys.call("/etc/init.d/dnsmasq restart") diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/css/vssr.css b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/css/vssr.css index 5373f053b5..167d91256c 100644 --- a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/css/vssr.css +++ b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/css/vssr.css @@ -332,7 +332,7 @@ https://github.com/pure-css/pure/blob/master/LICENSE.md transition: all 0.2s; } .cbi-section-table-row:hover{ - background: #fff; + background: #F0E68C; } @@ -358,7 +358,7 @@ https://github.com/pure-css/pure/blob/master/LICENSE.md color: #fff !important; } .host_con.fast { - color: #6f9a37; + color: #00bc12; } .host_con.nopass { @@ -538,7 +538,7 @@ footer.mobile-hide{ right: 0; box-shadow: 0 0 2rem 0 rgba(136,152,170,.3); color: #525f7f; - background: #fff; + background: #f4; z-index: 5; box-sizing: border-box; } diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_01.jpg b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_01.jpg deleted file mode 100644 index 2e7efb7b8e76b75e9a34db20a0433cec484b38c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6262 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 diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_02.png b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_02.png new file mode 100644 index 0000000000000000000000000000000000000000..516fddb1e16c42343c421d11ba0c42e3487856ee GIT binary patch literal 6825 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 literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_03.jpg b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_03.jpg deleted file mode 100644 index 494bd545835142564bd94852c1da9086174369ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4207 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 diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_03.png b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon1_03.png new file mode 100644 index 0000000000000000000000000000000000000000..b58dc07db521b60396557558a126bff9820f2b16 GIT binary patch literal 5225 zcmZ`-S5OmNw@v817l{EuO6VjYy(maa=%FJW0qIF-L0UkHNDo1J5h)*16r?KBAv8gX zfFMefjuJowMEUu@hdXm;?p-r$uUY4uz4ya;TS=zIdW>`+IsgE`2-nv}UMcp9_h~4u z>SmZ)`;}05Y8q(*01fH%7cP`np5IL$X#@Z~6afHmaR9*i)e&wB00@Qx06WeAfJ!a^ zz>O+=W2Sa>LFQ_prwzDFOdspIa@0X^BOU5>a$0s30R~#mtH%J{ARU_^q)RA23KQVr z@BnKPF=RPym3^Xtt$6<8>I#=fEdmO)`op^x*7+oENPTL=!>vOQNx>b*emWt5Q=o z^73z)6N&Uf$dkuW-BzI?i__Y8&}yvilXOwojjCxcXx|sZKBWDV5cq<6HGhkpU|pxO z0vE~XS6PCS5J!)Q2Tx-l{N!Gjz0Yb!oiiZCpAT(04}nAj40&ekE&IiqW@f z{@EOFA>yMW8#?2TkwF7rlp! zG4%Kc$MqE5uZ~7dMW9-DD2DATu9;@!d9{PKG;R3*Hw{vhBF<$a~wkW81m8ybRfNf{`%Y0^hUZpSdCN5v+hjFM?1l zM)<&Cz4Hm?$fonjL8-z3|6DiJZR#Q)24?{iR7*#@)S|meY-DcBUMm^^S@FbZQ~R z5a}4TF1TntIR1vIXyYNb5*>j8#c?0J3_D3e;-g@IaO16)O6f>^>CljF9q{Z~U3$^y zpZ7GL-PsGT@cWKeW$ ze0~NzQQI`qbHg7 z*58b@9fV-|1_L=K)R83j!}ZlFZ{-!-RB?^c#fR_cb+z|yWWy;S7jb7jO{E=WnVr09 z@(rPK?YYt>FKWPZt6*FXQWk*sMjL=5r;o)dwj+nOSI$JJEBK<$;DXzm zz2L-4UYedZBiD|0He|$6c4J$BqZa0zCu{{D3t}j-GS?^`vrmjA^r;E_6uaTrG7glG z+2)MnJDc(25HVXY6MbK^G;Xx#c{{xPHph2bu)}IuRR1M9MxMijZV)|zONj;2gE!D< zj)F9wW~4#aR0)g-;xXi8Z-#s$jjgn0J^Cz8Khyc++=Tkg7;R)aJt13$BTa`HOQ-@d z!2JZw6&P&J2tTUvS*A@ONAVvUR7{7tk`_$DA7fLgFt8FEocXzm=ZjLa(|*=s0{@o_ z70wnkh`g4o0QE88_6)PAh}&W zHns(=Yr%Wrk(t8brVL#vQ3`I^3<3~AJ^gDaYLnMa9_X(#v8pe3YH(}J%KVDHpp9VQ zT$L&5;&rhwY&%aLQ13bxY{ zu;($?QoC5P#kWY{#5kUQIDY_@KAGfe=V-UB$9`!dW8(9AJIKgK^dwAQzxLKTF zXkb0b=lniF63saF)vqiiRypnPRqfo&>v-~x_kuQFOXu@$xaU1Nq!%Ycen5Z%16wk$ETU>H^(?)8v=&somy#79PFbPPkYNQncTC5XIaigg~xl>RtWB6N7SpT z8h-cgx@k#J*-h+*A=g|{pXp~0j^DQ(eRR|pI}=$WRs42q4)TZ1@EK+6*u%6HD!UEufv-Q0 zyw(ro*IbVh=sombHFP2^eVP<6UF~0AJFim}-v(};=Eo<^nLn3`*P`-;ua%X43CE9m)HWwK-`nFFZ{=JUq=FsIK| z(8v1dHu0l5W2vwm3h!UDp}M^YPGi1J&o!Pjui8pEF-!IPF0d*k(?yh_sY~!X>(+9@ zvA9*UQs1Nim{V6iyC2}NzMqo}8d(47SJ}q0WH3L$cmQpxl<6PS?#W39J;F|cysQj@ zv-f7_;UzF<({n-P6B1?8h}b3DX_q;W{?&)xBUXaD#-EPOuCQ+YY&uS(Uh*r!XmbNa)5EOfbg#)rWX7!ciJlr&YhVFmhGoOcVOI{423^umZfNuPdtmT z32u3l$_bC|_!%WJ3_Y`SuY}YgR@e@!*Cd`m3bqOqrAZ-qYT3^Cew&{>hu*x4c6Q$R z`~%GyN5L{FO>B6VVQxt0*DdCNH7aT2YaI%z2*TGuBy*BnYbRrL1>57|6khYX?Kn$t znzEWsjoTVa2(+559JV^S=^2>=ZE%tzR%~<# zx~OhF(EgmXpruPK{W(*GjvhqH@cwM1h(W#)NbzhmbjUc_l*z`ON1(+`ySvAq@mWXV zjli%6ZPH8s;O8Wvihg30O8m&|!KTM{2`|MytU+Tjv_#=^A(5B6A)ioBto2#xj1SZu zD#4i<4))ch9ktvxBD|n**(Lq15jVw2iatRORd6O>j#&GUR`5VSDm@em3wQoD@Z-=y zDgmVQW(Z6hu=SfkpC`kJQc}&CC(*SRqe!tzS!;f4O#`8|9c}fEyHI$#%v7`{B6E}1 z@q+|IU}y*5J)VzvmBZsVClVbhl>wReoD2d*;$8%b51@1E&?+wN4%0Vw?vK1~rIJQu1lQ|mJfu~ z#>~EFw?!C5>NPi%tryPZC=GyC@Q>vAT+^o3V*>u6HB(&_)(b1u$r*@KC|*h8w4ds7 zqc!=0fGJt!DmH%*gt#;R!rX2hz4`o)?4(k#DEBc31Y2@sDHWM+i6p3gG8zU&=8u;3 ze(H+9on<9Z3BUKIa{+$PQGIy_*}P+4f_O-!*l^%|EdbK`D(kwf^YuU_1QmnLD!Vi~ zGmya$q~{-=b&XOHeccpk=l*x=uf8eruU1IQ)VY+(G}(Iel(peq5v*$~@|XJMZnbla z`$k)iPJJfZV!W)+G5x}tCST6avR8R_V~ShEfZ-ylP@Et{(D$OQl24+%mc+DaTYkSA zT%2MFjwEon+(DV{9VSU;WM!E) zrru_I!Q%%)?WyD59rCu^6LxrjH>v&O<^!)y4b5g&Hja@s@roSOD)HQAe?Q8k1Wp(l zj!|6?Kyh%HeE*(S<0VIf!4_*+hb5DlOauiEvYzO>8tM9Vyygl8VEN_ZgVHbLBR9rC zyOC69D>f4avd-CjBa4!GV41eWN3&d3PAUrS9SY`5A?6(s%SL~s$)}$#IaxFod%soH zkmJs{-QU3TGBHxWkI|JRi;^0QK(umc2b|omcby z1Dl-goBBHXFV+dIJKh5gC0*;wDH5vFl&#8&vU^DdC}Sqk%z%YI*5 z++!U({e6-M>Vb9C^3y$M}k;Q8!I!S&D_aYXNg?ILku(PMt zovukwgIveaa=5IWhbeE*p0?*(O#HZbnkWM54A8{=`UwF;mhdATDDz}b?uo;c^1Cda z5=KR4h#a91ydW{U?sB*~?KKn5a$jS38Y9^E0v7Vl{}?=hefe!GdqlH|13aChyaZd; zNIzuwUD4^U>}YwEhdw<&R*g(`tF>5?u|b3*;aMsDu(Al6>tWm`q};vw7YT3Lj!Of( zOYK+NI>*JPKT%fe^p*F-Tz?lna8Jvf`xh$rB|?Fsp#XCz1pvDV<%C(AV4fs%;BpT# z2TiCkO8#q(-`5pBX*7X_)9QCNRjI*lF2RL|g~gkK(wLZJM(V5?K*F%=c zgaYEg-@=~*WNf1`;c5hUHfU_ua97em0qVgn;#aNV6S zz|1l>G7uAvB}0O+A-D*0l~4ERDiB<-xr!IUd8c!v4K@_#5KqLq$M5sN#D`-{f>kUn zAZD@1SbQWNOAds@;txfTkg?_}tHzOFd8HYq0$J@s4mVe^UKthQ?d$@vArP?;gs!0u z25x|W7@6q84fPF7Om;x@cEXKeJB?v*eI2+V(qJc2PY?1#RKU@Q!3U9Uwst?p0&C_f zKb)daD7qAVT>>!#1~)M=f$h|T>FMc!J#ZTvh$dpN zV0YCOguk)J!0nUbu*00)?cts^jd8bc`U8 z10yh4M_Y3h(26b&7mT!n>)BXa!}a024fNsg-PR`7#@05w^-T;BwuXjwCbmCyZ3&oY zJT`*-Q#bf;U4!51uA~D#5**nUOT@)sgYAd}JY>~vB<}YtAja=lzUv16o<;Asx-bw1 zwlcZ@nCzcTUjej4I5eI^SXdwX^Ku|_NNJfDFNZ=X>C?>EXU}05+MT7)J1pqN|i8Yb} zAhysy|AGx5wdm^4b$}oUB`7Q?DkcQJ1W5vdLNdaD$hP%xYgf??fhtkQWcAVu#pG&s zsXlOf@j-uM&|hlA<4koM1NV$;w=kqugsnzq(QQL{k6`k{-cj-G$r5WeDWqiWwkxjn ze2LanWR0;O^^GrJqfcaCuWNh7SUebWGUvvf$FCP)_BR)VKFfeld3N4vjs1 zv9#gIo2jo_CXV}YajAJ_cRSurbD&5kpRjo9rSitkfte-HaY2w$1Pr98u(*&A9`r{> zNO*-<#1$kKjXIXDS6K6x?1L8{RCmd_1reG0Y6dpPH)go2U&GvL6(jW`Ms1VjJu<=Q zY*N^6xLZ*pn2a`J72STQsr7P-5Z6!JEko#q}vRn&xce82?H zshLnvcUGD2@7%aHQQY9Gr(;8J7H(4N)fcMFd{2IEEnj+AtSB$uC^g)$!+ z>{)Mo?d(PhB}njuVDS|+Czmq|`f5|oX*~Q)n-}2stSHV|(uPuD?_IgL?fLV$7rPE? z7VZ4zA$Ana90sEZTJ;L5Y;*PW>TkpkHS_W*h!cxNsX7Fm@zCq%+U@LjDL632|L)ts20?1ZRqDeJq&waFoLUCk{C+TVia?nC zoFSu&(cx8H0Xv4}So7z0qV)W1LtzAr=|k7onwwnG<|U@eqrBQ0zN7rqeM4K^%!?wh z8w1RzVdDh`eoMoLSX_Y$!gWif!k{ewy^pwVZPlb#StkeC#wSKD#s3+gj@mDl@5w5Yeo0S)~RVvo_<=?e$L|7w30q$i<5>>KO%j ze88aTexq2<&6ioY*)U|*_|3XvM2U&FAjK4V)X`i-V4K%KdL6lX* z#?D@2x8~M7C7XqGFjXo?c#$+#D?-`3zo{c~=t)DZ^%qI^C8kFh7(RtWx3v1J19c{_4?UB4XJFFi)BwuFOb*L7^ox*g}VtjnNJzJg<+ zlBygE?iEz^l+NjfAuNg}ncpb1+4a%_TKfi(-NV7Gy-7JspR(&N=WljD`Nbu`N9?Pb%@(!d8pYx> z_4aOXk9(}!Jd&i%>%^+!MC<{3#*kxa>cnR3!Ro9zvGRfqt&X3VuvAxSOK)vcZJ*Ac z&DD)3Kld<%bNVBZ9kQq6^^h6j7Ld`>vtWL|KhNp$&U(u`fNCGzU+2M?>k7qv4XS!} z2>qGP{jjlcM`AQPCrf&sU|@SMJ;7&yA%hw+4XWzB0_rj~*ctN4>=3rPny`LcrrQNC zPVikyz=M-ewlDgd3^)@{9?(^rPTPl8S#!>OOQ$xEt$69qBc0(H7vzqxw?yTL>s};Cc=VMH-PRi{A7eHlOz||4w?jh;UkF>-9&Ly4>w159S`6a2s z$OjPly=P>r9aUYnMcZomm5a~pMkij-)-JzQjs4G>YJ{*-$`*9f>b40YyZEGCFTri} zQcR;AA>5e$T<$;dd1g0NvyT!&1eW$exyQlNDwW%Hi~Ee*cDHXKMlVzmaSIo(^T6$7 z>}Uw(O4*=ThTWLo*Au0pMRKwGpv&o?0)=JDk!I1l8jti@q|s<)uMsKQZ8_ohD@w#> zj#Ga@R#TZ8<WWAJ&a~8DCOrw%gnzz)oy1O*&f|_rRQ3fo#)wTMx!Ts>r_Bhop3#%6p79Yqa zH!O5pC{uUQWp8&_t-bA#s6pCSGOh`1qV4!~j{!$TXGFf|RVkxV7fsyHD-wJ@I)N9< zBqPfyH;Wp|QqoM)=$iVQJlV;`^KJ$5mb9cI5_6GK^^)2m$A)of(!P8EJnh<)y+(MZ z%5IE)!n|Rdci0h|f=?DT)8L8on4Sh*B&hR&&eTP4O}8tLDc64+DP2a*fV(Jc`5j8h y6x;AZF-MiO%o_+Rn);|0EeqL*+DUv|wApih?1g#{ebb)O-}_(yz`iK}fXV~_Xk2qUG$rmY zK;|lna)7(&#If#sh3|n@mB-%#6H-$7WKb`;MMIR?u z008+p4f7%e3nRGQrS!)kBvTrC_4vT0YR5gH`;D-#_}A>>(PZGXYB=T1-{11Vn^+8b z0{+3T(b1fXw>CGvCi6v;G3s1Ot!&mb>SI<^NgL&ll=uExGLFp(hJo&me49B(@+93# z&@k08xaBUpOhO)@3)Ney+DK=oi%*Wb4F{X_X(@ zH(5jjvWrgyJ~0I}mPZVh^rqu->eH`I)Hkv(@;tcxBos&Xldgr8Z({_6r~dLUcVaIn zITACUuWXS$0j=xUjI)H=T;HA?#cT$`uU@ZkR+;ws;5ohom~L%;SBGv=SpivZ6Zxcp zHP6@ddT>prj<_md|IHL6Kt&|#b|BopmLAIIX&vP*i@2YQEFZ&WM=s`5>)8CB= zL(FzF-aR*s2q8#mR~9Vf`SQ*ov&e9#J3zeHWZ%P-7BKIbTn)&lpNtmjoq}&4A zmUqwlq$e4JV81MPN9iG=h3StTUoQAlJC$U+r#OSnm0X(J75^5F%hRKzch+pr!4kF= z{n&G{-~>bOnfX|TRA!gWZPc|mR4}QD(L_}254iclX^b|>*8~6{n?=jX==dy+=l)47 z9?~3oIzK7Y)akvueE#iM%#*9H*Bra+xnX(O+(IPjLuGSmsFyVB!@`iHYmPe-@>>Aw zq8265v%WZKB{W&@x~OYzlLbZhx>0})e!=lK|4wnC$=SgN#(yLx$7Y4Zo0|L&PshAoXBW0h_qqM+2FA( zuwscY_(1PGd5nmvP`Ex!kxZGfkH_Ue-8YS>8bAl4+_D{%xDp?n-C*%{jp%Qb>)Hr8 zBG7r+K*q5tR#x^)u#9#+1k|eu5?crM0-5D&A{ng!TTn&h=%jnNhlWHgeTwgfbEwX5 zk2f1B@o#S+byHkLFhU|R4N%x7F-u6MmfxHSZ_+FmRzzy-M`M{_v6ku^rZ9Tz;-QAo zrW;0@Qy)0v>P{9tQm>&>w)>bRwOsN+A<73r>Pl3Q6iDK8KDNl8Rh5tVt5Q&^S78^r z=?djA;6MXMmD8seg{>+@C{J^YQ~kwyNwjj>nZhf3C~nw!W6)FKy%*3d^gOG`&%S_C ztwpHI14}$)3zf|tp%lMZAWEEjzF`09tMvG;25u4por1Zh*#`z|EC(Ad7O+7)uIEWs z%v}i9qsyPFAV77Yqr2oTv!6+621ZLWshgB&g9 zwd#*+(isxV`eg%#r%1k!Stgfht@|COhLOge1pZlFiM!Du2CbiNAthXMCzZOg(n~R> z>gb_WqP4k<6HCfvQaw#L9CF@EIcXfA=7kZ!rpu5l%<2i`!qy)KHtkz?QXv-)+O+&p zsXpnyBuPgcNe5G@k+f_a7HQp6?$+5m#(Sj)Vy*H#W6R86riYq(GTJ;j-6bM*iY_GR zGOn{tYNb5CNQVwyjB0L<3>zpK6iQ!%owI<4QMq_!BocJI0hlM4{c6fD(v`h8QRC84 zGi(;2Qgr!>NXh=&Ec*t+*p5#H2fy0A-@H(LxeVaX=$a&5G_@-o8WRl;%OQf3`TJb^W_PIJApxmbsAmLeA4-h0 zc`qK<8OdS`%cPvA1wHqh8&&1Q_iu@8I4Z|Y! zA^DCyZ}&aTULX}GYF0i!G^p*%{-NJ3LMhfvDU4w}SWa#l2zqVENdQ*cJO2=~$!$=m zxK^4V)b2-p{m|xulY6*I#`a<^UsBNbr0s8x{C74Lpql~^i5C#sIfzI#sR|gs)j8*w zudjKf);)nrKwQlRO|JRy(XPSjVpPkx<()nud#o9aJ>*dV@}*gApcX!CwI)FwW6kgufEKQlN= z@&Xs>w$uor&gvwmX6(5*#Zu$L&&Y7;IP!P^6jyW4GC-3Kn0#9wl`mmDsUcV~hUB)& z3XYsGpwH8vBj3yC8*RI|e!VFj(-OXY9)-7|E2f<2oHpoLy1x2+MSI>}kXV3qo_NyN zq_xK@=QU_Uz`@UEd(CtiDrveI8~@= zoZXYAcR92KREX?hlasT}MmC*Axwxd6RrT8MUD#>nic{`NTz0CtmvLJ2Jx#cZXxX&Q zL_G)lnoCUuNm;FpwYz)UQP zx)N;CLMfllh}bsW_Avf^ZAQBup5~8I&L_Wqv@9&_T|csSmF@f7j*9vUqcWqG)bE}& zlRK*k!IdfFrp+@Ubgnz2)-*9_EIP1>sDP^P(Y@)?K(BBkzD4Yn%1)I?l9Lxmol3k9 zK+`4rg<%nqUQ(UbXnjlSd6N9o;B!n@(I5M*H2n~&Zmc6&>AT#c%;!e$$7rfTvjCUy zOEq@f`3C<|4C1;H|5T#4;CtLsksKe>%-D(=Ln#rdeTK(`1U1WtdB2pC^a<5NrQyYS zf|2KJp@kj^DHvuf!%d|^x4XO+t z{Vb|;kG1f78eQDJac;q99~*uxdKoBq{8QO{_=QLE2>ECF7cG0V+7L*@2e*lr>l{+0 z1*xH#iQM} z0sEG$ls^_Wp0qIaX_#Lqxx`QU870Jad0wAgF<_l;-I0w6Gx;hxc%$wD6WKOc5L9a& zzxzavTCsq$Fbek_BUVkE*F7)jRyN3(k6T|nHD4fK)F)o?vN{TI@JW^ipQnyzN#Pd} z!_{h1p!zdRTyui^Z+iph1@6Q39tp?jDJ*61ry@T>QTIwYt{|x~v&WE)A;Z?4VdwPJ zuKDOsxGKX2Sn{fUo6$A3ShM05&gF7KB%n z8fBO?y}=W=^100N0dt9Lro?O*KbITp>xv|Oy*jLoh{Y^*LvF90y|zLD$IV4s^zSwU z^9D5!j#9cx2*O73J_S7ajcxgl2mi)WDQ(0%Ofll==n5ON99>(Q5fPI z@2o<)`SdE4^3e{Kks6mdF1pDna1&xhj0Ihn`Yj7)DNmBt<-Uo2W=@-iZ_MAC&J+y5w&TNg9@2_YQ`{2dvQZ5fZ00V+Fs572=L72_Rsls>4DsO{3iT8$X= zuH&rQPGrLk8ENH8`Z}z=>1)3k-662lHctcQzJ$(d)_2;EYy@zV2jVSo2LhrXL%kAvu zxUeMm$hX8XC5A;hZn=_jPn^KzGM>k&gIng0`B;&E^Y3QKC|1k2e5zRRyCBS(>NL>G zbEE#--~rAxTSNAW9u__~zRSfinGq^xZ2SU#6?WJKG01k!tf70Y@=@u14R=jvlJ!sp6{p`(EbJ_G)lUBjAa zaZ&zq%~0HpM;8VWV+jDtg+V3o$^glsS(eq6TV6!=bg4x4nrgTbT9bQk8f*Nq$7%sN znN!W~@GZczAYvC5EU{q8{tuaq7oZ^NElOGguIzT>@xml_*XDyAhhOaX$8=1*DdVnN zF;rvLmefq;an5PX%4oC<+D`L(-(M2i%oIHTsRp*rB1ZhyUN#A&jChJ#yy1Z9qn~H8 zewOL91T-wfZ;NORgTK&|Go)KGMb#c?Mwg)MohtfDfVG^>5J*S$>;{1%Cm(o(yk=c_ zwL55X)+b!mzaKj_edb-k&LeExd#Y0(vuUu4(`o$_ znjSh{m15y0o==(})7VzVe46@J zO`lN;+8rYdzy)iH|3004g|EI8=qQYT5EmOzfT*%_Q?kF^Aot>EyIXD ztb3NV`gqEKXEIEzj7dDIe&ATSe61iiFArp|-xBvLwS(NI1el#5NdHOGEh`n}YgLuWVN@|-)VBC6j&c!W1 z7f5tb_sj9ptNwUnzg#Y`!`_V`P+L#Mc*o_EYb*Ut#Q_8Ag&X}xDN%0SavJ*yCUD$e zf%D}RzNRRUh;Ll_?(u~pvA$&5y@mW0|A|&UU(p%|Vpw203DOLIt#Z7^cW%7FX)oyx~ek^iDh5pzc=en8AW2|*nGa^J)ibWOIo;KuW4{l20~&|GCaK{p{3l&S7k-*H^aZec1`;=n%N zme1|7Kl?#?q;KWG5r;yjO(jvhJ#m>GX|(yM)*b9diWLDJ)nA~506#K*Lrg zC*DO2O?_0%9eF2m;P>K?)K@2!af$70?A{$vo>+^CLQ{V1e)C3VrH{5oqj>-X_u_w$ zE71R%i!c< ZX=m;G{~O@4f;s<9L(8kl)jl%~`wvQfq^$q| literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_01.jpg b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_01.jpg deleted file mode 100644 index 5cfeb830ad162ecd29ebd6660cfc3f941cdf366f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8985 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ùQ<1 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 Oc~>C+b_bUJ?SB9=leX*t diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_01.png b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_01.png new file mode 100644 index 0000000000000000000000000000000000000000..53de36bdb3b6b93ac37d16b48e4d771f15058bf8 GIT binary patch literal 18385 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 aX4V$o|Mvo|C5r9;>?R|jAYLbG6#PHPbLZCp literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_03.jpg b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_03.jpg deleted file mode 100644 index 2f936737fd8e2af66dcfd4fbea47362e18d69c99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6612 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 O&r$n?-D?G&Ir4v2pqMED diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_03.png b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_03.png new file mode 100644 index 0000000000000000000000000000000000000000..6d58c8ce9fedf8068dd1dd685074b4bbd199a480 GIT binary patch literal 11846 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 literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_04.jpg b/package/ctcgfw/luci-app-vssr/root/www/luci-static/vssr/img/site_icon_04.jpg deleted file mode 100644 index 707cca49580496654f5bc730c4d7c2e00f0501f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7559 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