diff --git a/fmt/Bean2CoreObj_box.cpp b/fmt/Bean2CoreObj_box.cpp index 021fa43..a739007 100644 --- a/fmt/Bean2CoreObj_box.cpp +++ b/fmt/Bean2CoreObj_box.cpp @@ -69,11 +69,9 @@ namespace NekoGui_fmt { outbound->insert("tls", tls); } - if (!packet_encoding.isEmpty()) { - auto pkt = packet_encoding; - if (pkt == "packet") pkt = "packetaddr"; - outbound->insert("packet_encoding", pkt); - } + auto pkt = packet_encoding; + if (pkt == "packet") pkt = "packetaddr"; + outbound->insert("packet_encoding", pkt); } CoreObjOutboundBuildResult SocksHttpBean::BuildCoreObjSingBox() { diff --git a/sub/GroupUpdater.cpp b/sub/GroupUpdater.cpp index 1fe0070..fe09d6b 100644 --- a/sub/GroupUpdater.cpp +++ b/sub/GroupUpdater.cpp @@ -270,6 +270,13 @@ namespace NekoGui_sub { if (type == "vless") { bean->flow = Node2QString(proxy["flow"]); bean->password = Node2QString(proxy["uuid"]); + // meta vless xudp + auto xudp = proxy["xudp"]; + if (xudp.IsDefined() && !xudp.IsNull() && Node2Bool(xudp) == false) { + bean->stream->packet_encoding = ""; + } else { + bean->stream->packet_encoding = "xudp"; + } } else { bean->password = Node2QString(proxy["password"]); }