kcp (#5793)
This commit is contained in:
1 parent
98e7b8e1a1
commit
6e65f46e3f
2 files changed
+17
-14
No files matched your search
@@ -368,37 +368,40 @@ object CoreOutboundBuilder {
|
|||||||
profileItem.kcpMtu?.let { kcpSetting.mtu = it }
|
profileItem.kcpMtu?.let { kcpSetting.mtu = it }
|
||||||
profileItem.kcpTti?.let { kcpSetting.tti = it }
|
profileItem.kcpTti?.let { kcpSetting.tti = it }
|
||||||
streamSettings.kcpSettings = kcpSetting
|
streamSettings.kcpSettings = kcpSetting
|
||||||
val udpMaskList = mutableListOf<OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean>()
|
val udpMaskList =
|
||||||
|
mutableListOf<OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean>()
|
||||||
if (!headerType.isNullOrEmpty() && headerType != "none") {
|
if (!headerType.isNullOrEmpty() && headerType != "none") {
|
||||||
val kcpHeaderType = when {
|
val kcpHeaderType = when {
|
||||||
headerType == "wechat-video" -> "header-wechat"
|
headerType == "wechat-video" -> "wechat"
|
||||||
else -> "header-$headerType"
|
else -> headerType
|
||||||
}
|
}
|
||||||
udpMaskList.add(
|
udpMaskList.add(
|
||||||
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean(
|
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean(
|
||||||
type = kcpHeaderType,
|
type = "mkcp-legacy",
|
||||||
settings = if (headerType == "dns" && !host.isNullOrEmpty()) {
|
settings =
|
||||||
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean.MaskSettingsBean(
|
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean.MaskSettingsBean(
|
||||||
domain = host
|
header = kcpHeaderType,
|
||||||
|
value = if (headerType == "dns" && !host.isNullOrEmpty()) {
|
||||||
|
host
|
||||||
|
} else {
|
||||||
|
null
|
||||||
|
}
|
||||||
)
|
)
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
if (seed.isNullOrEmpty()) {
|
if (seed.isNullOrEmpty()) {
|
||||||
udpMaskList.add(
|
udpMaskList.add(
|
||||||
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean(
|
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean(
|
||||||
type = "mkcp-original"
|
type = "mkcp-legacy"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
udpMaskList.add(
|
udpMaskList.add(
|
||||||
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean(
|
OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean(
|
||||||
type = "mkcp-aes128gcm",
|
type = "mkcp-legacy",
|
||||||
settings = OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean.MaskSettingsBean(
|
settings = OutboundBean.StreamSettingsBean.FinalMaskBean.MaskBean.MaskSettingsBean(
|
||||||
password = seed
|
value = seed
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -256,7 +256,6 @@ data class V2rayConfig(
|
|||||||
var verifyPeerCertByName: String? = null,
|
var verifyPeerCertByName: String? = null,
|
||||||
var pinnedPeerCertSha256: String? = null,
|
var pinnedPeerCertSha256: String? = null,
|
||||||
// REALITY settings
|
// REALITY settings
|
||||||
val show: Boolean = false,
|
|
||||||
var publicKey: String? = null,
|
var publicKey: String? = null,
|
||||||
var shortId: String? = null,
|
var shortId: String? = null,
|
||||||
var spiderX: String? = null,
|
var spiderX: String? = null,
|
||||||
@@ -296,7 +295,8 @@ data class V2rayConfig(
|
|||||||
) {
|
) {
|
||||||
data class MaskSettingsBean(
|
data class MaskSettingsBean(
|
||||||
val password: String? = null,
|
val password: String? = null,
|
||||||
val domain: String? = null,
|
val header: String? = null,
|
||||||
|
val value: String? = null,
|
||||||
// fragment
|
// fragment
|
||||||
val packets: String? = null,
|
val packets: String? = null,
|
||||||
val length: String? = null,
|
val length: String? = null,
|
||||||
|
|||||||
Reference in new issue
Block a user