Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormhsanaei <ho3ein.sanaei@gmail.com>2024-10-29 14:50:25 +0300
committermhsanaei <ho3ein.sanaei@gmail.com>2024-10-29 14:50:25 +0300
commite359b5c75e192e03870ae6c201c065740dc13016 (patch)
treec12afc5dde5a7d3c2b227443e00e4466d7f7a3c2 /web/assets
parent3b3bd3dea4552ced8f8e09c4357ef61e829d2756 (diff)
removed - XTLS Security
because its too old and no one use it anymore
Diffstat (limited to 'web/assets')
-rw-r--r--web/assets/js/model/xray.js199
1 files changed, 0 insertions, 199 deletions
diff --git a/web/assets/js/model/xray.js b/web/assets/js/model/xray.js
index 209a3140..b7d68dd8 100644
--- a/web/assets/js/model/xray.js
+++ b/web/assets/js/model/xray.js
@@ -21,11 +21,6 @@ const SSMethods = {
BLAKE3_CHACHA20_POLY1305: '2022-blake3-chacha20-poly1305',
};
-const XTLS_FLOW_CONTROL = {
- ORIGIN: "xtls-rprx-origin",
- DIRECT: "xtls-rprx-direct",
-};
-
const TLS_FLOW_CONTROL = {
VISION: "xtls-rprx-vision",
VISION_UDP443: "xtls-rprx-vision-udp443",
@@ -120,7 +115,6 @@ const USERS_SECURITY = {
Object.freeze(Protocols);
Object.freeze(SSMethods);
-Object.freeze(XTLS_FLOW_CONTROL);
Object.freeze(TLS_FLOW_CONTROL);
Object.freeze(TLS_VERSION_OPTION);
Object.freeze(TLS_CIPHER_OPTION);
@@ -755,137 +749,6 @@ TlsStreamSettings.Settings = class extends XrayCommonClass {
}
};
-class XtlsStreamSettings extends XrayCommonClass {
- constructor(
- serverName = '',
- certificates = [new XtlsStreamSettings.Cert()],
- alpn = [ALPN_OPTION.H3, ALPN_OPTION.H2, ALPN_OPTION.HTTP1],
- settings = new XtlsStreamSettings.Settings()
- ) {
- super();
- this.sni = serverName;
- this.certs = certificates;
- this.alpn = alpn;
- this.settings = settings;
- }
-
- addCert() {
- this.certs.push(new XtlsStreamSettings.Cert());
- }
-
- removeCert(index) {
- this.certs.splice(index, 1);
- }
-
- static fromJson(json = {}) {
- let certs;
- let settings;
- if (!ObjectUtil.isEmpty(json.certificates)) {
- certs = json.certificates.map(cert => XtlsStreamSettings.Cert.fromJson(cert));
- }
-
- if (!ObjectUtil.isEmpty(json.settings)) {
- settings = new XtlsStreamSettings.Settings(json.settings.allowInsecure, json.settings.serverName);
- }
- return new XtlsStreamSettings(
- json.serverName,
- certs,
- json.alpn,
- settings,
- );
- }
-
- toJson() {
- return {
- serverName: this.sni,
- certificates: XtlsStreamSettings.toJsonArray(this.certs),
- alpn: this.alpn,
- settings: this.settings,
- };
- }
-}
-
-XtlsStreamSettings.Cert = class extends XrayCommonClass {
- constructor(
- useFile = true,
- certificateFile = '',
- keyFile = '',
- certificate = '',
- key = '',
- ocspStapling = 3600,
- oneTimeLoading = false,
- usage = USAGE_OPTION.ENCIPHERMENT
- ) {
- super();
- this.useFile = useFile;
- this.certFile = certificateFile;
- this.keyFile = keyFile;
- this.cert = Array.isArray(certificate) ? certificate.join('\n') : certificate;
- this.key = Array.isArray(key) ? key.join('\n') : key;
- this.ocspStapling = ocspStapling;
- this.oneTimeLoading = oneTimeLoading;
- this.usage = usage;
- }
-
- static fromJson(json = {}) {
- if ('certificateFile' in json && 'keyFile' in json) {
- return new XtlsStreamSettings.Cert(
- true,
- json.certificateFile,
- json.keyFile, '', '',
- json.ocspStapling,
- json.oneTimeLoading,
- json.usage,
- );
- } else {
- return new XtlsStreamSettings.Cert(
- false, '', '',
- json.certificate.join('\n'),
- json.key.join('\n'),
- json.ocspStapling,
- json.oneTimeLoading,
- json.usage,
- );
- }
- }
-
- toJson() {
- if (this.useFile) {
- return {
- certificateFile: this.certFile,
- keyFile: this.keyFile,
- ocspStapling: this.ocspStapling,
- oneTimeLoading: this.oneTimeLoading,
- usage: this.usage,
- };
- } else {
- return {
- certificate: this.cert.split('\n'),
- key: this.key.split('\n'),
- ocspStapling: this.ocspStapling,
- oneTimeLoading: this.oneTimeLoading,
- usage: this.usage,
- };
- }
- }
-};
-
-XtlsStreamSettings.Settings = class extends XrayCommonClass {
- constructor(allowInsecure = false) {
- super();
- this.allowInsecure = allowInsecure;
- }
- static fromJson(json = {}) {
- return new XtlsStreamSettings.Settings(
- json.allowInsecure,
- );
- }
- toJson() {
- return {
- allowInsecure: this.allowInsecure,
- };
- }
-};
class RealityStreamSettings extends XrayCommonClass {
constructor(
@@ -1071,7 +934,6 @@ class StreamSettings extends XrayCommonClass {
security = 'none',
externalProxy = [],
tlsSettings = new TlsStreamSettings(),
- xtlsSettings = new XtlsStreamSettings(),
realitySettings = new RealityStreamSettings(),
tcpSettings = new TcpStreamSettings(),
kcpSettings = new KcpStreamSettings(),
@@ -1087,7 +949,6 @@ class StreamSettings extends XrayCommonClass {
this.security = security;
this.externalProxy = externalProxy;
this.tls = tlsSettings;
- this.xtls = xtlsSettings;
this.reality = realitySettings;
this.tcp = tcpSettings;
this.kcp = kcpSettings;
@@ -1111,18 +972,6 @@ class StreamSettings extends XrayCommonClass {
}
}
- get isXtls() {
- return this.security === "xtls";
- }
-
- set isXtls(isXtls) {
- if (isXtls) {
- this.security = 'xtls';
- } else {
- this.security = 'none';
- }
- }
-
//for Reality
get isReality() {
return this.security === "reality";
@@ -1150,7 +999,6 @@ class StreamSettings extends XrayCommonClass {
json.security,
json.externalProxy,
TlsStreamSettings.fromJson(json.tlsSettings),
- XtlsStreamSettings.fromJson(json.xtlsSettings),
RealityStreamSettings.fromJson(json.realitySettings),
TcpStreamSettings.fromJson(json.tcpSettings),
KcpStreamSettings.fromJson(json.kcpSettings),
@@ -1170,7 +1018,6 @@ class StreamSettings extends XrayCommonClass {
security: this.security,
externalProxy: this.externalProxy,
tlsSettings: this.isTls ? this.tls.toJson() : undefined,
- xtlsSettings: this.isXtls ? this.xtls.toJson() : undefined,
realitySettings: this.isReality ? this.reality.toJson() : undefined,
tcpSettings: network === 'tcp' ? this.tcp.toJson() : undefined,
kcpSettings: network === 'kcp' ? this.kcp.toJson() : undefined,
@@ -1283,18 +1130,6 @@ class Inbound extends XrayCommonClass {
}
}
- get xtls() {
- return this.stream.security === 'xtls';
- }
-
- set xtls(isXtls) {
- if (isXtls) {
- this.stream.security = 'xtls';
- } else {
- this.stream.security = 'none';
- }
- }
-
get network() {
return this.stream.network;
}
@@ -1349,7 +1184,6 @@ class Inbound extends XrayCommonClass {
get serverName() {
if (this.stream.isTls) return this.stream.tls.sni;
- if (this.stream.isXtls) return this.stream.xtls.sni;
if (this.stream.isReality) return this.stream.reality.serverNames;
return "";
}
@@ -1428,11 +1262,6 @@ class Inbound extends XrayCommonClass {
return ["tcp", "http", "grpc"].includes(this.network);
}
- canEnableXtls() {
- if (![Protocols.VLESS, Protocols.TROJAN].includes(this.protocol)) return false;
- return this.network === "tcp";
- }
-
canEnableStream() {
return [Protocols.VMESS, Protocols.VLESS, Protocols.TROJAN, Protocols.SHADOWSOCKS].includes(this.protocol);
}
@@ -1592,18 +1421,6 @@ class Inbound extends XrayCommonClass {
}
}
- else if (security === 'xtls') {
- params.set("security", "xtls");
- params.set("alpn", this.stream.xtls.alpn);
- if (this.stream.xtls.settings.allowInsecure) {
- params.set("allowInsecure", "1");
- }
- if (!ObjectUtil.isEmpty(this.stream.xtls.sni)) {
- params.set("sni", this.stream.xtls.sni);
- }
- params.set("flow", flow);
- }
-
else if (security === 'reality') {
params.set("security", "reality");
params.set("pbk", this.stream.reality.settings.publicKey);
@@ -1801,18 +1618,6 @@ class Inbound extends XrayCommonClass {
}
}
- else if (security === 'xtls') {
- params.set("security", "xtls");
- params.set("alpn", this.stream.xtls.alpn);
- if (this.stream.xtls.settings.allowInsecure) {
- params.set("allowInsecure", "1");
- }
- if (!ObjectUtil.isEmpty(this.stream.xtls.sni)) {
- params.set("sni", this.stream.xtls.sni);
- }
- params.set("flow", flow);
- }
-
else {
params.set("security", "none");
}
@@ -2273,7 +2078,6 @@ Inbound.TrojanSettings = class extends Inbound.Settings {
Inbound.TrojanSettings.Trojan = class extends XrayCommonClass {
constructor(
password = RandomUtil.randomSeq(10),
- flow = '',
email = RandomUtil.randomLowerAndNum(8),
limitIp = 0,
totalGB = 0,
@@ -2285,7 +2089,6 @@ Inbound.TrojanSettings.Trojan = class extends XrayCommonClass {
) {
super();
this.password = password;
- this.flow = flow;
this.email = email;
this.limitIp = limitIp;
this.totalGB = totalGB;
@@ -2299,7 +2102,6 @@ Inbound.TrojanSettings.Trojan = class extends XrayCommonClass {
toJson() {
return {
password: this.password,
- flow: this.flow,
email: this.email,
limitIp: this.limitIp,
totalGB: this.totalGB,
@@ -2314,7 +2116,6 @@ Inbound.TrojanSettings.Trojan = class extends XrayCommonClass {
static fromJson(json = {}) {
return new Inbound.TrojanSettings.Trojan(
json.password,
- json.flow,
json.email,
json.limitIp,
json.totalGB,