update fmt

This commit is contained in:
arm64v8a
2023-07-19 11:36:11 +09:00
parent 359c630c20
commit 87c90e19fb
3 changed files with 11 additions and 7 deletions

View File

@@ -67,6 +67,7 @@ namespace NekoGui_fmt {
if (!flow.isEmpty()) { if (!flow.isEmpty()) {
query.addQueryItem("flow", flow); query.addQueryItem("flow", flow);
} }
query.addQueryItem("encryption", "none");
} }
url.setQuery(query); url.setQuery(query);

View File

@@ -37,9 +37,9 @@ namespace NekoGui_fmt {
stream->security = GetQueryValue(query, "security", ""); stream->security = GetQueryValue(query, "security", "");
stream->sni = GetQueryValue(query, "sni"); stream->sni = GetQueryValue(query, "sni");
if (link.startsWith("https")) stream->security = "tls"; if (link.startsWith("https")) stream->security = "tls";
return true;
return !serverAddress.isEmpty();
} }
bool TrojanVLESSBean::TryParseLink(const QString &link) { bool TrojanVLESSBean::TryParseLink(const QString &link) {
@@ -87,7 +87,7 @@ namespace NekoGui_fmt {
flow = GetQueryValue(query, "flow", ""); flow = GetQueryValue(query, "flow", "");
} }
return !password.isEmpty(); return !(password.isEmpty() || serverAddress.isEmpty());
} }
bool ShadowSocksBean::TryParseLink(const QString &link) { bool ShadowSocksBean::TryParseLink(const QString &link) {
@@ -124,7 +124,7 @@ namespace NekoGui_fmt {
method = url.userName(); method = url.userName();
password = url.password(); password = url.password();
} }
return true; return !(serverAddress.isEmpty() || method.isEmpty() || password.isEmpty());
} }
bool VMessBean::TryParseLink(const QString &link) { bool VMessBean::TryParseLink(const QString &link) {
@@ -171,7 +171,7 @@ namespace NekoGui_fmt {
username = url.userName(); username = url.userName();
password = url.password(); password = url.password();
return !(username.isEmpty() || password.isEmpty()); return !(username.isEmpty() || password.isEmpty() || serverAddress.isEmpty());
} }
bool HysteriaBean::TryParseLink(const QString &link) { bool HysteriaBean::TryParseLink(const QString &link) {

View File

@@ -283,8 +283,9 @@ namespace NekoGui_sub {
bean->stream->security = "tls"; bean->stream->security = "tls";
bean->stream->network = Node2QString(proxy["network"], "tcp"); bean->stream->network = Node2QString(proxy["network"], "tcp");
bean->stream->sni = FIRST_OR_SECOND(Node2QString(proxy["sni"]), Node2QString(proxy["servername"])); bean->stream->sni = FIRST_OR_SECOND(Node2QString(proxy["sni"]), Node2QString(proxy["servername"]));
if (Node2Bool(proxy["skip-cert-verify"])) bean->stream->allow_insecure = true; bean->stream->alpn = Node2QStringList(proxy["alpn"]).join(",");
if (IS_NEKO_BOX) bean->stream->utlsFingerprint = Node2QString(proxy["client-fingerprint"]); bean->stream->allow_insecure = Node2Bool(proxy["skip-cert-verify"]);
bean->stream->utlsFingerprint = Node2QString(proxy["client-fingerprint"]);
// opts // opts
auto ws = NodeChild(proxy, {"ws-opts", "ws-opt"}); auto ws = NodeChild(proxy, {"ws-opts", "ws-opt"});
@@ -318,6 +319,7 @@ namespace NekoGui_sub {
bean->security = Node2QString(proxy["cipher"]); bean->security = Node2QString(proxy["cipher"]);
bean->stream->network = Node2QString(proxy["network"], "tcp").replace("h2", "http"); bean->stream->network = Node2QString(proxy["network"], "tcp").replace("h2", "http");
bean->stream->sni = FIRST_OR_SECOND(Node2QString(proxy["sni"]), Node2QString(proxy["servername"])); bean->stream->sni = FIRST_OR_SECOND(Node2QString(proxy["sni"]), Node2QString(proxy["servername"]));
bean->stream->alpn = Node2QStringList(proxy["alpn"]).join(",");
if (Node2Bool(proxy["tls"])) bean->stream->security = "tls"; if (Node2Bool(proxy["tls"])) bean->stream->security = "tls";
if (Node2Bool(proxy["skip-cert-verify"])) bean->stream->allow_insecure = true; if (Node2Bool(proxy["skip-cert-verify"])) bean->stream->allow_insecure = true;
@@ -378,6 +380,7 @@ namespace NekoGui_sub {
bean->name = Node2QString(proxy["name"]); bean->name = Node2QString(proxy["name"]);
bean->serverAddress = Node2QString(proxy["server"]); bean->serverAddress = Node2QString(proxy["server"]);
bean->serverPort = Node2Int(proxy["port"]); bean->serverPort = Node2Int(proxy["port"]);
bean->hopPort = Node2QString(proxy["ports"]);
if (bean->serverPort == 0) bean->hopPort = Node2QString(proxy["port"]); if (bean->serverPort == 0) bean->hopPort = Node2QString(proxy["port"]);
auto auth_str = FIRST_OR_SECOND(Node2QString(proxy["auth_str"]), Node2QString(proxy["auth-str"])); auto auth_str = FIRST_OR_SECOND(Node2QString(proxy["auth_str"]), Node2QString(proxy["auth-str"]));