From d892673df9fc46ccd7d3aa5a1a1dc84032756531 Mon Sep 17 00:00:00 2001 From: Erspit <246798694+Erspit@users.noreply.github.com> Date: Sat, 13 Jun 2026 05:12:59 +0000 Subject: [PATCH] Convenient ECH config input --- .../main/java/io/nekohasekai/sagernet/fmt/v2ray/V2RayFmt.kt | 6 +++++- .../main/java/moe/matsuri/nb4a/proxy/anytls/AnyTLSFmt.kt | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/nekohasekai/sagernet/fmt/v2ray/V2RayFmt.kt b/app/src/main/java/io/nekohasekai/sagernet/fmt/v2ray/V2RayFmt.kt index ae979055f..eee137df2 100644 --- a/app/src/main/java/io/nekohasekai/sagernet/fmt/v2ray/V2RayFmt.kt +++ b/app/src/main/java/io/nekohasekai/sagernet/fmt/v2ray/V2RayFmt.kt @@ -801,7 +801,11 @@ fun buildSingBoxOutboundTLS(bean: StandardV2RayBean): OutboundTLSOptions? { ech = OutboundECHOptions().apply { enabled = true if (bean.echConfig.isNotBlank()) { - config = bean.echConfig.lines() + config = if (bean.echConfig.contains("BEGIN ECH CONFIGS")) { + bean.echConfig.lines() + } else { + listOf("-----BEGIN ECH CONFIGS-----", bean.echConfig.trim(), "-----END ECH CONFIGS-----") + } } } } diff --git a/app/src/main/java/moe/matsuri/nb4a/proxy/anytls/AnyTLSFmt.kt b/app/src/main/java/moe/matsuri/nb4a/proxy/anytls/AnyTLSFmt.kt index 34bbd650a..fc1a947e2 100644 --- a/app/src/main/java/moe/matsuri/nb4a/proxy/anytls/AnyTLSFmt.kt +++ b/app/src/main/java/moe/matsuri/nb4a/proxy/anytls/AnyTLSFmt.kt @@ -44,7 +44,11 @@ fun buildSingBoxOutboundAnyTLSBean(bean: AnyTLSBean): SingBoxOptions.Outbound_An // In new version, some complex options will be deprecated, so we just do this. ech = SingBoxOptions.OutboundECHOptions().apply { enabled = true - config = listOf(it) + config = if (it.contains("BEGIN ECH CONFIGS")) { + listOf(it) + } else { + listOf("-----BEGIN ECH CONFIGS-----", it.trim(), "-----END ECH CONFIGS-----") + } } } }