From a8efd320e66de0d2f6a7ea91a4a4b600c25808ee Mon Sep 17 00:00:00 2001 From: 21pages Date: Fri, 14 Feb 2025 16:45:00 +0800 Subject: [PATCH] fix device group cache Signed-off-by: 21pages --- src/config.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/config.rs b/src/config.rs index 1f3ff3b..d58ade9 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1965,6 +1965,16 @@ pub struct GroupUser { pub name: String, } +#[derive(Debug, Default, Serialize, Deserialize, Clone)] +pub struct DeviceGroup { + #[serde( + default, + deserialize_with = "deserialize_string", + skip_serializing_if = "String::is_empty" + )] + pub name: String, +} + #[derive(Debug, Default, Serialize, Deserialize, Clone)] pub struct Group { #[serde( @@ -1977,6 +1987,8 @@ pub struct Group { pub users: Vec, #[serde(default, deserialize_with = "deserialize_vec_grouppeer")] pub peers: Vec, + #[serde(default, deserialize_with = "deserialize_vec_devicegroup")] + pub device_groups: Vec, } impl Group { @@ -2048,6 +2060,7 @@ deserialize_default!(deserialize_vec_abpeer, Vec); deserialize_default!(deserialize_vec_abentry, Vec); deserialize_default!(deserialize_vec_groupuser, Vec); deserialize_default!(deserialize_vec_grouppeer, Vec); +deserialize_default!(deserialize_vec_devicegroup, Vec); deserialize_default!(deserialize_keypair, KeyPair); deserialize_default!(deserialize_size, Size); deserialize_default!(deserialize_hashmap_string_string, HashMap);