diff --git a/opnsense-config-xml/src/data/haproxy.rs b/opnsense-config-xml/src/data/haproxy.rs index b0aedc2..1114038 100644 --- a/opnsense-config-xml/src/data/haproxy.rs +++ b/opnsense-config-xml/src/data/haproxy.rs @@ -106,11 +106,37 @@ pub struct HAProxy { pub groups: MaybeString, pub users: MaybeString, pub cpus: MaybeString, - pub resolvers: MaybeString, + pub resolvers: HAProxyResolvers, pub mailers: MaybeString, pub maintenance: Maintenance, } +#[derive(Default, PartialEq, Debug, YaSerialize, YaDeserialize)] +pub struct HAProxyResolvers { + #[yaserde(rename = "resolver")] + pub resolver: Option, +} + +#[derive(Default, PartialEq, Debug, YaSerialize, YaDeserialize)] +pub struct Resolver { + pub id: String, + pub enabled: i32, + pub name: String, + pub description: MaybeString, + pub nameservers: String, + pub parse_resolv_conf: String, + pub resolve_retries: i32, + pub timeout_resolve: String, + pub timeout_retry: String, + pub accepted_payload_size: MaybeString, + pub hold_valid: MaybeString, + pub hold_obsolete: MaybeString, + pub hold_refused: MaybeString, + pub hold_nx: MaybeString, + pub hold_timeout: MaybeString, + pub hold_other: MaybeString, +} + #[derive(Default, PartialEq, Debug, YaSerialize, YaDeserialize)] pub struct Maintenance { #[yaserde(rename = "cronjobs")] diff --git a/opnsense-config-xml/src/data/opnsense.rs b/opnsense-config-xml/src/data/opnsense.rs index fa5f985..ad743cd 100644 --- a/opnsense-config-xml/src/data/opnsense.rs +++ b/opnsense-config-xml/src/data/opnsense.rs @@ -136,6 +136,7 @@ pub struct Rule { pub updated: Option, pub created: Option, pub disabled: Option, + pub log: Option, } #[derive(Default, PartialEq, Debug, YaSerialize, YaDeserialize)] @@ -216,7 +217,7 @@ pub struct System { pub maximumfrags: Option, pub aliasesresolveinterval: Option, pub maximumtableentries: Option, - pub language: String, + pub language: Option, pub dnsserver: Option, pub dns1gw: Option, pub dns2gw: Option, @@ -1140,6 +1141,7 @@ pub struct UnboundGeneral { pub local_zone_type: String, pub outgoing_interface: MaybeString, pub enable_wpad: MaybeString, + pub safesearch: MaybeString, } #[derive(Default, PartialEq, Debug, YaSerialize, YaDeserialize)] @@ -1193,15 +1195,15 @@ pub struct Acls { #[derive(Default, PartialEq, Debug, YaSerialize, YaDeserialize)] pub struct Dnsbl { - pub enabled: i32, - pub safesearch: MaybeString, + pub enabled: Option, + pub safesearch: Option, #[yaserde(rename = "type")] - pub r#type: MaybeString, - pub lists: MaybeString, - pub whitelists: MaybeString, - pub blocklists: MaybeString, - pub wildcards: MaybeString, - pub address: MaybeString, + pub r#type: Option, + pub lists: Option, + pub whitelists: Option, + pub blocklists: Option, + pub wildcards: Option, + pub address: Option, pub nxdomain: Option, } @@ -1229,6 +1231,7 @@ pub struct Host { pub ttl: Option, pub server: String, pub description: Option, + pub txtdata: MaybeString, } impl Host { @@ -1244,6 +1247,7 @@ impl Host { ttl: Some(MaybeString::default()), mx: MaybeString::default(), description: None, + txtdata: MaybeString::default(), } } } @@ -1291,6 +1295,7 @@ pub struct WireguardServerItem { pub gateway: MaybeString, pub carp_depend_on: MaybeString, pub peers: String, + pub debug: MaybeString, pub endpoint: MaybeString, pub peer_dns: MaybeString, } diff --git a/opnsense-config/src/tests/data/config-25.7-dnsmasq-static-host.xml b/opnsense-config/src/tests/data/config-25.7-dnsmasq-static-host.xml index f36e4f7..737766c 100644 --- a/opnsense-config/src/tests/data/config-25.7-dnsmasq-static-host.xml +++ b/opnsense-config/src/tests/data/config-25.7-dnsmasq-static-host.xml @@ -612,6 +612,7 @@ transparent 0 + 0 diff --git a/opnsense-config/src/tests/data/config-full-1.xml b/opnsense-config/src/tests/data/config-full-1.xml index 378d577..9b417f2 100644 --- a/opnsense-config/src/tests/data/config-full-1.xml +++ b/opnsense-config/src/tests/data/config-full-1.xml @@ -2003,6 +2003,7 @@ transparent + @@ -2071,6 +2072,7 @@ 192.168.20.161 Some app local + 1 @@ -2081,6 +2083,7 @@ 192.168.20.161 Some app local + 1 @@ -2091,6 +2094,7 @@ 192.168.20.161 Some app local + @@ -2117,6 +2121,7 @@ + 03031aec-2e84-462e-9eab-57762dde667a,98e6ca3d-1de9-449b-be80-77022221b509,67c0ace5-e802-4d2b-a536-f8b7a2db6f99,74b60fff-7844-4097-9966-f1c2b1ad29ff,3de82ad5-bc1b-4b91-9598-f906e58ac937,a95e6b5e-24a4-40b5-bb41-b79e784f6f1c,6c9a12c6-c1ca-4c14-866b-975406a30590,c33b308b-7125-4688-9561-989ace8787b5,e43f004a-23bf-4027-8fb0-953fbb40479f diff --git a/opnsense-config/src/tests/data/config-full-25.7-dnsmasq-options.xml b/opnsense-config/src/tests/data/config-full-25.7-dnsmasq-options.xml index 879d8d6..d2303a9 100644 --- a/opnsense-config/src/tests/data/config-full-25.7-dnsmasq-options.xml +++ b/opnsense-config/src/tests/data/config-full-25.7-dnsmasq-options.xml @@ -614,6 +614,7 @@ transparent 0 + 0 diff --git a/opnsense-config/src/tests/data/config-full-25.7-dummy-dnsmasq-options.xml b/opnsense-config/src/tests/data/config-full-25.7-dummy-dnsmasq-options.xml index 5e22137..f7d7739 100644 --- a/opnsense-config/src/tests/data/config-full-25.7-dummy-dnsmasq-options.xml +++ b/opnsense-config/src/tests/data/config-full-25.7-dummy-dnsmasq-options.xml @@ -750,6 +750,7 @@ transparent 0 + 0 diff --git a/opnsense-config/src/tests/data/config-full-25.7.xml b/opnsense-config/src/tests/data/config-full-25.7.xml index 1cd4909..eccdee3 100644 --- a/opnsense-config/src/tests/data/config-full-25.7.xml +++ b/opnsense-config/src/tests/data/config-full-25.7.xml @@ -709,6 +709,7 @@ transparent 0 + 0 diff --git a/opnsense-config/src/tests/data/config-full-ncd0.xml b/opnsense-config/src/tests/data/config-full-ncd0.xml index 9243cf2..6cb6186 100644 --- a/opnsense-config/src/tests/data/config-full-ncd0.xml +++ b/opnsense-config/src/tests/data/config-full-ncd0.xml @@ -951,6 +951,7 @@ transparent + 0 diff --git a/opnsense-config/src/tests/data/config-opnsense-25.1.xml b/opnsense-config/src/tests/data/config-opnsense-25.1.xml index c6bc1a8..0c9a6f1 100644 --- a/opnsense-config/src/tests/data/config-opnsense-25.1.xml +++ b/opnsense-config/src/tests/data/config-opnsense-25.1.xml @@ -808,6 +808,7 @@ transparent + diff --git a/opnsense-config/src/tests/data/config-structure-with-dhcp-staticmap-entry.xml b/opnsense-config/src/tests/data/config-structure-with-dhcp-staticmap-entry.xml index f41b055..2266fb0 100644 --- a/opnsense-config/src/tests/data/config-structure-with-dhcp-staticmap-entry.xml +++ b/opnsense-config/src/tests/data/config-structure-with-dhcp-staticmap-entry.xml @@ -726,6 +726,7 @@ transparent + 0 @@ -793,6 +794,7 @@ 192.168.20.161 Some app local + 1 @@ -803,6 +805,7 @@ 192.168.20.161 Some app local + 1 @@ -813,6 +816,7 @@ 192.168.20.161 Some app local + @@ -838,6 +842,7 @@ 03031aec-2e84-462e-9eab-57762dde667a,98e6ca3d-1de9-449b-be80-77022221b509,67c0ace5-e802-4d2b-a536-f8b7a2db6f99,74b60fff-7844-4097-9966-f1c2b1ad29ff,3de82ad5-bc1b-4b91-9598-f906e58ac937,a95e6b5e-24a4-40b5-bb41-b79e784f6f1c,6c9a12c6-c1ca-4c14-866b-975406a30590,c33b308b-7125-4688-9561-989ace8787b5,e43f004a-23bf-4027-8fb0-953fbb40479f + diff --git a/opnsense-config/src/tests/data/config-structure.xml b/opnsense-config/src/tests/data/config-structure.xml index 32c9317..ae26f76 100644 --- a/opnsense-config/src/tests/data/config-structure.xml +++ b/opnsense-config/src/tests/data/config-structure.xml @@ -718,6 +718,7 @@ transparent + 0 @@ -785,6 +786,7 @@ 192.168.20.161 Some app local + 1 @@ -795,6 +797,7 @@ 192.168.20.161 Some app local + 1 @@ -805,6 +808,7 @@ 192.168.20.161 Some app local + @@ -832,6 +836,7 @@ 03031aec-2e84-462e-9eab-57762dde667a,98e6ca3d-1de9-449b-be80-77022221b509,67c0ace5-e802-4d2b-a536-f8b7a2db6f99,74b60fff-7844-4097-9966-f1c2b1ad29ff,3de82ad5-bc1b-4b91-9598-f906e58ac937,a95e6b5e-24a4-40b5-bb41-b79e784f6f1c,6c9a12c6-c1ca-4c14-866b-975406a30590,c33b308b-7125-4688-9561-989ace8787b5,e43f004a-23bf-4027-8fb0-953fbb40479f + diff --git a/opnsense-config/src/tests/data/config-vm-test.xml b/opnsense-config/src/tests/data/config-vm-test.xml index 1d176b4..06429df 100644 --- a/opnsense-config/src/tests/data/config-vm-test.xml +++ b/opnsense-config/src/tests/data/config-vm-test.xml @@ -869,6 +869,7 @@ transparent + diff --git a/opnsense-config/src/tests/data/config-vm-test_cheat_descr.xml b/opnsense-config/src/tests/data/config-vm-test_cheat_descr.xml index 4f1442a..a38a712 100644 --- a/opnsense-config/src/tests/data/config-vm-test_cheat_descr.xml +++ b/opnsense-config/src/tests/data/config-vm-test_cheat_descr.xml @@ -862,6 +862,7 @@ transparent + diff --git a/opnsense-config/src/tests/data/config-vm-test_linted.xml b/opnsense-config/src/tests/data/config-vm-test_linted.xml index 1d176b4..06429df 100644 --- a/opnsense-config/src/tests/data/config-vm-test_linted.xml +++ b/opnsense-config/src/tests/data/config-vm-test_linted.xml @@ -869,6 +869,7 @@ transparent +