diff --git a/package/lienol/luci-app-passwall/Makefile b/package/lienol/luci-app-passwall/Makefile index 7bd7e63db6..26eb260bf4 100644 --- a/package/lienol/luci-app-passwall/Makefile +++ b/package/lienol/luci-app-passwall/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-passwall PKG_VERSION:=3.3 -PKG_RELEASE:=41-20200207 +PKG_RELEASE:=41-20200209 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) diff --git a/package/lienol/luci-app-passwall/root/usr/share/passwall/subscription.sh b/package/lienol/luci-app-passwall/root/usr/share/passwall/subscription.sh index 84d2ab0cb2..588b5720ca 100755 --- a/package/lienol/luci-app-passwall/root/usr/share/passwall/subscription.sh +++ b/package/lienol/luci-app-passwall/root/usr/share/passwall/subscription.sh @@ -155,8 +155,19 @@ get_remote_config(){ ss_encrypt_method=$(echo "$decode_link" | awk -F ':' '{print $1}') password=$(echo "$decode_link" | awk -F ':' '{print $2}' | awk -F '@' '{print $1}') node_address=$(echo "$decode_link" | awk -F ':' '{print $2}' | awk -F '@' '{print $2}') - node_port=$(echo "$decode_link" | awk -F '@' '{print $2}' | awk -F '#' '{print $1}' | awk -F ':' '{print $2}') + + plugin_tmp=$(echo "$decode_link" | awk -F '\\/\\?' '{print $2}' | awk -F '#' '{print $1}') + if [ "$plugin_tmp" != "" ]; then + plugin_tmp=$(urldecode $plugin_tmp) + plugin=$(echo "$plugin_tmp" | awk -F 'plugin=' '{print $2}' | awk -F ';' '{print $1}') + plugin_options=$(echo "$plugin_tmp" | awk -F "$plugin;" '{print $2}' | awk -F '&' '{print $1}') + node_port=$(echo "$decode_link" | awk -F '@' '{print $2}' | awk -F '\\/\\?' '{print $1}' | awk -F ':' '{print $2}') + else + node_port=$(echo "$decode_link" | awk -F '@' '{print $2}' | awk -F '#' '{print $1}' | awk -F ':' '{print $2}') + fi + remarks=$(urldecode $(echo "$decode_link" | awk -F '#' '{print $2}')) + [ "$plugin" == "simple-obfs" -o "$plugin" == "obfs-local" ] && echo "$Date: 不支持simple-obfs插件,订阅节点:$remarks:$node_address失败!" >> $LOG_FILE && return elif [ "$1" == "ssr" ]; then decode_link=$(decode_url_link $2 1) node_address=$(echo "$decode_link" | awk -F ':' '{print $1}') @@ -584,4 +595,3 @@ add) start ;; esac -