feat(opnsense-config): Public API now a bit simpler, added support for latest opnsense version in xml types

This commit is contained in:
Jean-Gabriel Gill-Couture
2024-11-21 21:49:38 -05:00
parent cc9bcb902c
commit 9a37aa1321
12 changed files with 4418 additions and 342 deletions

View File

@@ -7,12 +7,17 @@ pub struct Interface {
pub internal_dynamic: Option<MaybeString>,
#[yaserde(rename = "if")]
pub physical_interface_name: String,
pub descr: String,
pub descr: Option<MaybeString>,
pub enable: MaybeString,
pub lock: Option<MaybeString>,
#[yaserde(rename = "spoofmac")]
pub spoof_mac: Option<MaybeString>,
pub ipaddr: Option<MaybeString>,
pub dhcphostname: Option<MaybeString>,
#[yaserde(rename = "alias-address")]
pub alias_address: Option<MaybeString>,
#[yaserde(rename = "alias-subnet")]
pub alias_subnet: Option<MaybeString>,
#[yaserde(rename = "blockpriv")]
pub block_priv: Option<MaybeString>,
#[yaserde(rename = "blockbogons")]
@@ -25,10 +30,28 @@ pub struct Interface {
pub ipaddrv6: Option<MaybeString>,
pub networks: Option<MaybeString>,
pub subnetv6: Option<MaybeString>,
pub media: Option<MaybeString>,
pub mediaopt: Option<MaybeString>,
#[yaserde(rename = "track6-interface")]
pub track6_interface: Option<MaybeString>,
#[yaserde(rename = "track6-prefix-id")]
pub track6_prefix_id: Option<MaybeString>,
#[yaserde(rename = "dhcprejectfrom")]
pub dhcprejectfrom: Option<MaybeString>,
pub adv_dhcp_pt_timeout: Option<MaybeString>,
pub adv_dhcp_pt_retry: Option<MaybeString>,
pub adv_dhcp_pt_select_timeout: Option<MaybeString>,
pub adv_dhcp_pt_reboot: Option<MaybeString>,
pub adv_dhcp_pt_backoff_cutoff: Option<MaybeString>,
pub adv_dhcp_pt_initial_interval: Option<MaybeString>,
pub adv_dhcp_pt_values: Option<MaybeString>,
pub adv_dhcp_send_options: Option<MaybeString>,
pub adv_dhcp_request_options: Option<MaybeString>,
pub adv_dhcp_required_options: Option<MaybeString>,
pub adv_dhcp_option_modifiers: Option<MaybeString>,
pub adv_dhcp_config_advanced: Option<MaybeString>,
pub adv_dhcp_config_file_override: Option<MaybeString>,
pub adv_dhcp_config_file_override_path: Option<MaybeString>,
}
#[cfg(test)]
@@ -109,6 +132,8 @@ mod test {
<descr>LAN</descr>
<enable>1</enable>
<spoofmac/>
<media/>
<mediaopt/>
<ipaddr>192.168.20.1</ipaddr>
<subnet>24</subnet>
<ipaddrv6>track6</ipaddrv6>