share link to add fingerprint
This commit is contained in:
1 parent
1fd3ccaa0c
commit
57a2f0bebf
3 files changed
+15
-5
No files matched your search
@@ -13,4 +13,5 @@ data class VmessQRCode(var v: String = "",
|
|||||||
var path: String = "",
|
var path: String = "",
|
||||||
var tls: String = "",
|
var tls: String = "",
|
||||||
var sni: String = "",
|
var sni: String = "",
|
||||||
var alpn: String = "")
|
var alpn: String = "",
|
||||||
|
var fp: String = "")
|
||||||
@@ -186,8 +186,6 @@ object AngConfigManager {
|
|||||||
config = ServerConfig.create(EConfigType.VMESS)
|
config = ServerConfig.create(EConfigType.VMESS)
|
||||||
val streamSetting = config.outboundBean?.streamSettings ?: return -1
|
val streamSetting = config.outboundBean?.streamSettings ?: return -1
|
||||||
|
|
||||||
var fingerprint = streamSetting.tlsSettings?.fingerprint
|
|
||||||
|
|
||||||
|
|
||||||
if (!tryParseNewVmess(str, config, allowInsecure)) {
|
if (!tryParseNewVmess(str, config, allowInsecure)) {
|
||||||
if (str.indexOf("?") > 0) {
|
if (str.indexOf("?") > 0) {
|
||||||
@@ -221,7 +219,7 @@ object AngConfigManager {
|
|||||||
val sni = streamSetting.populateTransportSettings(vmessQRCode.net, vmessQRCode.type, vmessQRCode.host,
|
val sni = streamSetting.populateTransportSettings(vmessQRCode.net, vmessQRCode.type, vmessQRCode.host,
|
||||||
vmessQRCode.path, vmessQRCode.path, vmessQRCode.host, vmessQRCode.path, vmessQRCode.type, vmessQRCode.path)
|
vmessQRCode.path, vmessQRCode.path, vmessQRCode.host, vmessQRCode.path, vmessQRCode.type, vmessQRCode.path)
|
||||||
|
|
||||||
|
val fingerprint = vmessQRCode.fp ?: streamSetting.tlsSettings?.fingerprint
|
||||||
streamSetting.populateTlsSettings(vmessQRCode.tls, allowInsecure,
|
streamSetting.populateTlsSettings(vmessQRCode.tls, allowInsecure,
|
||||||
if (TextUtils.isEmpty(vmessQRCode.sni)) sni else vmessQRCode.sni, fingerprint, vmessQRCode.alpn)
|
if (TextUtils.isEmpty(vmessQRCode.sni)) sni else vmessQRCode.sni, fingerprint, vmessQRCode.alpn)
|
||||||
}
|
}
|
||||||
@@ -306,6 +304,7 @@ object AngConfigManager {
|
|||||||
val sni = config.outboundBean?.streamSettings?.populateTransportSettings(queryParam["type"] ?: "tcp", queryParam["headerType"],
|
val sni = config.outboundBean?.streamSettings?.populateTransportSettings(queryParam["type"] ?: "tcp", queryParam["headerType"],
|
||||||
queryParam["host"], queryParam["path"], queryParam["seed"], queryParam["quicSecurity"], queryParam["key"],
|
queryParam["host"], queryParam["path"], queryParam["seed"], queryParam["quicSecurity"], queryParam["key"],
|
||||||
queryParam["mode"], queryParam["serviceName"])
|
queryParam["mode"], queryParam["serviceName"])
|
||||||
|
fingerprint = queryParam["fp"] ?: ""
|
||||||
config.outboundBean?.streamSettings?.populateTlsSettings(queryParam["security"] ?: TLS, allowInsecure, queryParam["sni"] ?: sni!!, fingerprint, queryParam["alpn"])
|
config.outboundBean?.streamSettings?.populateTlsSettings(queryParam["security"] ?: TLS, allowInsecure, queryParam["sni"] ?: sni!!, fingerprint, queryParam["alpn"])
|
||||||
flow = queryParam["flow"] ?: ""
|
flow = queryParam["flow"] ?: ""
|
||||||
} else {
|
} else {
|
||||||
@@ -339,6 +338,7 @@ object AngConfigManager {
|
|||||||
val sni = streamSetting.populateTransportSettings(queryParam["type"] ?: "tcp", queryParam["headerType"],
|
val sni = streamSetting.populateTransportSettings(queryParam["type"] ?: "tcp", queryParam["headerType"],
|
||||||
queryParam["host"], queryParam["path"], queryParam["seed"], queryParam["quicSecurity"], queryParam["key"],
|
queryParam["host"], queryParam["path"], queryParam["seed"], queryParam["quicSecurity"], queryParam["key"],
|
||||||
queryParam["mode"], queryParam["serviceName"])
|
queryParam["mode"], queryParam["serviceName"])
|
||||||
|
fingerprint = queryParam["fp"] ?: ""
|
||||||
streamSetting.populateTlsSettings(queryParam["security"] ?: "", allowInsecure, queryParam["sni"] ?: sni, fingerprint, queryParam["alpn"])
|
streamSetting.populateTlsSettings(queryParam["security"] ?: "", allowInsecure, queryParam["sni"] ?: sni, fingerprint, queryParam["alpn"])
|
||||||
}
|
}
|
||||||
if (config == null){
|
if (config == null){
|
||||||
@@ -478,6 +478,7 @@ object AngConfigManager {
|
|||||||
vmessQRCode.tls = streamSetting.security
|
vmessQRCode.tls = streamSetting.security
|
||||||
vmessQRCode.sni = streamSetting.tlsSettings?.serverName.orEmpty()
|
vmessQRCode.sni = streamSetting.tlsSettings?.serverName.orEmpty()
|
||||||
vmessQRCode.alpn = Utils.removeWhiteSpace(streamSetting.tlsSettings?.alpn?.joinToString()).orEmpty()
|
vmessQRCode.alpn = Utils.removeWhiteSpace(streamSetting.tlsSettings?.alpn?.joinToString()).orEmpty()
|
||||||
|
vmessQRCode.fp = streamSetting.tlsSettings?.fingerprint.orEmpty()
|
||||||
outbound.getTransportSettingDetails()?.let { transportDetails ->
|
outbound.getTransportSettingDetails()?.let { transportDetails ->
|
||||||
vmessQRCode.type = transportDetails[0]
|
vmessQRCode.type = transportDetails[0]
|
||||||
vmessQRCode.host = transportDetails[1]
|
vmessQRCode.host = transportDetails[1]
|
||||||
@@ -535,6 +536,9 @@ object AngConfigManager {
|
|||||||
if (!tlsSetting.alpn.isNullOrEmpty() && tlsSetting.alpn.isNotEmpty()) {
|
if (!tlsSetting.alpn.isNullOrEmpty() && tlsSetting.alpn.isNotEmpty()) {
|
||||||
dicQuery["alpn"] = Utils.removeWhiteSpace(tlsSetting.alpn.joinToString()).orEmpty()
|
dicQuery["alpn"] = Utils.removeWhiteSpace(tlsSetting.alpn.joinToString()).orEmpty()
|
||||||
}
|
}
|
||||||
|
if (!TextUtils.isEmpty(tlsSetting.fingerprint)) {
|
||||||
|
dicQuery["fp"] = tlsSetting.fingerprint!!
|
||||||
|
}
|
||||||
}
|
}
|
||||||
dicQuery["type"] = streamSetting.network.ifEmpty { V2rayConfig.DEFAULT_NETWORK }
|
dicQuery["type"] = streamSetting.network.ifEmpty { V2rayConfig.DEFAULT_NETWORK }
|
||||||
|
|
||||||
|
|||||||
@@ -64,7 +64,12 @@
|
|||||||
<item></item>
|
<item></item>
|
||||||
<item>chrome</item>
|
<item>chrome</item>
|
||||||
<item>firefox</item>
|
<item>firefox</item>
|
||||||
<item>safari</item>
|
<item>ios</item>
|
||||||
|
<item>android</item>
|
||||||
|
<item>edge</item>
|
||||||
|
<item>360</item>
|
||||||
|
<item>qq</item>
|
||||||
|
<item>random</item>
|
||||||
<item>randomized</item>
|
<item>randomized</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user