@@ -70,6 +70,8 @@ SOCKS_FLAG=0
7070# ssconf_basic_fingerprint_
7171# ssconf_basic_naive_protocol_
7272# ssconf_basic_naive_user_
73+ # ssconf_basic_xray_publicKey_
74+ # ssconf_basic_xray_shortId_
7375# ==============================
7476
7577set_lock (){
@@ -950,6 +952,9 @@ get_vless_config(){
950952 v2ray_host=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' host=' | awk -F' =' ' {print $2}' )
951953 v2ray_tlshost=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' sni=' | awk -F' =' ' {print $2}' )
952954 v2ray_serviceName=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' serviceName=' | awk -F' =' ' {print $2}' )
955+ fingerprint=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' fp=' | awk -F' =' ' {print $2}' )
956+ xray_publicKey=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' pbk=' | awk -F' =' ' {print $2}' )
957+ xray_shortId=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' sid=' | awk -F' =' ' {print $2}' )
953958 # 把全部服务器节点编码后写入文件 /usr/share/shadowsocks/serverconfig/all_onlineservers
954959 [ -n " $vless_group " ] && group_base64=` echo $vless_group | base64_encode | sed ' s/ -//g' `
955960 [ -n " $v2ray_add " ] && server_base64=` echo $v2ray_add | base64_encode | sed ' s/ -//g' `
@@ -997,15 +1002,28 @@ add_vless_servers(){
9971002 dbus set ssconf_basic_v2ray_uuid_$v2rayindex =$v2ray_id
9981003 dbus set ssconf_basic_v2ray_network_security_$v2rayindex =$v2ray_tls
9991004 dbus set ssconf_basic_v2ray_network_$v2rayindex =$v2ray_net
1000-
1005+ [ -n " $fingerprint " ] && dbus set ssconf_basic_fingerprint_$v2rayindex =$fingerprint
1006+
10011007 [ -n " $v2ray_tlshost " ] && dbus set ssconf_basic_v2ray_network_tlshost_$v2rayindex =$v2ray_tlshost
10021008
10031009 case $v2ray_net in
10041010 tcp)
10051011 # tcp协议设置【 tcp伪装类型 (type)】和【tls/xtls域名 (SNI)】
10061012 # tcp + xtls 会比较多,别的组合不熟悉
10071013 dbus set ssconf_basic_v2ray_headtype_tcp_$v2rayindex =" $v2ray_type "
1008- [ " ${v2ray_tls#* x} " = " tls" ] && dbus set ssconf_basic_v2ray_network_flow_$v2rayindex =$v2ray_flow
1014+ case " $v2ray_tls " in
1015+ tls|xtls)
1016+ dbus set ssconf_basic_v2ray_network_flow_$v2rayindex =$v2ray_flow
1017+ ;;
1018+ reality)
1019+ dbus set ssconf_basic_v2ray_network_flow_$v2rayindex =$v2ray_flow
1020+ dbus set ssconf_basic_xray_publicKey_$v2rayindex =$xray_publicKey
1021+ dbus set ssconf_basic_xray_shortId_$v2rayindex =$xray_shortId
1022+ ;;
1023+ * )
1024+
1025+ ;;
1026+ esac
10091027
10101028 # @@ 不确定这个变量是否需要添加
10111029 # [ -n "$v2ray_host" ] && dbus set ssconf_basic_v2ray_network_host_$v2rayindex=$v2ray_host
@@ -1056,14 +1074,20 @@ update_vless_config(){
10561074 [ " $local_v2ray_net " != " $v2ray_net " ] && dbus set ssconf_basic_v2ray_network_$index =$v2ray_net && let i+=1
10571075 local_v2ray_tlshost=$( dbus get ssconf_basic_v2ray_network_tlshost_$index )
10581076 [ " $local_v2ray_tlsthost " != " $v2ray_tlshost " ] && dbus set ssconf_basic_v2ray_network_tlshost_$index =$v2ray_tlshost && let i+=1
1059-
1077+ local_fingerprint=$( dbus get ssconf_basic_fingerprint_$index )
1078+ [ " $local_v2ray_tlsthost " != " $fingerprint " ] && dbus set ssconf_basic_fingerprint_$index =$fingerprint && let i+=1
1079+
10601080 case $local_v2ray_net in
10611081 tcp)
10621082 # tcp协议
10631083 local_v2ray_type=$( dbus get ssconf_basic_v2ray_headtype_tcp_$index )
10641084 [ " $local_v2ray_type " != " $v2ray_type " ] && dbus set ssconf_basic_v2ray_headtype_tcp_$index =$v2ray_type && let i+=1
10651085 local_v2ray_flow=$( dbus get ssconf_basic_v2ray_network_flow_$index )
10661086 [ " $local_v2ray_flow " != " $v2ray_flow " ] && dbus set ssconf_basic_v2ray_network_flow_$index =$v2ray_flow && let i+=1
1087+ local_xray_publicKey=$( dbus get ssconf_basic_xray_publicKey_$index )
1088+ [ " $local_xray_publicKey " != " $xray_publicKey " ] && dbus set ssconf_basic_xray_publicKey_$index =$xray_publicKey && let i+=1
1089+ local_xray_shortId=$( dbus get ssconf_basic_xray_shortId_$index )
1090+ [ " $local_xray_shortId " != " $xray_shortId " ] && dbus set ssconf_basic_xray_shortId_$index =$xray_shortId && let i+=1
10671091
10681092 # local_v2ray_host=$(dbus get ssconf_basic_v2ray_network_host_$index)
10691093 # [ "$local_v2ray_host" != "$v2ray_host" ] && dbus set ssconf_basic_v2ray_network_host_$index=$v2ray_host && let i+=1
@@ -1124,8 +1148,9 @@ get_trojan_go_config(){
11241148 v2ray_path=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' path=' | awk -F' =' ' {print $2}' )
11251149 v2ray_host=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' host=' | awk -F' =' ' {print $2}' )
11261150 sni=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' sni=' | awk -F' =' ' {print $2}' )
1151+ fingerprint=$( echo " $decode_link " | tr ' ?&#' ' \n' | grep ' fp=' | awk -F' =' ' {print $2}' )
11271152 binary=" Trojan-Go"
1128- fingerprint= " none "
1153+
11291154 # 20201024---
11301155 ss_kcp_support_tmp=" 0"
11311156 ss_udp_support_tmp=" 0"
@@ -1344,7 +1369,8 @@ del_none_exist(){
13441369 dbus remove ssconf_basic_weight_$localindex
13451370 dbus remove ssconf_basic_naive_protocol_$localindex
13461371 dbus remove ssconf_basic_naive_user_$localindex
1347-
1372+ dbus remove ssconf_basic_xray_publicKey_$localindex
1373+ dbus remove ssconf_basic_xray_shortId_$localindex
13481374 let delnum+=1
13491375 fi
13501376 done
@@ -1428,7 +1454,9 @@ remove_node_gap(){
14281454 [ -n " $( dbus get ssconf_basic_v2ray_network_flow_$nu ) " ] && dbus set ssconf_basic_v2ray_network_flow_" $y " =" $( dbus get ssconf_basic_v2ray_network_flow_$nu ) " && dbus remove ssconf_basic_v2ray_network_flow_$nu
14291455 [ -n " $( dbus get ssconf_basic_naive_protocol_$nu ) " ] && dbus set ssconf_basic_naive_protocol_" $y " =" $( dbus get ssconf_basic_naive_protocol_$nu ) " && dbus remove ssconf_basic_naive_protocol_$nu
14301456 [ -n " $( dbus get ssconf_basic_naive_user_$nu ) " ] && dbus set ssconf_basic_naive_user_" $y " =" $( dbus get ssconf_basic_naive_user_$nu ) " && dbus remove ssconf_basic_naive_user_$nu
1431-
1457+ [ -n " $( dbus get ssconf_basic_xray_publicKey_$nu ) " ] && dbus set ssconf_basic_xray_publicKey_" $y " =" $( dbus get ssconf_basic_xray_publicKey_$nu ) " && dbus remove ssconf_basic_xray_publicKey_$nu
1458+ [ -n " $( dbus get ssconf_basic_xray_shortId_$nu ) " ] && dbus set ssconf_basic_xray_shortId_" $y " =" $( dbus get ssconf_basic_xray_shortId_$nu ) " && dbus remove ssconf_basic_xray_shortId_$nu
1459+
14321460 usleep 100000
14331461 # change node nu
14341462 if [ " $nu " == " $ssconf_basic_node " ]; then
@@ -1767,6 +1795,8 @@ start_update(){
17671795 dbus remove ssconf_basic_weight_$conf_nu
17681796 dbus remove ssconf_basic_naive_protocol_$conf_nu
17691797 dbus remove ssconf_basic_naive_user_$conf_nu
1798+ dbus remove ssconf_basic_xray_publicKey_$conf_nu
1799+ dbus remove ssconf_basic_xray_shortId_$conf_nu
17701800 done
17711801 # 删除不再订阅节点的group信息
17721802 confs_nu_2=` dbus list ss_online_group_| grep " $local_group " | cut -d " =" -f 1| cut -d " _" -f 4`
@@ -1928,6 +1958,8 @@ remove_online(){
19281958 dbus remove ssconf_basic_weight_$remove_nu
19291959 dbus remove ssconf_basic_naive_protocol_$remove_nu
19301960 dbus remove ssconf_basic_naive_user_$remove_nu
1961+ dbus remove ssconf_basic_xray_publicKey_$remove_nu
1962+ dbus remove ssconf_basic_xray_shortId_$remove_nu
19311963 done
19321964}
19331965
0 commit comments