feat: add tag and protocol to vless outbound

This commit is contained in:
Keivan-sf
2023-10-14 11:01:28 +03:30
parent 9691f3ef9a
commit 2f9005f1e4

View File

@@ -34,6 +34,8 @@ pub struct VlessData {
address_data: VlessAddress, address_data: VlessAddress,
} }
// Outbound structs
struct VlessUser { struct VlessUser {
id: String, id: String,
encryption: String, encryption: String,
@@ -51,18 +53,28 @@ struct VlessOutboundSettings {
vnext: Vec<VlessServerObject>, vnext: Vec<VlessServerObject>,
} }
fn create_outbound_object(data: VlessData) -> VlessOutboundSettings { pub struct VlessOutbound {
return VlessOutboundSettings { settings: VlessOutboundSettings,
vnext: vec![VlessServerObject { protocol: String,
port: data.address_data.port, tag: String,
address: data.address_data.address, }
users: vec![VlessUser {
id: data.address_data.uuid, fn create_outbound_object(data: VlessData) -> VlessOutbound {
flow: data.query.flow, return VlessOutbound {
encryption: data.query.encryption, protocol: String::from("vless"),
level: 0, tag: String::from("proxy"),
settings: VlessOutboundSettings {
vnext: vec![VlessServerObject {
port: data.address_data.port,
address: data.address_data.address,
users: vec![VlessUser {
id: data.address_data.uuid,
flow: data.query.flow,
encryption: data.query.encryption,
level: 0,
}],
}], }],
}], },
}; };
} }