diff --git a/backend/package.json b/backend/package.json index 3ce700f..099d63b 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "sub-store", - "version": "2.16.23", + "version": "2.16.24", "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", "main": "src/main.js", "scripts": { diff --git a/backend/src/core/proxy-utils/producers/clash.js b/backend/src/core/proxy-utils/producers/clash.js index beb40d6..311ab64 100644 --- a/backend/src/core/proxy-utils/producers/clash.js +++ b/backend/src/core/proxy-utils/producers/clash.js @@ -81,6 +81,8 @@ export default function Clash_Producer() { proxy['preshared-key'] = proxy['preshared-key'] ?? proxy['pre-shared-key']; proxy['pre-shared-key'] = proxy['preshared-key']; + } else if (proxy.type === 'snell' && proxy.version < 3) { + delete proxy.udp; } else if (proxy.type === 'vless') { if (isPresent(proxy, 'sni')) { proxy.servername = proxy.sni; diff --git a/backend/src/core/proxy-utils/producers/clashmeta.js b/backend/src/core/proxy-utils/producers/clashmeta.js index 838fbe6..563e6fb 100644 --- a/backend/src/core/proxy-utils/producers/clashmeta.js +++ b/backend/src/core/proxy-utils/producers/clashmeta.js @@ -86,6 +86,8 @@ export default function ClashMeta_Producer() { proxy['preshared-key'] = proxy['preshared-key'] ?? proxy['pre-shared-key']; proxy['pre-shared-key'] = proxy['preshared-key']; + } else if (proxy.type === 'snell' && proxy.version < 3) { + delete proxy.udp; } else if (proxy.type === 'vless') { if (isPresent(proxy, 'sni')) { proxy.servername = proxy.sni; diff --git a/backend/src/core/proxy-utils/producers/egern.js b/backend/src/core/proxy-utils/producers/egern.js index 2b35d8a..3492b1d 100644 --- a/backend/src/core/proxy-utils/producers/egern.js +++ b/backend/src/core/proxy-utils/producers/egern.js @@ -249,6 +249,8 @@ export default function Egern_Producer() { // sni: proxy.sni, // skip_tls_verify: proxy['skip-cert-verify'], }; + } else if (proxy.type === 'snell' && proxy.version < 3) { + delete proxy.udp; } else if (proxy.type === 'vless') { if (proxy.network === 'ws') { proxy.transport = { diff --git a/backend/src/core/proxy-utils/producers/shadowrocket.js b/backend/src/core/proxy-utils/producers/shadowrocket.js index 24d7a41..fb79128 100644 --- a/backend/src/core/proxy-utils/producers/shadowrocket.js +++ b/backend/src/core/proxy-utils/producers/shadowrocket.js @@ -102,6 +102,8 @@ export default function ShadowRocket_Producer() { proxy['preshared-key'] = proxy['preshared-key'] ?? proxy['pre-shared-key']; proxy['pre-shared-key'] = proxy['preshared-key']; + } else if (proxy.type === 'snell' && proxy.version < 3) { + delete proxy.udp; } else if (proxy.type === 'vless') { if (isPresent(proxy, 'sni')) { proxy.servername = proxy.sni; diff --git a/backend/src/core/proxy-utils/producers/stash.js b/backend/src/core/proxy-utils/producers/stash.js index b3fd147..3ee95c9 100644 --- a/backend/src/core/proxy-utils/producers/stash.js +++ b/backend/src/core/proxy-utils/producers/stash.js @@ -187,6 +187,8 @@ export default function Stash_Producer() { proxy['preshared-key'] = proxy['preshared-key'] ?? proxy['pre-shared-key']; proxy['pre-shared-key'] = proxy['preshared-key']; + } else if (proxy.type === 'snell' && proxy.version < 3) { + delete proxy.udp; } else if (proxy.type === 'vless') { if (isPresent(proxy, 'sni')) { proxy.servername = proxy.sni;